Skip to main content
Log in

Parallel optimization of the ray-tracing algorithm based on the HPM model

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

A Correction to this article was published on 16 April 2021

This article has been updated

Abstract

This paper proposes a parallel computing analysis model HPM and analyzes the parallel architecture of CPU–GPU based on this model. On this basis, we study the parallel optimization of the ray-tracing algorithm on the CPU–GPU parallel architecture and give full play to the parallelism between nodes, the parallelism of the multi-core CPU inside the node, and the parallelism of the GPU, which improve the calculation speed of the ray-tracing algorithm. This paper uses the space division technology to divide the ground data, constructs the KD-tree organization structure, and improves the construction method of KD-tree to reduce the time complexity of the algorithm. The ground data is evenly distributed to each computing node, and the computing nodes use a combination of CPU–GPU for parallel optimization. This method dramatically improves the drawing speed while ensuring the image quality and provides an effective means for quickly generating photorealistic images.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

Change history

References

  1. Dick C, Krüger J, Westermann R (2009) GPU ray-casting for scalable terrain rendering. In: Proceedings of eurographics, areas papers 43–50. 2. https://doi.org/10.2312/ega.20091007

  2. Yang X, Xu D, Zhao L (2008) Ray tracing dynamic scenes using fast KD-tree base on multi-core architectures. In: International conference on computer science and software engineering2008. https://doi.org/10.1109/CSSE.2008.1381

  3. Iain Cantlay (2015) DirectX 11Terrain Tessellation[R/OL]. http://www.nvidia.cn/page/home.html

  4. Rogers DF (2002) Algorithm basis of computer graphics. Shi Jiaoying, Peng Qunsheng, translated. Beijing: Mechanical Industry Press

  5. Wikipedia contributors. Ray tracing (graphics) [G/OL]. Wikipedia. (20190317)[2019–03–17]. https://en.wikipedia.org/w/index.php?title=Ray_tracing_(graphics)&oldid=888247514

  6. Hussain S, Grahn H (2007) Fast kd-tree construction for 3D-rendering algorithms like ray tracing. In: Bebis G. et al (eds) Advances in visual computing. LNCS, pp 681–690. https://doi.org/10.1007/978-3-540-76856-2_67

  7. Hu Y, Wang W, Li D, Zeng Q (2019) Parallel BVH construction using locally density clustering. IEEE Access 7:105827–105839. https://doi.org/10.1109/ACCESS.2019.2932151

    Article  Google Scholar 

  8. Wensheng Z, Qian X, Jin Z et al (2015) Acceleration algorithm in ray tracing by the octree neighbor finding. J Graphics 36(3):339–344. https://doi.org/10.3969/j.issn.2095-302X.2015.03.003

    Article  Google Scholar 

  9. Kammaje RP, Mora B (2007) A study of restricted BSP trees for ray tracing. In: 2007 IEEE symposium on interactive ray tracing. https://doi.org/10.1109/RT.2007.4342591

  10. Budge BC, Coming D, Norpchen D, et al (2008) Accelerated building and ray tracing of restricted BSP trees. In: IEEE symposium on interactive ray tracing. IEEE, pp 167–174. https://doi.org/10.1109/RT.2008.4634638.

  11. Zhang J, Guo H, Hong F et al (2018) Dynamic load balancing based on constrained K-D tree decomposition for parallel particle tracing. IEEE Trans Visual Comput Graphics 24(1):954–963

    Article  Google Scholar 

  12. GDC (2019) Towards filmic quality at 30 FPS: Real-time ray tracing for practical game engine pipelines

  13. Heqi Lu, Peng B, Jieqing F (2013) OpenCL-based real-time KD-tree and raytracing for dynamic scene. J Comput Aided Des Graphics 025(007):963–973

    Google Scholar 

  14. Xie G, Sun X, Wang W. Interactive depth-of-field rendering with secondary rays. J Comput Sci Technol: English Ed (3): 490–498. https://doi.org/10.1007/s11390-013-1350-4

  15. Lessig C, Desbrun M, Fiume E. A constructive theory of sampling for image synthesis using reproducing Kernel bases. ACM Trans Graphics 33(4):1–14. https://doi.org/10.1145/2601097.2601149.

  16. Hurley J (2005) Ray tracing goes mainstream. Intel Technol J 9(2):99–107. https://doi.org/10.1535/itj.0902.01

    Article  Google Scholar 

  17. Parker SG, Bigler J , Dietrich A , et al (2010) OptiX: a general purpose ray tracing engine. ACM Trans Graphics, 29(4CD):1–13. 1145/1778765.1778803

  18. Nickolls J, Buck I, Garland M, Skadron K (2008) Scalable parallel programming with CUDA. ACM Queue 6(2):40–53

    Article  Google Scholar 

  19. Havran V (2012) Heuristic ray shooting algorithms. Ph.D. Thesis, Czech Technical University, Prague (2001) International Journal of Computer Graphics & Animation (IJCGA) vol 2, no 4

  20. Hunt W, Mark WR, Stoll G (2008) Fast kd-tree construction with an adaptive error-bounded heuristic. In: IEEE symposium on interactive ray tracing. IEEE. https://doi.org/10.1109/RT.2006.280218

  21. Szécsi L (2003) An effective implementation of the k-D tree. Graphics programming methods. Charles River Media, Inc. pp 315–326

  22. Wald I, Havran V (2006) On building fast kd-trees for ray tracing and on doing that in O(N log N). In: Proceedings of IEEE symposium on interactive ray tracing, pp 61–69. https://doi.org/10.1109/RT.2006.280216

  23. Tillmann M, Pfaffe P, Kaag C et al (2016) Online-autotuning of parallel SAH kD-trees. In: 30th IEEE international parallel and distributed processing symposium (IPDPS). IEEE. https://doi.org/10.1109/IPDPS.2016.31

  24. Lee J, Shin Y, Lee WJ et al (2013) Real-time ray tracing on coarse-grained reconfigurable processor. In: International conference on field-programmable technology (FPT), pp 192–197. https://doi.org/10.1109/FPT.2013.6718352

  25. Popov S, Gunther J, Seidel HP (2006) Experiences with streaming construction of SAH kd-trees. In: IEEE symposium on interactive ray tracing. Salt Lake City:IEEE 89–94. https://doi.org/10.1109/RT.2006.280219

  26. Hunt W, Mark WR, Stoll G (2006) Fast kd-tree construction with an adaptive error-bounded heuristic. In: Proceedings of the 2006 IEEE symposium on interactive ray tracing. https://doi.org/10.1109/RT.2006.280218

  27. Shevtsov M, Soupikov A, Kapustian A (2007) Highly parallel fast kd-tree construction for interactive ray tracing of dynamic scenes. Comput Graphics Forum 26(3):395–404

    Article  Google Scholar 

  28. Spjut J, Boulos S, Kopta D et al (2008) TRaX: A multi-threaded architecture for real-time ray tracing. In: Symposium on application specific processors. IEEE Computer Society, 28(12):108–114. https://doi.org/10.1109/SASP.2008.4570794

  29. Kang YS, Nah JH, Park WC (2013) gkDtree: a group-based parallel update kd-tree for interactive ray tracing. J Syst Archit Eur J 59(3):166–175

    Article  Google Scholar 

  30. Zhou K, Hou Q, Wang R, Guo B (2008) Real-time KD-Tree construction on graphics hardware. In: ACM Trans Graphics, Article No.: 126. https://doi.org/10.1145/1409060.1409079

  31. Changh B, Seoh W, Ihm I (2015) On the efficient Implementation of a real-time kd-tree construction algorithm. Singapore: Springer, pp 207–219. https://doi.org/10.1007/978-981-287-134-3_13

  32. Günther J, Friedrich H, Wald I, Seidel H-P, Slusallek P (2006) Ray tracing animated scenes using motion decomposition. Comput Graphics Forum Wiley Online Library. https://doi.org/10.1111/j.1467-8659.2006.00971.x

    Article  Google Scholar 

  33. Gobbetti E, Marton F, Cignoni P, di Benedetto M, Ganovelli F (2006) C-BDAM—compressed batched dynamic adaptive meshes for terrain rendering. Comput Graphics Forum 25(3):333–342. https://doi.org/10.1111/j.1467-8659.2006.00952.x

    Article  Google Scholar 

  34. Zhang F et al (2019) Video salient region detection model based on wavelet transform and feature comparison. EURASIP J Image Video Process 1–10. https://doi.org/10.1186/s13640-019-0455-2

  35. Zhang F, Wang C (2020) MSGAN: generative adversarial networks for image seasonal style transfer. IEEE Access 8:104830–104840. https://doi.org/10.1109/ACCESS.2020.2999750

    Article  Google Scholar 

  36. Zhang F, Mao Z-J, Huang Y-F, Lin Xu, Ding G (2018) Deep learning models for EEG-based rapid serial visual presentation event classification. J Inf Hiding Multimedia Signal Process 9(1):177–187

    Google Scholar 

  37. Lindstrom P, Pascucci V. Terrain simplification simplified: a general framework for view-dependent out-of-core visualization. IEEE Trans Vis Comput Graphics 8(3):239–254. https://doi.org/10.1109/TVCG.2002.1021577

  38. Correa WT, Klosowski JT, Silva CT (2003) Visibility-based prefetching for interactive out-of-core rendering. In: Proceedings of the 2003 IEEE symposium on parallel and large-data visualization and graphics

  39. Niu Y, Lin W, Ke X et al (2017) Fitting-based optimisation for image visual salient object detection. IET Comput Vision 11(2):161–172. https://doi.org/10.1049/iet-cvi.2016.0027

    Article  Google Scholar 

  40. Yuzhen N, Wenqi L, Xiao K (2018) CF-based optimisation for saliency detection. IET Comput Vision 12(4):365–376. https://doi.org/10.1049/iet-cvi.2017.0512

    Article  Google Scholar 

  41. Niu Y, Lin L, Chen Y, et al. Machine learning-based framework for saliency detection in distorted images. Multimedia Tools Appl 76(24): 26329–26353. https://doi.org/10.1007/s11042-016-4128-1

  42. DeMarle DE, Gribble CP, Boulos S et al (2005) Memory sharing for interactive Raytracing on clusters. Parallel Comput 31(2):221–242. https://doi.org/10.1016/j.parco.2005.02.007

    Article  Google Scholar 

  43. Ize T, Brownlee C, Hansen CD (2011) Real-time ray tracer for visualizing massive models on a cluster. In: Eurographics symposium on parallel graphics and visualization, EGPGV 2011, Llandudno, Wales, UK, 2011. Proceedings. https://doi.org/10.2312/EGPGV/EGPGV11/061-069

  44. Chen M, Huang HF (2018) A real-time parallel ray-tracing method based on GPU cluster. In: IEEE international conference of safety produce informatization (IICSPI). New York: IEEE Press, 327–330. https://doi.org/10.1109/IICSPI.2018.8690411

  45. Singh JM, Narayanan PJ (2010) Real-time ray tracing of implicit surfaces on the GPU. IEEE Trans Vis Comput Graph 16:261–272. https://doi.org/10.1109/TVCG.2009.41

    Article  Google Scholar 

  46. Qin, Y., Lin, J., & Huang, X. (2015, July). Massively parallel ray tracing algorithm using GPU. In: 2015 Science and information conference (SAI) (pp. 699–703). https://doi.org/10.1109/SAI.2015.7237218

  47. Pajot A, Barthe L, Paulin M, et al (2011) Combinatorial bidirectional path-tracing for efficient hybrid CPU/GPU rendering. Comput Graphics Forum: J Eur Assoc Comput Graph 30(2). https://doi.org/10.1111/j.1467-8659.2011.01863.x

  48. Cheng Y, Jiang H, Wang F, et al. Using high-bandwidth networks efficiently for fast graph computation. IEEE Trans Parallel Distrib Syst 1–1. https://doi.org/10.1109/TPDS.2018.2875084

  49. Cheng Y, Wang F, Jiang H, et al. A communication-reduces and computation-balanced framework for fast grap computation. Front Comput Sci 12(5). https://doi.org/10.1007/S11704-018-6400-1

Download references

Acknowledgements

This research was carried out with the support of the Youth Science Foundation project "Very high resolution satellite stereo image simulation and accuracy evaluation method for DSM extraction in urban areas" (Project ID: 41701427), thank you.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Zhang Fu-Quan.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

The original online version of this article was revised due to a retrospective Open Access cancellation.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Jun-Feng, W., Gang-Yi, D., Yi-Ou, W. et al. Parallel optimization of the ray-tracing algorithm based on the HPM model. J Supercomput 77, 10307–10332 (2021). https://doi.org/10.1007/s11227-021-03680-0

Download citation

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-021-03680-0

Keywords

Navigation