English

An efficient parallel algorithm for O(N^2) direct summation method and its variations on distributed-memory parallel machines

Astrophysics 2009-11-07 v1

Abstract

We present a novel, highly efficient algorithm to parallelize O(N^2) direct summation method for N-body problems with individual timesteps on distributed-memory parallel machines such as Beowulf clusters. Previously known algorithms, in which all processors have complete copies of the N-body system, has the serious problem that the communication-computation ratio increases as we increase the number of processors, since the communication cost is independent of the number of processors. In the new algorithm, p processors are organized as a p×p\sqrt{p}\times \sqrt{p} two-dimensional array. Each processor has N/pN/\sqrt{p} particles, but the data are distributed in such a way that complete system is presented if we look at any row or column consisting of p\sqrt{p} processors. In this algorithm, the communication cost scales as N/pN /\sqrt{p}, while the calculation cost scales as N2/pN^2/p. Thus, we can use a much larger number of processors without losing efficiency compared to what was practical with previously known algorithms.

Keywords

Cite

@article{arxiv.astro-ph/0108412,
  title  = {An efficient parallel algorithm for O(N^2) direct summation method and its variations on distributed-memory parallel machines},
  author = {Junichiro Makino},
  journal= {arXiv preprint arXiv:astro-ph/0108412},
  year   = {2009}
}

Comments

21 pages, 11 figures, submitted to New Astronomy