Skip to main content

Real-Time Ray Tracing with CUDA

  • Conference paper
Algorithms and Architectures for Parallel Processing (ICA3PP 2009)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 5574))

Abstract

The graphics processors (GPUs) have recently emerged as a low-cost alternative for parallel programming. Since modern GPUs have great computational power as well as high memory bandwidth, running ray tracing on them has been an active field of research in computer graphics in recent years. Furthermore, the introduction of CUDA, a novel GPGPU architecture, has removed several limitations that the traditional GPU-based ray tracing suffered. In this paper, an implementation of high per formance CUDA ray tracing is demonstrated. We focus on the perfor mance and show how our design choices in various optimization lead to an implementation that outperforms the previous works. For reasonably complex scenes with simple shading, our implementation achieves the performance of 30 to 43 million traced rays per second. Our implementation also includes the effects of recursive specular reflection and refraction, which were less discussed in previous GPU-based ray tracing works.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Benthin, C.: Realtime Ray Tracing on Current CPU Architectures. PhD thesis, Saarland University (2006)

    Google Scholar 

  2. Benthin, C., Wald, I., Scherbaum, M., Friedrich, H.: Ray Tracing on the CELL Processor. In: Proceedings of the 2006 IEEE Symposium on Interactive Ray Tracing (2006)

    Google Scholar 

  3. Erickson, J.: Plücker Coordinates. Ray Tracing News (1997), http://tog.acm.org/resources/RTNews/html/rtnv10n3.html#art11

  4. Foley, J., van Dam, A., Feiner, S.K., Hughes, J.F.: Computer Graphics – Principles and Practice, 2nd edn. Addison Wesley, Reading (1997)

    MATH  Google Scholar 

  5. Foley, T., Sugerman, J.: Kd-tree acceleration structures for a gpu raytracer. In: HWWS 2005: Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics hardware, pp. 15–22. ACM Press, New York (2005)

    Google Scholar 

  6. Günther, J., Popov, S., Seidel, H.-P., Slusallek, P.: Realtime Ray Tracing on GPU with BVH-based Packet Traversal. In: RT 2007: IEEE Symposium on Interactive Ray Tracing, pp. 113–118 (2007)

    Google Scholar 

  7. Havran, V.: Heuristic Ray Shooting Algorithms. PhD thesis, Faculty of Electrical Engineering, Czech Technical University in Prague (2001)

    Google Scholar 

  8. Horn, D.R., Sugerman, J., Houston, M., Hanrahan, P.: Interactive k-d tree GPU raytracing. In: I3D 2007: Proceedings of the, symposium on Interactive 3D graphics and games, pp. 167–174. ACM Press, New York (2007)

    Chapter  Google Scholar 

  9. Houston, M.: Performance analysis and architecture insights. In: SUPERCOMPUTING 2006 Tutorial on GPGPU, Course Notes (2006), http://www.gpgpu.org/sc2006/slides/10.houston-understanding.pdf

  10. Möller, T., Trumbore, B.: Fast, minimum storage ray triangle intersection. Journal of Graphics Tools 2(1), 21–28 (1997)

    Article  Google Scholar 

  11. NVIDIA. The CUDA homepage, http://www.nvidia.com/cuda

  12. Popov, S., Günther, J., Seidel, H.-P., Slusallek, P.: Stackless KD-Tree Traversal for High Performance GPU Ray Tracing. Computer Graphics Forum 26(3), 415–424 (2007) (Proceedings of Eurographics)

    Article  Google Scholar 

  13. Purcell, T.J., Buck, I., Mark, W.R., Hanrahan, P.: Ray tracing on programmable graphics hardware. ACM Transactions on Graphics (Proceedings of ACM SIGGRAPH), 703–712 (2002)

    Google Scholar 

  14. Shoemake, K.: Plücker Coordinate Tutorial. Ray Tracing News (1998), http://tog.acm.org/resources/RTNews/html/rtnv11n1.html#art3

  15. Thrane, N., Simonsen, L.O.: A Comparison of Acceleration Structures for GPU Assisted Ray Tracing. Master’s thesis, University of Aarhus (2005)

    Google Scholar 

  16. Wald, I., Slusallek, P., Benthin, C., Wagner, M.: Interactive rendering with coherent ray tracing. Computer Graphics Forum 20(3), 153–164 (2001)

    Article  Google Scholar 

  17. Wald, I.: Realtime Ray Tracing and Interactive Global Illumination. PhD thesis, Saarland University (2004)

    Google Scholar 

  18. Whitted, T.: An Improved Illumination Model for Shaded Display. CACM 23(6), 343–349 (1980)

    Article  Google Scholar 

  19. Woop, S., Schmittler, J., Slusallek, P.: Rpu: a programmable ray processing unit for realtime ray tracing. ACM Trans. Graph. 24(3), 434–444 (2005)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Shih, M., Chiu, YF., Chen, YC., Chang, CF. (2009). Real-Time Ray Tracing with CUDA. In: Hua, A., Chang, SL. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2009. Lecture Notes in Computer Science, vol 5574. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-03095-6_32

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-03095-6_32

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-03094-9

  • Online ISBN: 978-3-642-03095-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics