TITLE:
The Implementation of Ray Tracing Algorithm with OpenMP Parallelization
AUTHORS:
Noor Alnasser, Raghad Alabssi, Batool Faran, Latifah Alessa, Naya Nagy
KEYWORDS:
Parallelization, Ray Tracing, Parallel Computer Architecture, OpenMP
JOURNAL NAME:
Journal of Computer and Communications,
Vol.12 No.1,
January
29,
2024
ABSTRACT: Ray tracing is a computer graphics method that renders images realistically. As the name suggests, this technique primarily traces the path of light rays interacting with objects in a scene [1], permitting the calculation of lighting and reflecting impact [2]. As ray tracing is a time-consuming process, the need for parallelization to solve this problem arises. One downside of this solution is the existence of race conditions. In this work, we explore and experiment with a different, well-known solution for this race condition. Starting with the introduction and the background section, a brief overview of the topic is followed by a detailed part of how the race conditions may occur in the case of the ray tracing algorithm. Continuing with the methods and results section, we have used OpenMP to parallelize the Ray tracing algorithm with the different compiler directives critical, atomic, and first-private. Hence, it concluded that both critical and atomic are not efficient solutions to produce a good-quality picture, but first-private succeeded in producing a high-quality picture.