Modern high performance computers are massively parallel; for many PDE applications spatial parallelism saturates long before the computer's capability is reached. Parallel-in-time methods enable further speedup beyond spatial saturation by solving multiple timesteps simultaneously to expose additional parallelism. ParaDiag is a particular approach to parallel-in-time based on preconditioning the simultaneous timestep system with a perturbation that allows block diagonalisation via a Fourier transform in time. In this article, we introduce asQ, a new library for implementing ParaDiag parallel-in-time methods, with a focus on applications in the geosciences, especially weather and climate. asQ is built on Firedrake, a library for the automated solution of finite element models, and the PETSc library of scalable linear and nonlinear solvers. This enables asQ to build ParaDiag solvers for general finite element models and provide a range of solution strategies, making testing a wide array of problems straightforward. We use a quasi-Newton formulation that encompasses a range of ParaDiag methods, and expose building blocks for constructing more complex methods. The performance and flexibility of asQ is demonstrated on a hierarchy of linear and nonlinear atmospheric flow models. We show that ParaDiag can offer promising speedups and that asQ is a productive testbed for further developing these methods.
翻译:现代高性能计算机具有大规模并行能力;对于许多偏微分方程应用,空间并行性在计算机能力远未耗尽时便已饱和。并行时间方法通过同时求解多个时间步以暴露额外的并行性,从而在空间饱和之外实现进一步的加速。ParaDiag是一种特定的并行时间方法,其核心在于对同步时间步系统进行预处理,通过引入一个扰动使得系统能够借助时间上的傅里叶变换实现块对角化。本文介绍asQ——一个用于实现ParaDiag并行时间方法的新库,重点关注地球科学(特别是天气与气候)领域的应用。asQ构建于Firedrake(一个用于有限元模型自动求解的库)和PETSc(一个可扩展的线性与非线性求解器库)之上。这使得asQ能够为通用有限元模型构建ParaDiag求解器,并提供一系列求解策略,从而便于对各类问题进行广泛测试。我们采用一个涵盖多种ParaDiag方法的拟牛顿公式,并提供了构建更复杂方法的基础模块。通过一系列线性和非线性大气流动模型的层级测试,展示了asQ的性能与灵活性。结果表明,ParaDiag能够提供显著的加速效果,而asQ是进一步开发此类方法的高效实验平台。