FISH: A 3D parallel MHD code for astrophysical applications
R. Kaeppeli, S. C. Whitehouse, S. Scheidegger, U.-L. Pen, M., Liebendoerfer

TL;DR
FISH is a highly efficient, scalable 3D MHD code designed for astrophysical simulations, utilizing operator splitting, cache-efficient memory rotation, and hybrid parallelization to achieve high performance on large clusters.
Contribution
The paper introduces FISH, a simple yet scalable 3D MHD code that combines operator splitting with novel parallelization techniques for astrophysical applications.
Findings
Scales to ~10,000 processes for 1000^3 cells
Achieves second order accuracy with symmetric operator ordering
Demonstrates high performance on astrophysical test cases
Abstract
FISH is a fast and simple ideal magneto-hydrodynamics code that scales to ~10 000 processes for a Cartesian computational domain of ~1000^3 cells. The simplicity of FISH has been achieved by the rigorous application of the operator splitting technique, while second order accuracy is maintained by the symmetric ordering of the operators. Between directional sweeps, the three-dimensional data is rotated in memory so that the sweep is always performed in a cache-efficient way along the direction of contiguous memory. Hence, the code only requires a one-dimensional description of the conservation equations to be solved. This approach also enable an elegant novel parallelisation of the code that is based on persistent communications with MPI for cubic domain decomposition on machines with distributed memory. This scheme is then combined with an additional OpenMP parallelisation of different…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
