Within the ChEESE Center of Excellence for Exascale in Solid Earth (ChEESE), the earthquake simulation software SeisSol, one of the 10 ChEESE flagship codes, is being ported to GPU-based supercomputers. First simulations have now been executed on Marconi100 and Piz Daint, two of the largest European supercomputers.
SeisSol simulates highly complicated earthquake processes using detailed models of fault zone physics and of the geological subsurface and topography. Landmark simulations have been executed for the 2004 Sumatra earthquake and for the 2018 Palu earthquake - both events triggered devastating tsunamis. Within a ChEESE pilot demonstrator on "physics-based tsunami-earthquake interaction", ChEESE researchers are developing novel simulation approaches using SeisSol that will help to explain in more detail how earthquakes generate tsunamis, and thus to better assess cascading hazards.
SeisSol modelled earthquake and linked tsunami across Palu Bay from Ulrich et al., 2019: Left: Seismic waves being generated while the earthquake propagates southward in a ‘superfast’ manner. Warm colours denote higher movements across the geological faults and higher ground shaking (snapshot after 15 seconds of earthquake simulation time). Right: The movements of the earthquake beneath the bathtub shaped Palu Bay generate a ‘surprise’ tsunami (snapshot of the water waves after 20s of simulation time of the tsunami scenario).
"Fully coupled multi-physics modelling has the potential to identify the key factors and physical links controlling earthquake and tsunami dynamics. By integrating a wide range of observations, from local to megathrust scales, such models bridge scientific disciplines and space-time scales," states Alice-Agnes Gabriel of LMU Munich, who leads the ChEESE activities on "physics-based tsunami-earthquake interaction".
"We expect that such simulations will require several hundred billion degrees of freedom and will need to exploit the entire computing power of the upcoming European exascale supercomputers," says ChEESE participant Michael Bader from Technical University of Munich (TUM).
While SeisSol has set several performance records on petascale supercomputers, it currently relies on regular CPU-based computer architectures. However, most projected exascale machines will draw their computing power from GPUs (general-purpose graphics processors).
To achieve best-possible performance on CPU-based supercomputers, SeisSol relies on a code generator, YATeTo, developed at TUM. More than 80% of SeisSol's core routines are generated in this way.
"GPU architectures are essentially different from CPUs. The most important step was therefore to find a data decomposition for the ADER-DG method that can result in good GPU performance. Moreover, integrating a different kind of computation into SeisSol via YATeTo is a big challenge," said Ravil Dorozhinskii, doctoral candidate at TUM, who is responsible for the SeisSol GPU porting.
Together with ChEESE partners at CINECA, the "alpha" version of the SeisSol GPU port is now tested on the Piz Daint supercomputer (at the Swiss National supercomputing centre) and on Marconi100, the recently installed at CINECA, the Italian National Supercomputing centre. The GPU version of SeisSol achieved almost 8.5 single precision TFLOPS on a single node of CINECA's Marconi100 cluster.
The earthquake simulation software SeisSol is available as open software software on www.seissol.org. The GPU version of SeisSol is expected to be released in autumn 2020.