A parallel adaptive (PM)-M-3 code with hierarchical particle reordering
We discuss the design and implementation of HYDRA-OMP a parallel implementation of the Smoothed Particle Hydrodynamics-Adaptive (PM)-M-3 (SPH-AP(3)M) code HYDRA. The code is designed primarily for conducting cosmological hydrodynamic simulations and is written in Fortran77+OpenMP. A number of optimizations for RISC processors and SMP-NUMA architectures have been implemented. the most important optimization being hierarchical reordering of particles within chaining cells, which greatly improves data locality thereby removing the cache misses typically associated with linked lists. Parallel scaling is good, with a minimum parallel scaling of 73% achieved on 32 nodes for a variety of modern SMP architectures. We give performance data in terms of the number of particle updates per second, which is a more useful performance metric than raw MFlops. A basic version of the code will be made available to the community in the near future. (C) 2006 Elsevier B.V. All rights reserved.
hydrodynamics cosmology simulation gravitation structure formation