“Progressive Light Transport Simulation on the GPU: Survey and Improvements” by Davidovič, Křivánek, Hasan and Slusallek

  • ©Tomáš Davidovič, Jaroslav Křivánek, Milos Hasan, and Philipp Slusallek

Conference:


Type:


Title:

    Progressive Light Transport Simulation on the GPU: Survey and Improvements

Session/Category Title:   Fast Rendering


Presenter(s)/Author(s):


Moderator(s):



Abstract:


    Graphics Processing Units (GPUs) recently became general enough to enable implementation of a variety of light transport algorithms. However, the efficiency of these GPU implementations has received relatively little attention in the research literature and no systematic study on the topic exists to date. The goal of our work is to fill this gap. Our main contribution is a comprehensive and in-depth investigation of the efficiency of the GPU implementation of a number of classic as well as more recent progressive light transport simulation algorithms. We present several improvements over the state-of-the-art. In particular, our light vertex cache, a new approach to mapping connections of subpath vertices in bidirectional path tracing on the GPU, outperforms the existing implementations by 30–60%. We also describe a first GPU implementation of the recently introduced vertex connection and merging algorithm [Georgiev et al. 2012], showing that even relatively complex light transport algorithms can be efficiently mapped on the GPU. With the implementation of many of the state-of-the-art algorithms within a single system at our disposal, we present a unique direct comparison and analysis of their relative performance.

