Virtual LiDAR simulation as a high performance computing challenge: toward HPC HELIOS++

The software HELIOS++ simulates the laser scanning of a given virtual scene that can be composed of different spatial primitives and 3D meshes with distinct granularity. The high computational cost of this type of simulation software demands efficient computational solutions. Classical solutions bas...

Descripción completa

Detalles Bibliográficos
Autores: Esmorís Pena, Alberto Manuel, Yermo, Miguel, Weiser, Hannah, Winiwarter, Lukas, Höfle, Bernhard, Fernández Rivera, Francisco
Tipo de recurso: artículo
Fecha de publicación:2022
País:España
Institución:Universidad de Santiago de Compostela (USC)
Repositorio:Minerva. Repositorio Institucional de la Universidad de Santiago de Compostela
Idioma:inglés
OAI Identifier:oai:minerva.usc.gal:10347/44731
Acceso en línea:https://hdl.handle.net/10347/44731
Access Level:acceso abierto
Palabra clave:HELIOS++
HPC
KDTree
LiDAR simulation
Parallel computing
Descripción
Sumario:The software HELIOS++ simulates the laser scanning of a given virtual scene that can be composed of different spatial primitives and 3D meshes with distinct granularity. The high computational cost of this type of simulation software demands efficient computational solutions. Classical solutions based on GPU are not well suited when irregular geometries compose the scene combining different primitives and physics models because they lead to different computation branches. In this paper, we explore the usage of parallelization strategies based on static and dynamic workload balancing and heuristic optimization strategies to speed up the ray tracing process based on a k-dimensional tree (KDT). Using HELIOS++ as our case study, we analyze the performance of our algorithms on different parallel computers, including the CESGA FinisTerrae-II supercomputer. There is a significant performance boost in all cases, with the decrease in computation time ranging from 89.5% to 99.4%. Our results show that the proposed algorithms can boost the performance of any software that relies heavily on a KDT or a similar data structure, as well as those that spend most of the time computing with only a few synchronization barriers. Hence, the algorithms presented in this paper improve performance, whether computed on personal computers or supercomputers