Vectorization and parallelization of the adaptive mesh refinement N-body code

13Citations
Citations of this article
6Readers
Mendeley users who have this article in their library.

Abstract

We describe our vectorized and parallelized adaptive mesh refinement (AMR) N-body code with shared time steps, and report its performance on a Fujitsu VPP5000 vector-parallel supercomputer. Our AMR N-body code puts hierarchical meshes recursively where higher resolution is required and the time step of all particles are the same. The parts that are the most difficult to vectorize are loops that access the mesh data and particle data. We vectorized such parts by changing the loop structure, so that the innermost loop steps through the cells instead of the particles in each cell, in other words, by changing the loop order from the depth-first order to the breadth-first order. We also parallelized our code for distributed memory machines. The important part of parallelization is data decomposition. We sorted the hierarchical mesh data by the Morton order, or the recursive N-shaped order, level by level and split and allocated the mesh data to the processors. Particles are allocated to the processor to which the finest refined cells including the particles are also assigned. Our timing analysis using Λ-dominated cold dark matter simulations shows that our parallel code speeds up almost ideally up to 32 processors, the largest number of processors in our test. © 2005. Astronomical Society of Japan.

Cite

CITATION STYLE

APA

Yahagi, H. (2005). Vectorization and parallelization of the adaptive mesh refinement N-body code. Publications of the Astronomical Society of Japan, 57(5), 779–798. https://doi.org/10.1093/pasj/57.5.779

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free