skip to main content
research-article

Hardware-Accelerated Dual-Split Trees

Published:26 August 2020Publication History
Skip Abstract Section

Abstract

Bounding volume hierarchies (BVH) are the most widely used acceleration structures for ray tracing due to their high construction and traversal performance. However, the bounding planes shared between parent and children bounding boxes is an inherent storage redundancy that limits further improvement in performance due to the memory cost of reading these redundant planes. Dual-split trees can create identical space partitioning as BVHs, but in a compact form using less memory by eliminating the redundancies of the BVH structure representation. This reduction in memory storage and data movement translates to faster ray traversal and better energy efficiency. Yet, the performance benefits of dual-split trees are undermined by the processing required to extract the necessary information from their compact representation. This involves bit manipulations and branching instructions which are inefficient in software. We introduce hardware acceleration for dual-split trees and show that the performance advantages over BVHs are emphasized in a hardware ray tracing context that can take advantage of such acceleration. We provide details on how the operations needed for decoding dual-split tree nodes can be implemented in hardware and present experiments in a number of scenes with different sizes using path tracing. In our experiments, we have observed up to 31% reduction in render time and 38% energy saving using dual-split trees as compared to binary BVHs representing identical space partitioning.

Skip Supplemental Material Section

Supplemental Material

3406185.mp4

Presentation Video

References

  1. Rajeev Balasubramonian, Andrew B Kahng, Naveen Muralimanohar, Ali Shafiee, and Vaishnav Srinivas. 2017. CACTI 7: New tools for interconnect exploration in innovative off-chip memories. ACM Transactions on Architecture and Code Optimization (TACO) 14, 2 (2017), 14.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Carsten Benthin, Ingo Wald, Sven Woop, and Attila T. Áfra. 2018. Compressed-leaf Bounding Volume Hierarchies. In High-Performance Graphics (HPG '18). 1--4.Google ScholarGoogle Scholar
  3. Niladrish Chatterjee, Rajeev Balasubramonian, Manjunath Shevgoor, Seth Pugsley, Aniruddha Udipi, Ali Shafiee, Kshitij Sudan, Manu Awasthi, and Zeshan Chishti. 2012. USIMM: the utah simulated memory module. Technical Report. University of Utah.Google ScholarGoogle Scholar
  4. Holger Dammertz, Johannes Hanika, and Alexander Keller. 2008. Shallow bounding volume hierarchies for fast SIMD ray tracing of incoherent rays. In Computer Graphics Forum, Vol. 27. Wiley Online Library, 1225--1233.Google ScholarGoogle Scholar
  5. Michael J Doyle, Colin Fowler, and Michael Manzke. 2013. A hardware unit for fast SAH-optimised BVH construction. ACM Transactions on Graphics (TOG) 32, 4 (2013), 1--10.Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Michael J Doyle, Ciaran Tuohy, and Michael Manzke. 2017. Evaluation of a BVH construction accelerator architecture for high-quality visualization. IEEE Transactions on Multi-Scale Computing Systems (TMSCS) 4, 1 (2017), 83--94.Google ScholarGoogle ScholarCross RefCross Ref
  7. Bartosz Fabianowski and John Dingliana. 2009. Compact BVH storage for ray tracing and photon mapping. In Proceedings of Eurographics Ireland Workshop. 1--8.Google ScholarGoogle Scholar
  8. Venkatraman Govindaraju, Peter Djeu, Karthikeyan Sankaralingam, Mary Vernon, and William R. Mark. 2008. Toward A Multicore Architecture for Real-time Ray-tracing. In 41st IEEE/ACM International Symposium on Microarchitecture.Google ScholarGoogle Scholar
  9. Christiaan P Gribble and Karthik Ramani. 2008. Coherent ray tracing via stream filtering. In 2008 IEEE Symposium on Interactive Ray Tracing (IRT '08). 59--66.Google ScholarGoogle ScholarCross RefCross Ref
  10. Vlastimil Havran, Robert Herzog, and Hans-Peter Seidel. 2006. On the fast construction of spatial hierarchies for ray tracing. In IEEE Symposium on Interactive Ray Tracing (IRT '06). IEEE, 71--80.Google ScholarGoogle ScholarCross RefCross Ref
  11. Sean Keely. 2014. Reduced Precision for Hardware Ray Tracing in GPUs. In High-Performance Graphics (HPG '14).Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. John Kelm, Daniel Johnson, Matthew Johnson, Neal Crago, William Tuohy, Aqeel Mahesri, Steven Lumetta, Matthew Frank, and Sanjay Patel. 2009. Rigel: an architecture and scalable programming interface for a 1000-core accelerator. In International Symposium on Computer Architecture (ISCA '09).Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Hong-Yun Kim, Young-Jun Kim, and Lee-Sup Kim. 2010a. Reconfigurable mobile stream processor for ray tracing. In IEEE Custom Integrated Circuits Conference 2010 (CICC '10).Google ScholarGoogle Scholar
  14. Hong-Yun Kim, Young-Jun Kim, and Lee-Sup Kim. 2012. MRTP: Mobile Ray Tracing Processor With Reconfigurable Stream Multi-Processors for High Datapath Utilization. IEEE Journal of Solid-State Circuits (JSSC) 47, 2 (2012), 518--535.Google ScholarGoogle ScholarCross RefCross Ref
  15. Tae-Joon Kim, Bochang Moon, Duksu Kim, and Sung-Eui Yoon. 2010b. RACBVHs: Random-Accessible Compressed Bounding Volume Hierarchies. IEEE Transactions on Visualization and Computer Graphics (TVCG) 16 2 (2010).Google ScholarGoogle Scholar
  16. Daniel Kopta. 2016. Ray tracing from a data movement perspective. Ph.D. Dissertation. The University of Utah.Google ScholarGoogle Scholar
  17. Daniel Kopta, Konstantin Shkurko, Josef Spjut, Erik Brunvand, and Al Davis. 2013. An energy and bandwidth efficient ray tracing architecture. In Proceedings of High-Performance Graphics (HPG '13). 121--128.Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Daniel Kopta, Konstantin Shkurko, Josef Spjut, Erik Brunvand, and Al Davis. 2015. Memory Considerations for Low Energy Ray Tracing. Computer Graphics Forum 34, 1 (2015), 47--59.Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Daniel Kopta, Josef Spjut, Erik Brunvand, and Alan Davis. 2010. Efficient MIMD architectures for high-performance ray tracing. In IEEE International Conference on Computer Design (ICCD '10).Google ScholarGoogle ScholarCross RefCross Ref
  20. Won-Jong Lee, Youngsam Shin, Jaedon Lee, Jin-Woo Kim, Jae-Ho Nah, Seokyoon Jung, Shihwa Lee, Hyun-Sang Park, and Tack-Don Han. 2013. SGRT: A mobile GPU architecture for real-time ray tracing. In Proceedings of the 5th High-Performance Graphics Conference (HPG '13). 109--119.Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Alexander Lier, Magdalena Martinek, Marc Stamminger, and Kai Selgrad. 2018. A High-Resolution Compression Scheme for Ray Tracing Subdivision Surfaces with Displacement. Proc. ACM Comput. Graph. Interact. Tech. 1, 2 (Aug. 2018), 1--17.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Gábor Liktor and Karthik Vaidyanathan. 2016. Bandwidth-efficient BVH Layout for Incremental Hardware Traversal. In Proceedings of High Performance Graphics (HPG '16). 51--61.Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Daqi Lin, Konstantin Shkurko, Ian Mallett, and Cem Yuksel. 2019a. Dual-split trees. In Proceedings of the ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games (I3D '19). 1--9.Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Daqi Lin, Konstantin Shkurko, Ian Mallett, and Cem Yuksel. 2019b. Dual-split trees-supplemental materials. (2019).Google ScholarGoogle Scholar
  25. Xingyu Liu, Yangdong Deng, Yufei Ni, and Zonghui Li. 2015. FastTree: A hardware KD-tree construction acceleration engine for real-time ray tracing. In 2015 Design, Automation & Test in Europe Conference & Exhibition (DATE). IEEE, 1595--1598.Google ScholarGoogle Scholar
  26. Jae-Ho Nah, Hyuck-Joo Kwon, Dong-Seok Kim, Cheol-Ho Jeong, Jinhong Park, Tack-Don Han, Dinesh Manocha, and Woo-Chan Park. 2014. RayCore: A ray-tracing hardware architecture for mobile devices. ACM Transactions on Graphics (TOG) 33, 5 (2014), 1--15.Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Karthik Ramani and Christiaan Gribble. 2009. StreamRay: A Stream Filtering Architecture for Coherent Ray Tracing. In Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS '09).Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Jörg Schmittler, Ingo Wald, and Philipp Slusallek. 2002. SaarCOR -- A Hardware Architecture for Realtime Ray-Tracing. In EUROGRAPHICS Workshop on Graphics Hardware.Google ScholarGoogle Scholar
  29. Jörg Schmittler, Sven Woop, Daniel Wagner, Wolfgang J. Paul, and Philipp Slusallek. 2004. Realtime Ray Tracing of Dynamic Scenes on an FPGA Chip. In Graphics Hardware (GH '04). 95--106.Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Kai Selgrad, Alexander Lier, Magdalena Martinek, Christoph Buchenau, Michael Guthe, Franziska Kranz, Henry Schäfer, and Marc Stamminger. 2016. A Compressed Representation for Ray Tracing Parametric Surfaces. ACM Transactions on Graphics (TOG) 36, 1 (Nov. 2016).Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Konstantin Shkurko, Tim Grant, Erik Brunvand, Daniel Kopta, Josef Spjut, Elena Vasiou, Ian Mallett, and Cem Yuksel. 2018. SimTRaX: Simulation Infrastructure for Exploring Thousands of Cores. In Proceedings of the 2018 on Great Lakes Symposium on VLSI (GLSVLSI). 503--506.Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Konstantin Shkurko, Tim Grant, Daniel Kopta, Ian Mallett, Cem Yuksel, and Erik Brunvand. 2017. Dual Streaming for Hardware-accelerated Ray Tracing. In Proceedings of High Performance Graphics (HPG '17).Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Josef Spjut, Andrew Kensler, Daniel Kopta, and Erik Brunvand. 2009. TRaX: A multicore hardware architecture for real-time ray tracing. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems (TCAD) 28, 12 (2009).Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Josef Spjut, Daniel Kopta, Solomon Boulos, Spencer Kellis, and Erik Brunvand. 2008. TRaX: A Multi-Threaded Architecture for Real-Time Ray Tracing. In IEEE Symposium on Application Specific Processors (SASP).Google ScholarGoogle Scholar
  35. Elena Vasiou, Konstantin Shkurko, Erik Brunvand, and Cem Yuksel. 2019. Mach-RT: A Many Chip Architecture for High-Performance Ray Tracing. In High-Performance Graphics (HPG '19). ACM, New York, NY, USA.Google ScholarGoogle Scholar
  36. Timo Viitanen, Matias Koskela, Pekka Jääskeläinen, Heikki Kultala, and Jarmo Takala. 2017. MergeTree: A fast hardware HLBVH constructor for animated ray tracing. ACM Transactions on Graphics (TOG) 36, 5 (2017), 1--14.Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Timo Viitanen, Matias Koskela, Pekka Jääskeläinen, Aleksi Tervo, and Jarmo Takala. 2018. PLOCTree: A Fast, High-Quality Hardware BVH Builder. Proc. ACM Comput. Graph. Interact. Tech. 1, 2 (2018), 1--19.Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Carsten Wächter. 2008. Quasi-Monte Carlo light transport simulation by efficient ray tracing. Ph.D. Dissertation. Universität Ulm.Google ScholarGoogle Scholar
  39. Carsten Wächter and Alexander Keller. 2006. Instant ray tracing: The bounding interval hierarchy. Rendering Techniques 2006 (2006), 139--149.Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Ingo Wald, Carsten Benthin, and Solomon Boulos. 2008. Getting rid of packets - Efficient SIMD single-ray traversal using multi-branching BVHs. In Symposium on Interactive Ray Tracing (IRT '08). 49--57.Google ScholarGoogle ScholarCross RefCross Ref
  41. Ingo Wald, Sven Woop, Carsten Benthin, Gregory S Johnson, and Manfred Ernst. 2014. Embree: a kernel framework for efficient CPU ray tracing. ACM Transactions on Graphics (TOG) 33, 4 (2014), 1--8.Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Sven Woop, Erik Brunvand, and Philipp Slusallak. 2006a. Estimating Performance of a Ray Tracing ASIC Design. In Interactive Ray Tracing (IRT '06).Google ScholarGoogle ScholarCross RefCross Ref
  43. Sven Woop, Gerd Marmitt, and Philipp Slusallek. 2006b. B-KD trees for hardware accelerated ray tracing of dynamic scenes. In Graphics Hardware (GH '06). 67--77.Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Sven Woop, Jörg Schmittler, and Philipp Slusallek. 2005. RPU: A Programmable Ray Processing Unit for Realtime Ray Tracing. ACM Transactions on Graphics (TOG) 24, 3 (July 2005).Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Henri Ylitie, Tero Karras, and Samuli Laine. 2017. Efficient incoherent ray traversal on GPUs through compressed wide BVHs. In Proceedings of High Performance Graphics (HPG '17). 1--13.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Hardware-Accelerated Dual-Split Trees

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image Proceedings of the ACM on Computer Graphics and Interactive Techniques
          Proceedings of the ACM on Computer Graphics and Interactive Techniques  Volume 3, Issue 2
          August 2020
          218 pages
          EISSN:2577-6193
          DOI:10.1145/3420254
          Issue’s Table of Contents

          Copyright © 2020 ACM

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 26 August 2020
          Published in pacmcgit Volume 3, Issue 2

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed
        • Article Metrics

          • Downloads (Last 12 months)26
          • Downloads (Last 6 weeks)3

          Other Metrics

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!