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则为进一步发展此类方法提供了一个高效的研究平台。