Towards optimal parallel PM N-body codes: PMFAST
Abstract
We present a new parallel PM N-body code named PMFAST that is freely available to the public. PMFAST is based on a two-level mesh gravity solver where the gravitational forces are separated into long and short range components. The decomposition scheme minimizes communication costs and allows tolerance for slow networks. The code approaches optimality in several dimensions. The force computations are local and exploit highly optimized vendor FFT libraries. It features minimal memory overhead, with the particle positions and velocities being the main cost. The code features support for distributed and shared memory parallelization through the use of MPI and OpenMP, respectively.
The current release version uses two grid levels on a slab decomposition, with periodic boundary conditions for cosmological applications. Open boundary conditions could be added with little computational overhead. We present timing information and results from a recent cosmological production run of the code using a 37123 mesh with 6.4 × 109 particles. PMFAST is cost-effective, memory-efficient, and is publicly available.- Publication:
-
New Astronomy
- Pub Date:
- April 2005
- DOI:
- arXiv:
- arXiv:astro-ph/0402443
- Bibcode:
- 2005NewA...10..393M
- Keywords:
-
- Methods: numerical;
- Cosmology: theory;
- Large-scale structure of universe;
- 02.60.-Cb;
- 95.75.Pq;
- 98.80-k;
- Mathematical procedures and computer techniques;
- 02.60.-Cb;
- 95.75.Pq;
- 98.80-k;
- Mathematical procedures and computer techniques;
- Astrophysics
- E-Print:
- 18 pages, 11 figures