ASCL.net

Astrophysics Source Code Library

Making codes discoverable since 1999

ASCL Code Record

[ascl:9912.001] SPH_1D: Hierarchical gravity/SPH treecode for simulations of interacting galaxies

We describe a fast tree algorithm for gravitational N-body simulation on SIMD parallel computers. The tree construction uses fast, parallel sorts. The sorted lists are recursively divided along their x, y and z coordinates. This data structure is a completely balanced tree (i.e., each particle is paired with exactly one other particle) and maintains good spatial locality. An implementation of this tree-building algorithm on a 16k processor Maspar MP-1 performs well and constitutes only a small fraction (approximately 15%) of the entire cycle of finding the accelerations. Each node in the tree is treated as a monopole. The tree search and the summation of accelerations also perform well. During the tree search, node data that is needed from another processor is simply fetched. Roughly 55% of the tree search time is spent in communications between processors. We apply the code to two problems of astrophysical interest. The first is a simulation of the close passage of two gravitationally, interacting, disk galaxies using 65,636 particles. We also simulate the formation of structure in an expanding, model universe using 1,048,576 particles. Our code attains speeds comparable to one head of a Cray Y-MP, so single instruction, multiple data (SIMD) type computers can be used for these simulations. The cost/performance ratio for SIMD machines like the Maspar MP-1 make them an extremely attractive alternative to either vector processors or large multiple instruction, multiple data (MIMD) type parallel computers. With further optimizations (e.g., more careful load balancing), speeds in excess of today's vector processing computers should be possible.

Code site:
http://www.wesman.net/~wesley/ucb/cs184/#files_second
Described in:
http://adsabs.harvard.edu/abs/1994ApJS...94..117O
Bibcode:
1999ascl.soft12001O
Keywords: NASA

Views: 1916

ascl:9912.001
Add this shield to your page
Copy the above HTML to add this shield to your code's website.