TY - JOUR
T1 - Memory access optimization for particle operations in computational fluid dynamics-discrete element method simulations
AU - Vaidhynathan, Deepthi
AU - Sitaraman, Hariswaran
AU - Grout, Ray
AU - Hauser, Thomas
AU - Hrenya, Christine M.
AU - Musser, Jordan
N1 - Publisher Copyright:
© 2022 Chinese Society of Particuology and Institute of Process Engineering, Chinese Academy of Sciences
PY - 2023/7
Y1 - 2023/7
N2 - Computational Fluid Dynamics – Discrete Element Method is used to model gas-solid systems in several applications in energy, pharmaceutical and petrochemical industries. Computational performance bottlenecks often limit the problem sizes that can be simulated at industrial scale. The data structures used to store several millions of particles in such large-scale simulations have a large memory footprint that does not fit into the processor cache hierarchies on current high-performance-computing platforms, leading to reduced computational performance. This paper specifically addresses this aspect of memory access bottlenecks in industrial scale simulations. The use of space-filling curves to improve memory access patterns is described and their impact on computational performance is quantified in both shared and distributed memory parallelization paradigms. The Morton space filling curve applied to uniform grids and k-dimensional tree partitions are used to reorder the particle data-structure thus improving spatial and temporal locality in memory. The performance impact of these techniques when applied to two benchmark problems, namely the homogeneous-cooling-system and a fluidized-bed, are presented. These optimization techniques lead to approximately two-fold performance improvement in particle focused operations such as neighbor-list creation and data-exchange, with ∼ 1.5 times overall improvement in a fluidization simulation with 1.27 million particles.
AB - Computational Fluid Dynamics – Discrete Element Method is used to model gas-solid systems in several applications in energy, pharmaceutical and petrochemical industries. Computational performance bottlenecks often limit the problem sizes that can be simulated at industrial scale. The data structures used to store several millions of particles in such large-scale simulations have a large memory footprint that does not fit into the processor cache hierarchies on current high-performance-computing platforms, leading to reduced computational performance. This paper specifically addresses this aspect of memory access bottlenecks in industrial scale simulations. The use of space-filling curves to improve memory access patterns is described and their impact on computational performance is quantified in both shared and distributed memory parallelization paradigms. The Morton space filling curve applied to uniform grids and k-dimensional tree partitions are used to reorder the particle data-structure thus improving spatial and temporal locality in memory. The performance impact of these techniques when applied to two benchmark problems, namely the homogeneous-cooling-system and a fluidized-bed, are presented. These optimization techniques lead to approximately two-fold performance improvement in particle focused operations such as neighbor-list creation and data-exchange, with ∼ 1.5 times overall improvement in a fluidization simulation with 1.27 million particles.
KW - CFD-DEM
KW - Memory access optimization
KW - Performance optimization
KW - Spatial reordering
UR - https://www.scopus.com/pages/publications/85143139904
U2 - 10.1016/j.partic.2022.10.004
DO - 10.1016/j.partic.2022.10.004
M3 - Article
AN - SCOPUS:85143139904
SN - 1674-2001
VL - 78
SP - 97
EP - 110
JO - Particuology
JF - Particuology
ER -