14700

Sapporo2: A versatile direct N-body library

Jeroen Bedorf, Evghenii Gaburov, Simon Portegies Zwart
Leiden Observatory, Leiden University, P.O. Box 9513, NL-2300 RA Leiden, the Netherlands
arXiv:1510.04068 [astro-ph.IM], (14 Oct 2015)

@article{bedorf2015sapporo,

   title={Sapporo2: A versatile direct $N$-body library},

   author={Bedorf, Jeroen and Gaburov, Evghenii and Zwart, Simon Portegies},

   year={2015},

   month={oct},

   archivePrefix={"arXiv"},

   primaryClass={astro-ph.IM}

}

Astrophysical direct $N$-body methods have been one of the first production algorithms to be implemented using NVIDIA’s CUDA architecture. Now, almost seven years later, the GPU is the most used accelerator device in astronomy for simulating stellar systems. In this paper we present the implementation of the Sapporo2 $N$-body library, which allows researchers to use the GPU for $N$-body simulations with little to no effort. The first version, released five years ago, is actively used, but lacks advanced features and versatility in numerical precision and support for higher order integrators. In this updated version we have rebuilt the code from scratch and added support for OpenCL, multi-precision and higher order integrators. We show how to tune these codes for different GPU architectures and present how to continue utilizing the GPU optimal even when only a small number of particles ($N < 100$) is integrated. This careful tuning allows Sapporo2 to be faster than Sapporo1 even with the added options and double precision data loads. The code runs on a range of NVIDIA and AMD GPUs in single and double precision accuracy. With the addition of OpenCL support the library is also able to run on CPUs and other accelerators that support OpenCL.
Rating: 2.0/5. From 2 votes.
Please wait...

* * *

* * *

HGPU group © 2010-2024 hgpu.org

All rights belong to the respective authors

Contact us: