TY - CHAP U1 - Konferenzveröffentlichung A1 - Pérard-Gayot, Arsène A1 - Weier, Martin A1 - Membarth, Richard A1 - Slusallek, Philipp A1 - Leißa, Roland A1 - Hack, Sebastian T1 - RaTrace: Simple and efficient abstractions for BVH ray traversal algorithms T2 - Flatt, Erdweg (Eds.): Proceedings of the 16th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences (GPCE 2017). Vancouver, BC, Canada, 23.-24.10.2017 N2 - In order to achieve the highest possible performance, the ray traversal and intersection routines at the core of every high-performance ray tracer are usually hand-coded, heavily optimized, and implemented separately for each hardware platform—even though they share most of their algorithmic core. The results are implementations that heavily mix algorithmic aspects with hardware and implementation details, making the code non-portable and difficult to change and maintain. In this paper, we present a new approach that offers the ability to define in a functional language a set of conceptual, high-level language abstractions that are optimized away by a special compiler in order to maximize performance. Using this abstraction mechanism we separate a generic ray traversal and intersection algorithm from its low-level aspects that are specific to the target hardware. We demonstrate that our code is not only significantly more flexible, simpler to write, and more concise but also that the compiled results perform as well as state-of-the-art implementations on any of the tested CPU and GPU platforms. SN - 978-1-4503-5524-7 SB - 978-1-4503-5524-7 U6 - https://doi.org/10.1145/3136040.3136044 DO - https://doi.org/10.1145/3136040.3136044 SP - 157 EP - 168 S1 - 12 PB - Association for Computing Machinery CY - New York, NY, United States ER -