References:


    1. T. Aila, T. Karras, and S. Laine. 2013. On quality metrics of bounding volume hierarchies. In Proceedings of the Conference on High-Performance Graphics. 101–107.
    2. T. Aila and S. Laine. 2009. Understanding the efficiency of ray traversal on gpus. In Proceedings of the Conference on High-Performance Graphics. 145–149.
    3. T. Aila, S. Laine, and T. Karras. 2012. Understanding the efficiency of ray traversal on gpus: Kepler and fermi addendum. Tech. rep. NVR-2012-02, NVIDIA Corporation.
    4. N. A. Carr, J. D. Hall, and J. C. Hart. 2002. The ray engine. In Proceedings of the Conference on Graphics Hardware. 37–46.
    5. C. Dachsbacher, J. Krivanek, M. Hasan, A. Arbree, B. Walter, and J. Novak. 2013. Scalable realistic rendering with many-light methods. Comput. Graph. Forum 33, 1, 88–104.
    6. T. Foley and J. Sugerman. 2005. Kd-tree acceleration structures for a gpu raytracer. In Proceedings of the Conference on Graphics Hardware. 15–22.
    7. I. Georgiev. 2012. Implementing vertex connection and merging. Tech. rep., Saarland University. November.
    8. I. Georgiev, J. Krivanek, T. Davidovic, and P. Slusallek. 2012. Light transport simulation with vertex connection and merging. ACM Trans. Graph. 31, 6, 192:1–192:10.
    9. T. Hachisuka and H. W. Jensen. 2009. Stochastic progressive photon mapping. ACM Trans. Graph. 28, 5, 141:1–141:8.
    10. T. Hachisuka and H. W. Jensen. 2010. Parallel progressive photon mapping on gpus. In ACM SIGGRAPH Asia Sketches. 54:1.
    11. T. Hachisuka, S. Ogaki, and H. W. Jensen. 2008. Progressive photon mapping. ACM Trans. Graph. 27, 5, 130:1–130:8.
    12. T. Hachisuka, J. Pantaleoni, and H. W. Jensen. 2012. A path space extension for robust light transport simulation. ACM Trans. Graph. 31, 6, 191:1–191:10.
    13. V. Havran. 2000. Heuristic ray shooting algorithms. Ph.D. thesis, Faculty of Electronic Engineering, Czech Technical University in Prague.
    14. Q. Hou, X. Sun, K. Zhou, C. Lauterbach, and D. Manocha. 2011. Memory-scalable gpu spatial hierarchy construction. IEEE Trans. Vis. Comput. Graph. 17, 4, 466–474.
    15. B. Jenkins. 1997. Hash functions. Dr. Dobbs J. 22, 9.
    16. H. W. Jensen. 2001. Realistic Image Synthesis Using Photon Mapping. A. K. Peters.
    17. J. T. Kajiya. 1986. The rendering equation. In Proceedings of the 13th Annual ACM SIGGRAPH Conference on Computer Graphics and Interactive Techniques. 143–150.
    18. J. Kalojanov and P. Slusallek. 2009. A parallel algorithm for construction of uniform grids. In Proceedings of the Conference on High-Performance Graphics. 23–28.
    19. T. Karras and T. Aila. 2013. Fast parallel construction of high-quality bounding volume hierarchies. In Proceedings of the Conference on High-Performance Graphics. 89–99.
    20. T. Karras, T. Aila, and S. Laine. 2012. Understanding the efficiency of ray traversal on gpus framework. http://code.google.com/p/understanding-the-efficiency-of-ray-traversal-on-gpus/.
    21. A. Keller. 1997. Instant radiosity. In Proceedings of the Annual ACM SIGGRAPH Conference on Computer Graphics and Interactive Techniques. 49–56.
    22. C. Knaus and M. Zwicker. 2011. Progressive photon mapping: A probabilistic approach. ACM Trans. Graph. 30, 3, 25:1–25:13.
    23. J. Krivanek, M. Hasan, A. Arbree, C. Dachsbacher, A. Keller, and B. Walter. 2012. Optimizing realistic rendering with many-light methods. In ACM SIGGRAPH Courses. 7:1–7:217.
    24. E. LaFortune and Y. D. Willems. 1993. Bi-directional path tracing. In Proceedings of the CompuGraphics Conference.
    25. S. Laine, T. Karras, and T. Aila. 2013. Megakernels considered harmful: Wavefront path tracing on gpus. In Proceedings of the Conference on High-Performance Graphics. 137–143.
    26. C. Lauterbach, M. Garland, S. Sengupta, D. Luebke, and D. Manocha. 2009. Fast bvh construction on gpus. Comput. Graph. Forum 28, 375–384.
    27. J. Novak, V. Havran, and C. Dachsbacher. 2010. Path regeneration for interactive path tracing. In Eurographics Short Papers. 61–64.
    28. NVIDIA. 2011. Fermi compute architecture whitepaper. www.nvidia.com/content/PDF/fermi-white-papers/NVIDIA_Fermi_Compute_Architecture _Whitepaper.pdf.
    29. NVIDIA. 2012a. CUDA Programming Guide 5.0. NVIDIA.
    30. NVIDIA. 2012b. NVIDIA geforce gtx 680 whitepaper. www.geforce.com/Active/en_US/pdf/GeForce-GTX-680-Whitepaper-FINAL.pdf.
    31. A. Pajot, L. Barthe, M. Paulin, and P. Poulin. 2011. Combinatorial bidirectional path-tracing for efficient hybrid cpu/gpu rendering. Comput. Graph. Forum 30, 315–324.
    32. J. Pantaleoni and D. Luebke. 2010. HLBVH: Hierarchical lbvh construction for real-time ray tracing of dynamic geometry. In Proceedings of the Conference on High-Performance Graphics. 87–95.
    33. S. G. Parker, J. Bigler, A. Dietrich, H. Friedrich, J. Hoberock, D. Luebke, D. McAllister, M. McGuire, K. Morley, A. Robison, et al. 2010. OptiX: A general purpose ray tracing engine. ACM Trans. Graph. 29, 4, 66:1–66:13.
    34. S. Popov, J. Gunther, H.-P. Seidel, and P. Slusallek. 2007. Stackless kd-tree traversal for high performance gpu ray tracing. Comput. Graph. Forum 26, 415–424.
    35. T. J. Purcell, J. Buck, W. R. Mark, and P. Hanrahan. 2002. Ray tracing on programmable graphics hardware. ACM Trans. Graph. 21, 703–712.
    36. T. J. Purcell, C. Donner, M. Cammarano, H. W. Jensen, and P. Hanrahan. 2003. Photon mapping on programmable graphics hardware. In Proceedings of the Conference on Graphics Hardware. 41–50.
    37. T. Ritschel, C. Dachsbacher, T. Grosch, and J. Kautz. 2012. The state of the art in interactive global illumination. Comput. Graph. Forum 31, 160–188.
    38. S. Sengupta, M. Harris, Y. Zhang, and J. D. Owens. 2007. Scan primitives for gpu computing. In Proceedings of the Conference on Graphics Hardware. 97–106.
    39. M. Stich, H. Friedrich, and A. Dietrich. 2009. Spatial splits in bounding volume hierarchies. In Proceedings of the Conference on High-Performance Graphics. 7–13.
    40. D. van Antwerpen. 2011a. Improving simd efficiency for parallel monte carlo light transport on the gpu. In Proceedings of the Conference on High-Performance Graphics. 41–50.
    41. D. van Antwerpen. 2011b. Unbiased physically based rendering on the gpu. M.S. thesis, Delft University of Technology, The Netherlands.
    42. E. Veach and L. Guibas. 1994. Bidirectional estimations for light transport. In Proceedings of the Eurographics Rendering Workshop. 147–162.
    43. E. Veach and L. J. Guibas. 1995. Optimally combining sampling techniques for monte carlo rendering. In Proceedings of the Annual ACM SIGGRAPH Conference on Computer Graphics and Interactive Techniques. 419–428.
    44. J. S. Vitter. 1985. Random sampling with a reservoir. ACM Trans. Math. Softw. 11, 1, 37–57.
    45. J. Vorba. 2011. Optimal strategy for connecting light paths in bidirectional methods for global illumination computation. M.S. thesis, Charles University in Prague.
    46. I. Wald, P. Slusallek, C. Benthin, and M. Wagner. 2001. Interactive rendering with coherent ray tracing. Comput. Graph. Forum 20, 153–165.
    47. S. Woop, L. Feng, I. Wald, and C. Benthin. 2013. Embree: Ray tracing kernels for cpus and the xeon phi architecture. In ACM SIGGRAPH Talks. 44:1.
    48. F. Zafar, M. Olano, and A. Curtis. 2010. GPU random numbers via the tiny encryption algorithm. In Proceedings of the Conference on High-Performance Graphics. 133–141.
    49. K. Zhou, Q. Hou, R. Wang, and B. Guo. 2008. Real-time kd-tree construction on graphics hardware. ACM Trans. Graph. 27, 5, 126:1–126:11.

ACM Digital Library Publication:



Overview Page: