English

A stencil-based implementation of Parareal in the C++ domain specific embedded language STELLA

Distributed, Parallel, and Cluster Computing 2015-09-22 v2 Numerical Analysis

Abstract

In view of the rapid rise of the number of cores in modern supercomputers, time-parallel methods that introduce concurrency along the temporal axis are becoming increasingly popular. For the solution of time-dependent partial differential equations, these methods can add another direction for concurrency on top of spatial parallelization. The paper presents an implementation of the time-parallel Parareal method in a C++ domain specific language for stencil computations (STELLA). STELLA provides both an OpenMP and a CUDA backend for a shared memory parallelization, using the CPU or GPU inside a node for the spatial stencils. Here, we intertwine this node-wise spatial parallelism with the time-parallel Parareal. This is done by adding an MPI-based implementation of Parareal, which allows us to parallelize in time across nodes. The performance of Parareal with both backends is analyzed in terms of speedup, parallel efficiency and energy-to-solution for an advection-diffusion problem with a time-dependent diffusion coefficient.

Keywords

Cite

@article{arxiv.1409.8563,
  title  = {A stencil-based implementation of Parareal in the C++ domain specific embedded language STELLA},
  author = {Andrea Arteaga and Daniel Ruprecht and Rolf Krause},
  journal= {arXiv preprint arXiv:1409.8563},
  year   = {2015}
}
R2 v1 2026-06-22T06:09:33.891Z