Performance Tuning of N-Body Codes on Modern Microprocessors: I. Direct Integration with a Hermite Scheme on x86_64 Architecture
arXiv:astro-ph/0511062 · doi:10.1016/j.newast.2006.07.007
Abstract
The main performance bottleneck of gravitational N-body codes is the force calculation between two particles. We have succeeded in speeding up this pair-wise force calculation by factors between two and ten, depending on the code and the processor on which the code is run. These speedups were obtained by writing highly fine-tuned code for x86_64 microprocessors. Any existing N-body code, running on these chips, can easily incorporate our assembly code programs. In the current paper, we present an outline of our overall approach, which we illustrate with one specific example: the use of a Hermite scheme for a direct N^2 type integration on a single 2.0 GHz Athlon 64 processor, for which we obtain an effective performance of 4.05 Gflops, for double precision accuracy. In subsequent papers, we will discuss other variations, including the combinations of N log N codes, single precision implementations, and performance on other microprocessors.
32 pages, 2 figures
References in corpus (3)
Cited by in corpus (25)
- The Uchuu Simulations: Data Release 1 and Dark Matter Halo Concentrations
- High Performance Direct Gravitational N-body Simulations on Graphics Processing Units -- II: An implementation in CUDA
- Formation of Terrestrial Planets from Protoplanets under a Realistic Accretion Condition
- Implementation and performance of FDPS: A Framework Developing Parallel Particle Simulation Codes
- Hierarchical Formation of Dark Matter Halos and the Free Streaming Scale
- GreeM : Massively Parallel TreePM Code for Large Cosmological N-body Simulations
- Where are the Low-Mass Population III Stars ?
- SILVERRUSH. VI. A simulation of Ly emitters in the reionization epoch and a comparison with Subaru Hyper Suprime-Cam survey early data
- Phantom-GRAPE: numerical software library to accelerate collisionless -body simulation with SIMD instruction set on x86 architecture
- N-body simulation for self-gravitating collisional systems with a new SIMD instruction set extension to the x86 architecture, Advanced Vector eXtensions
- The Abundance and Structure of Subhaloes near the Free Streaming Scale and Their Impact on Indirect Dark Matter Searches
- SIRIUS Project. III. Star-by-star simulations of star cluster formation using a direct N-body integrator with stellar feedback
- N-Body Simulations on GPUs
- The Chamomile Scheme: An Optimized Algorithm for N-body simulations on Programmable Graphics Processing Units
- On the evolution of gas clouds exposed to AGN radiation. I. Three-dimensional radiation hydrodynamic simulations
- Variation of the subhalo abundance in dark matter halos
- A Parameter-Masked Mock Data Challenge for Beyond-Two-Point Galaxy Clustering Statistics
- Constraining Self-Interacting Dark Matter with Dwarf Spheroidal Galaxies and High-resolution Cosmological -body Simulations
- Simulating the universe on an intercontinental grid of supercomputers
- A parallel gravitational N-body kernel
- High Performance Gravitational N-body Simulations on a Planet-wide Distributed Supercomputer
- PHoToNs--A Parallel Heterogeneous & Threads oriented code for cosmological N-body simulation
- A pilgrimage to gravity on GPUs
- Acceleration of the tree method with SIMD instruction set
- A 400 Trillion-Grid Vlasov Simulation on Fugaku Supercomputer: Large-Scale Distribution of Cosmic Relic Neutrinos in a Six-dimensional Phase Space