Normalized to: Gonnet, P.
[1]
oai:arXiv.org:1901.09934 [pdf] - 2076543
Planetary Giant Impacts: Convergence of High-Resolution Simulations
using Efficient Spherical Initial Conditions and SWIFT
Submitted: 2019-01-28, last modified: 2020-04-07
We perform simulations of giant impacts onto the young Uranus using smoothed
particle hydrodynamics (SPH) with over 100 million particles. This
100--1000$\times$ improvement in particle number reveals that simulations with
below 10^7 particles fail to converge on even bulk properties like the
post-impact rotation period, or on the detailed erosion of the atmosphere.
Higher resolutions appear to determine these large-scale results reliably, but
even 10^8 particles may not be sufficient to study the detailed composition of
the debris -- finding that almost an order of magnitude more rock is ejected
beyond the Roche radius than with 10^5 particles. We present two software
developments that enable this increase in the feasible number of particles.
First, we present an algorithm to place any number of particles in a spherical
shell such that they all have an SPH density within 1% of the desired value.
Particles in model planets built from these nested shells have a
root-mean-squared velocity below 1% of the escape speed, which avoids the need
for long precursor simulations to produce relaxed initial conditions. Second,
we develop the hydrodynamics code SWIFT for planetary simulations. SWIFT uses
task-based parallelism and other modern algorithmic approaches to take full
advantage of contemporary supercomputer architectures. Both the particle
placement code and SWIFT are publicly released.
[2]
oai:arXiv.org:1807.01341 [pdf] - 1710695
SWIFT: Maintaining weak-scalability with a dynamic range of $10^4$ in
time-step size to harness extreme adaptivity
Submitted: 2018-07-03
Cosmological simulations require the use of a multiple time-stepping scheme.
Without such a scheme, cosmological simulations would be impossible due to
their high level of dynamic range; over eleven orders of magnitude in density.
Such a large dynamic range leads to a range of over four orders of magnitude in
time-step, which presents a significant load-balancing challenge. In this work,
the extreme adaptivity that cosmological simulations present is tackled in
three main ways through the use of the code SWIFT. First, an adaptive mesh is
used to ensure that only the relevant particles are interacted in a given
time-step. Second, task-based parallelism is used to ensure efficient
load-balancing within a single node, using pthreads and SIMD vectorisation.
Finally, a domain decomposition strategy is presented, using the graph domain
decomposition library METIS, that bisects the work that must be performed by
the simulation between nodes using MPI. These three strategies are shown to
give SWIFT near-perfect weak-scaling characteristics, only losing 25%
performance when scaling from 1 to 4096 cores on a representative problem,
whilst being more than 30x faster than the de-facto standard Gadget-2 code.
[3]
oai:arXiv.org:1606.02738 [pdf] - 1420529
SWIFT: Using task-based parallelism, fully asynchronous communication,
and graph partition-based domain decomposition for strong scaling on more
than 100,000 cores
Submitted: 2016-06-08
We present a new open-source cosmological code, called SWIFT, designed to
solve the equations of hydrodynamics using a particle-based approach (Smooth
Particle Hydrodynamics) on hybrid shared/distributed-memory architectures.
SWIFT was designed from the bottom up to provide excellent strong scaling on
both commodity clusters (Tier-2 systems) and Top100-supercomputers (Tier-0
systems), without relying on architecture-specific features or specialized
accelerator hardware. This performance is due to three main computational
approaches: (1) Task-based parallelism for shared-memory parallelism, which
provides fine-grained load balancing and thus strong scaling on large numbers
of cores. (2) Graph-based domain decomposition, which uses the task graph to
decompose the simulation domain such that the work, as opposed to just the
data, as is the case with most partitioning schemes, is equally distributed
across all nodes. (3) Fully dynamic and asynchronous communication, in which
communication is modelled as just another task in the task-based scheme,
sending data whenever it is ready and deferring on tasks that rely on data from
other nodes until it arrives. In order to use these approaches, the code had to
be re-written from scratch, and the algorithms therein adapted to the
task-based paradigm. As a result, we can show upwards of 60% parallel
efficiency for moderate-sized problems when increasing the number of cores
512-fold, on both x86-based and Power8-based architectures.
[4]
oai:arXiv.org:1508.00115 [pdf] - 1254422
SWIFT: task-based hydrodynamics and gravity for cosmological simulations
Submitted: 2015-08-01
Simulations of galaxy formation follow the gravitational and hydrodynamical
interactions between gas, stars and dark matter through cosmic time. The huge
dynamic range of such calculations severely limits strong scaling behaviour of
the community codes in use, with load-imbalance, cache inefficiencies and poor
vectorisation limiting performance. The new swift code exploits task-based
parallelism designed for many-core compute nodes interacting via MPI using
asynchronous communication to improve speed and scaling. A graph-based domain
decomposition schedules interdependent tasks over available resources. Strong
scaling tests on realistic particle distributions yield excellent parallel
efficiency, and efficient cache usage provides a large speed-up compared to
current codes even on a single core. SWIFT is designed to be easy to use by
shielding the astronomer from computational details such as the construction of
the tasks or MPI communication. The techniques and algorithms used in SWIFT may
benefit other computational physics areas as well, for example that of
compressible hydrodynamics. For details of this open-source project, see
www.swiftsim.com
[5]
oai:arXiv.org:1404.2303 [pdf] - 808576
Efficient and Scalable Algorithms for Smoothed Particle Hydrodynamics on
Hybrid Shared/Distributed-Memory Architectures
Submitted: 2014-04-08
This paper describes a new fast and implicitly parallel approach to
neighbour-finding in multi-resolution Smoothed Particle Hydrodynamics (SPH)
simulations. This new approach is based on hierarchical cell decompositions and
sorted interactions, within a task-based formulation. It is shown to be faster
than traditional tree-based codes, and to scale better than domain
decomposition-based approaches on hybrid shared/distributed-memory parallel
architectures, e.g. clusters of multi-cores, achieving a $40\times$ speedup
over the Gadget-2 simulation code.
[6]
oai:arXiv.org:1309.3783 [pdf] - 719509
SWIFT: Fast algorithms for multi-resolution SPH on multi-core
architectures
Submitted: 2013-09-15
This paper describes a novel approach to neighbour-finding in Smoothed
Particle Hydrodynamics (SPH) simulations with large dynamic range in smoothing
length. This approach is based on hierarchical cell decompositions, sorted
interactions, and a task-based formulation. It is shown to be faster than
traditional tree-based codes, and to scale better than domain
decomposition-based approaches on shared-memory parallel architectures such as
multi-cores.