“Embree: a kernel framework for efficient CPU ray tracing” by Wald, Woop, Benthin, Johnson and Ernst

  • ©Ingo Wald, Sven Woop, Carsten Benthin, Greg Johnson, and Manfred Ernst

Conference:


Type:


Title:

    Embree: a kernel framework for efficient CPU ray tracing

Session/Category Title: Hardware Systems


Presenter(s)/Author(s):


Moderator(s):



Abstract:


    We describe Embree, an open source ray tracing framework for x86 CPUs. Embree is explicitly designed to achieve high performance in professional rendering environments in which complex geometry and incoherent ray distributions are common. Embree consists of a set of low-level kernels that maximize utilization of modern CPU architectures, and an API which enables these kernels to be used in existing renderers with minimal programmer effort. In this paper, we describe the design goals and software architecture of Embree, and show that for secondary rays in particular, the performance of Embree is competitive with (and often higher than) existing state-of-the-art methods on CPUs and GPUs.

References:


    1. Aila, T., and Laine, S. 2009. Understanding the Efficiency of Ray Traversal on GPUs. In Proceedings of High-Performance Graphics, 145–149. Google ScholarDigital Library
    2. Benthin, C., and Wald, I. 2009. Efficient Ray Traced Soft Shadows using Multi-Frusta Tracing. In Proceedings of High-Performance Graphics, 135–144. Google ScholarDigital Library
    3. Benthin, C., Wald, I., Woop, S., Ernst, M., and Mark, W. R. 2012. Combining Single and Packet-Ray Tracing for Arbitrary Ray Distributions on the Intel MIC Architecture. IEEE Transactions on Visualization and Computer Graphics 18, 9, 1438–1448. Google ScholarDigital Library
    4. Bigler, J., Stephens, A., and Parker, S. G. 2006. Design for Parallel Interactive Ray Tracing Systems. In Proceedings of the IEEE Symposium on Interactive Ray Tracing, 187–196.Google Scholar
    5. Dammertz, H., Hanika, J., and Keller, A. 2008. Shallow Bounding Volume Hierarchies for Fast SIMD Ray Tracing of Incoherent Rays. In Proceedings of the 19th Eurographics Conference on Rendering, 1225–1234. Google ScholarDigital Library
    6. Ernst, M., and Greiner, G. 2008. Multi Bounding Volume Hierarchies. In Proceedings of the IEEE / Eurographics Symposium on Interactive Ray Tracing, 35–40.Google Scholar
    7. Glassner, A. 1989. An Introduction to Ray Tracing. Morgan Kaufmann. Google ScholarDigital Library
    8. Grünschloss, L., Stich, M., Nawaz, S., and Keller, A. 2011. MSBVH: An Efficient Acceleration Data Structure for Ray Traced Motion Blur. In Proceedings of High-Performance Graphics, 65–70. Google ScholarDigital Library
    9. Havran, V. 2000. Heuristic Ray Shooting Algorithms. PhD thesis, Department of Computer Science and Engineering, Faculty of Electrical Engineering, Czech Technical University in Prague.Google Scholar
    10. Karras, T., and Aila, T. 2013. Fast Parallel Construction of High-Quality Bounding Volume Hierarchies. In Proceedings of High-Performance Graphics, 89–99. Google ScholarDigital Library
    11. Kensler, A., and Shirley, P. 2006. Optimizing Ray-Triangle Intersection via Automated Search. In Proceedings of the IEEE Symposium on Interactive Ray Tracing, 33–38.Google Scholar
    12. Kensler, A. 2008. Tree Rotations for Improving Bounding Volume Hierarchies. In Proceedings of the IEEE Symposium on Interactive Ray Tracing, 73–76.Google ScholarCross Ref
    13. Laine, S., Karras, T., and Aila, T. 2013. Megakernels Considered Harmful: Wavefront Path Tracing on GPUs. In Proceedings of High-Performance Graphics, 137–143. Google ScholarDigital Library
    14. Lauterbach, C., Garland, M., Sengupta, S., Luebke, D., and Manocha, D. 2009. Fast BVH Construction on GPUs. In Computer Graphics Forum: Proceedings of Eurographics, 375–384.Google Scholar
    15. Parker, S. G., Bigler, J., Dietrich, A., Friedrich, H., Hoberock, J., Luebke, D., McAllister, D., McGuire, M., Morley, K., Robison, A., and Stich, M. 2010. OptiX: A General Purpose Ray Tracing Engine. In ACM SIGGRAPH 2010 Papers, 66:1–66:13. Google ScholarDigital Library
    16. Pharr, M., and Humphreys, G. 2004. Physically Based Rendering: From Theory to Implementation. Morgan Kaufman. Google ScholarDigital Library
    17. Pharr, M., and Mark, B. 2012. ISPC – A SPMD compiler for high-performance CPU programming. In Proceedings of Innovative Parallel Computing, 1–13.Google Scholar
    18. Reshetov, A., Soupikov, A., and Hurley, J. 2005. Multi-Level Ray Tracing Algorithm. In ACM SIGGRAPH 2005 Papers, 1176–1185. Google ScholarDigital Library
    19. Stich, M., Friedrich, H., and Dietrich, A. 2009. Spatial Splits in Bounding Volume Hierarchies. In Proceedings of High-Performance Graphics, 7–13. Google ScholarDigital Library
    20. Wald, I., Benthin, C., and Slusallek, P. 2002. OpenRT – A Flexible and Scalable Rendering Engine for Interactive 3D Graphics. Tech. rep., Saarland University. Available at http://graphics.cs.uni-sb.de/Publications.Google Scholar
    21. Wald, I., Benthin, C., and Slusallek, P. 2003. Distributed Interactive Ray Tracing of Dynamic Scenes. In Proceedings of the IEEE Symposium on Parallel and Large-Data Visualization and Graphics, 11–20. Google ScholarDigital Library
    22. Wald, I., Benthin, C., and Boulos, S. 2008. Getting Rid of Packets: Efficient SIMD Single-Ray Traversal using Multi-branching BVHs. In Proceedings of the IEEE / Eurographics Symposium on Interactive Ray Tracing, 49–57.Google Scholar
    23. Wald, I. 2004. Realtime Ray Tracing and Interactive Global Illumination. PhD thesis, Saarland University.Google Scholar
    24. Wald, I. 2007. On fast Construction of SAH-based Bounding Volume Hierarchies. In Proceedings of the IEEE / Eurographics Symposium on Interactive Ray Tracing, 33–40. Google ScholarDigital Library
    25. Wald, I. 2012. Fast Construction of SAH BVHs on the Intel Many Integrated Core (MIC) Architecture. IEEE Transactions on Visualization and Computer Graphics 18, 1, 47–57. Google ScholarDigital Library


ACM Digital Library Publication:



Overview Page: