Massively parallel tandem traversal of bounding volume hierarchies for geometric queries on distributed meshes
Résumé
The efficient computation of geometric queries on large sets of elements, such as intersections or nearest neighbor searches, is crucial for many applications such as contact detection in mechanics simulations. While hierarchical data structures based on spatial or geometric partitioning have been extensively studied over the past 40 years, research detailing their adaptation to massively distributed environments using the message passing interface library—specifically how the communications are done and optimized for parallel efficiency—remains under-explored. We quantify the impact of various design choices to achieve rapid contact detection in massively distributed simulations using bounding volume hierarchies. The memory layout is optimized by reducing the hierarchy node size and ordering them with an innovative “L-filling curve” pattern. Next, the impact of a tandem traversal algorithm is analyzed, along with the optimal exploration order of both hierarchies’ nodes. The parallelization of this tandem traversal is presented, focusing on balancing message latency and volume to enhance parallel efficiency. These design choices extend to a wide range of applications and data structures. Finally, the algorithm’s strong performance is demonstrated up to 20,000 MPI tasks to handle tens of billions of intersections on very large meshes exceeding 100 billion elements.