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.
Similar content being viewed by others
Change history
16 April 2021
A Correction to this paper has been published: https://doi.org/10.1007/s11227-021-03798-1
References
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
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
Iain Cantlay (2015) DirectX 11Terrain Tessellation[R/OL]. http://www.nvidia.cn/page/home.html
Rogers DF (2002) Algorithm basis of computer graphics. Shi Jiaoying, Peng Qunsheng, translated. Beijing: Mechanical Industry Press
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
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
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
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
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
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.
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
GDC (2019) Towards filmic quality at 30 FPS: Real-time ray tracing for practical game engine pipelines
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
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
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.
Hurley J (2005) Ray tracing goes mainstream. Intel Technol J 9(2):99–107. https://doi.org/10.1535/itj.0902.01
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
Nickolls J, Buck I, Garland M, Skadron K (2008) Scalable parallel programming with CUDA. ACM Queue 6(2):40–53
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
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
Szécsi L (2003) An effective implementation of the k-D tree. Graphics programming methods. Charles River Media, Inc. pp 315–326
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Corresponding author
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
About this article
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
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-021-03680-0