TY - JOUR
T1 - A parallel monte carlo code for simulating collisional N-body systems
AU - Pattabiraman, Bharath
AU - Umbreit, Stefan
AU - Liao, Wei-Keng
AU - Choudhary, Alok Nidhi
AU - Kalogera, Vicky
AU - Memik, Gokhan
AU - Rasio, Frederic A
PY - 2013/2
Y1 - 2013/2
N2 - We present a new parallel code for computing the dynamical evolution of collisional N-body systems with up to N 107 particles. Our code is based on the Hénon Monte Carlo method for solving the Fokker-Planck equation, and makes assumptions of spherical symmetry and dynamical equilibrium. The principal algorithmic developments involve optimizing data structures and the introduction of a parallel random number generation scheme as well as a parallel sorting algorithm required to find nearest neighbors for interactions and to compute the gravitational potential. The new algorithms we introduce along with our choice of decomposition scheme minimize communication costs and ensure optimal distribution of data and workload among the processing units. Our implementation uses the Message Passing Interface library for communication, which makes it portable to many different supercomputing architectures. We validate the code by calculating the evolution of clusters with initial Plummer distribution functions up to core collapse with the number of stars, N, spanning three orders of magnitude from 105 to 107. We find that our results are in good agreement with self-similar core-collapse solutions, and the core-collapse times generally agree with expectations from the literature. Also, we observe good total energy conservation, within ≲ 0.04% throughout all simulations. We analyze the performance of the code, and demonstrate near-linear scaling of the runtime with the number of processors up to 64 processors for N = 105, 128 for N = 106 and 256 for N = 107. The runtime reaches saturation with the addition of processors beyond these limits, which is a characteristic of the parallel sorting algorithm. The resulting maximum speedups we achieve are approximately 60×, 100×, and 220×, respectively.
AB - We present a new parallel code for computing the dynamical evolution of collisional N-body systems with up to N 107 particles. Our code is based on the Hénon Monte Carlo method for solving the Fokker-Planck equation, and makes assumptions of spherical symmetry and dynamical equilibrium. The principal algorithmic developments involve optimizing data structures and the introduction of a parallel random number generation scheme as well as a parallel sorting algorithm required to find nearest neighbors for interactions and to compute the gravitational potential. The new algorithms we introduce along with our choice of decomposition scheme minimize communication costs and ensure optimal distribution of data and workload among the processing units. Our implementation uses the Message Passing Interface library for communication, which makes it portable to many different supercomputing architectures. We validate the code by calculating the evolution of clusters with initial Plummer distribution functions up to core collapse with the number of stars, N, spanning three orders of magnitude from 105 to 107. We find that our results are in good agreement with self-similar core-collapse solutions, and the core-collapse times generally agree with expectations from the literature. Also, we observe good total energy conservation, within ≲ 0.04% throughout all simulations. We analyze the performance of the code, and demonstrate near-linear scaling of the runtime with the number of processors up to 64 processors for N = 105, 128 for N = 106 and 256 for N = 107. The runtime reaches saturation with the addition of processors beyond these limits, which is a characteristic of the parallel sorting algorithm. The resulting maximum speedups we achieve are approximately 60×, 100×, and 220×, respectively.
KW - galaxies: clusters: general
KW - globular clusters: general
KW - methods: numerical
UR - http://www.scopus.com/inward/record.url?scp=84873918305&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84873918305&partnerID=8YFLogxK
U2 - 10.1088/0067-0049/204/2/15
DO - 10.1088/0067-0049/204/2/15
M3 - Article
AN - SCOPUS:84873918305
SN - 0067-0049
VL - 204
JO - Astrophysical Journal, Supplement Series
JF - Astrophysical Journal, Supplement Series
IS - 2
M1 - 15
ER -