Corpus ID: 221103718

PyMGRIT: A Python Package for the parallel-in-time method MGRIT

  title={PyMGRIT: A Python Package for the parallel-in-time method MGRIT},
  author={Jens Hahne and Stephanie Friedhoff and M. Bolten},
In this paper, we introduce the Python framework PyMGRIT, which implements the multigrid-reduction-in-time (MGRIT) algorithm for solving the (non-)linear systems arising from the discretization of time-dependent problems. The MGRIT algorithm is a reduction-based iterative method that allows parallel-in-time simulations, i. e., calculating multiple time steps simultaneously in a simulation, by using a time-grid hierarchy. The PyMGRIT framework features many different variants of the MGRIT… Expand
Algorithm 1016
The implementation of the MGRIT algorithm in PyMGRIT is described and the usage is presented from both a user and a developer point of view. Expand
Asynchronous Truncated Multigrid-reduction-in-time (AT-MGRIT)
The effect of using truncated local coarse grids on the convergence of the algorithm is studied, both theoretically and numerically, and it is shown that the new algorithm consistently outperforms classical Parareal/MGRIT in terms of time to solution. Expand
Weighted Relaxation for Multigrid Reduction in Time
Numerical results demonstrate that non-unitary relaxation weights consistently yield faster convergence rates and lower iteration counts for MGRIT when compared with unweighted relaxation, and derive new convergence bounds for weighted relaxation, which are used to guide the selection of relaxation weights. Expand
A parallel implementation of a diagonalization-based parallel-in-time integrator
This paper derives an adaptive strategy to select a new α-circulant preconditioner for each iteration during runtime for balancing convergence rates, round-off errors and inexactness in the individual time-steps. Expand
The Two-Dimensional Swept Rule Applied on Heterogeneous Architectures
The swept rule is implemented and tested for solving two-dimensional problems on heterogeneous computing systems across two distinct systems and shows both potential for speedups and slowdowns, and care should be taken when designing such a solver to maximize benefits. Expand


Parallel Time Integration with Multigrid Reduction for a Compressible Fluid Dynamics Application
The ability to apply parallelin-time approaches to CFD codes is of interest, and MGRIT is particularly well suited given its non-intrusiveness, which only requires users to wrap existing time stepping codes in the XBraid framework. Expand
Parallel Time Integration with Multigrid
A nonintrusive, optimal-scaling time-parallel method based on multigrid reduction (MGR) for solving diffusion equations in two and three space dimensions in numerical ex... Expand
Optimizing MGRIT and Parareal coarse-grid operators for linear advection
This paper applies MGRIT or Parareal to the constant-coefficient linear advection equation, appealing to existing convergence theory to provide insight into the typically non-scalable or even divergent behavior of these solvers for this problem. Expand
A parallel-in-time algorithm for variable step multistep methods
This MGRIT approach transforms the linear multistep methods into single step methods applied to groups of time steps, which results in moderate speedups for the heat equation as well as two IEEE power grid test problems characterized by nonlinear differential algebraic equations. Expand
PyClaw: Accessible, Extensible, Scalable Tools for Wave Propagation Problems
The design of a general hyperbolic PDE solver that can be operated with the convenience of MATLAB yet achieves efficiency near that of hand-coded Fortran and scales to the largest supercomputers is described. Expand
Multigrid Reduction in Time for Nonlinear Parabolic Problems: A Case Study
The goal of this work is the efficient solution of nonlinear problems with MGRIT, where efficiency is defined as achieving similar performance when compared to an equivalent linear problem. Expand
Parallel distributed computing using Python
Two software components aimed to relieve the costs of accessing high-performance parallel computing resources within a Python programming environment: MPI for Python and PETSc for Python are presented. Expand
A parallel multigrid reduction in time method for power systems
This paper presents a fully multilevel approach to parallel in time solution of transient power system simulations using the MPI distributed memory programming model, and demonstrates speedup on a simple Single Machine Infinite Bus differential-algebraic equation model problem. Expand
50 Years of Time Parallel Time Integration
This chapter is for people who want to quickly gain an overview of the exciting and rapidly developing area of research of time parallel methods. Expand
Communication-aware adaptive Parareal with application to a nonlinear hyperbolic system of partial differential equations
Trough large-scale numerical experiments it is demonstrated that with CAAP, it is possible not only to obtain time-parallel speedup on this class of evolution problems, but also that it may obtain parallel acceleration beyond what is possible using conventional spatial domain-decomposition techniques alone. Expand