Hier finden Sie wissenschaftliche Publikationen aus den Fraunhofer-Instituten.

OpenCL vs. CUDA for ray tracing

: Huff, Rafael; Neves, Tiago; Gierlinger, Thomas; Kuijper, Arjan; Stork, André; Fellner, Dieter W.

Brazilian Computer Society -SBC-:
XII Symposium on Virtual and Augmented Reality, SVR 2010 : May 24-27, 2010, Natal, Rio Grande do Norte, Brazil
Brazil: Everton Cavalcante, 2010
4 pp.
Symposium on Virtual and Augmented Reality (SVR) <12, 2010, Natal/Rio Grande do Norte>
Conference Paper
Fraunhofer IGD ()
ray tracing; parallel programming; programmable graphics hardware; Compute Unified Device Architecture (CUDA); Forschungsgruppe Semantic Models, Immersive Systems (SMIS)

For many years the Graphics Processing Unit (GPU) of common desktops was just used to accelerate certain parts of the graphics pipeline. After developers had access to the native instruction set and memory of the massive parallel computational elements of GPUs a lot has changed. GPUs became powerful and programmable. Nowadays two SDKs are most used for GPU programming: CUDA and OpenCL. CUDA is the most adopted general purpose parallel computing architecture for GPUs but is restricted to Nvidia graphic cards only. In contrast, OpenCL is a new royalityfree framework for parallel programming intended to be portable across different hardware manufacturers or even different platforms. In this paper, we evaluate both solutions considering a typical parallel algorithm: Ray Tracing. We show our performance results and experiences on developing both implementations that could be easily adapted to solve other problems.