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

Andrea Arteaga, Daniel Ruprecht, Rolf Krause
Center for Climate System and Modeling, ETH Zurich, Universitatstrasse 16, CH-8092 Zurich, Switzerland
arXiv:1409.8563 [cs.DC], (30 Sep 2014)


   author={Arteaga}, A. and {Ruprecht}, D. and {Krause}, R.},

   title={"{A stencil-based implementation of Parareal in the C++ domain specific embedded language STELLA}"},

   journal={ArXiv e-prints},




   keywords={Computer Science – Distributed, Parallel, and Cluster Computing, Mathematics – Numerical Analysis},




   adsnote={Provided by the SAO/NASA Astrophysics Data System}


Download Download (PDF)   View View   Source Source   



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 paralelism 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.
No votes yet.
Please wait...

Recent source codes

* * *

* * *

HGPU group © 2010-2018 hgpu.org

All rights belong to the respective authors

Contact us: