并行 ODE 方法的最新技术是什么?

计算科学 并行计算 数值分析
2021-12-05 19:49:37

我目前正在研究 ODE 集成的并行方法。有很多新旧文献描述了广泛的方法,但我没有找到任何描述该主题的最新调查或概述文章。

有 Burrage 的书 [1],但它已经有将近 20 年的历史了,因此没有涵盖许多更现代的想法,例如超现实算法。

[1] K. Burrage,常微分方程的并行和序列方法,克拉伦登出版社,牛津,1995 年

3个回答

我不知道最近有任何概述文章,但我积极参与了 PFASST 算法的开发,因此可以分享一些想法。

我知道三大类时间并行技术:

  • 在整个方法中——可以并行评估 RK 或外推积分器的独立阶段;另见 RIDC(修正积分延迟校正算法)
  • 跨越问题——波形松弛
  • 跨越时域——超现实主义;PITA(时间并行算法);和 PFASST(空间和时间的并行完全近似方案)。

跨方法并行化的方法通常执行非常接近规范,但不会扩展到少数(时间)处理器。通常,它们比其他方法更容易实现,并且如果您周围有一些额外的内核并且正在寻找可预测和适度的加速,那么它们是一个很好的选择。

跨时域并行化的方法包括 Parareal、PITA、PFASST。这些方法都是迭代的,并且由廉价(但不准确)的“粗”传播器和昂贵(但准确)的“精细”传播器组成。他们通过迭代地并行评估细传播器来改进使用粗传播器获得的串行解决方案,从而实现并行效率。

Parareal 和 PITA 算法的并行效率上限相当不幸EE<1/K在哪里K是在整个域中获得收敛所需的迭代次数。例如,如果您的 Parareal 实现需要 10 次迭代才能收敛,并且您使用 100 个(时间)处理器,那么您希望的最大加速将是 10 倍。PFASST 算法通过将时间并行迭代与光谱延迟校正时间步长方法的迭代混合并将完全近似方案校正合并到空间/时间离散化的层次结构中来放宽这个上限。

很多游戏都可以使用所有这些方法来尝试加速它们,似乎这些跨域技术的性能取决于您正在解决的问题以及哪些技术可用于加速粗略传播者(粗化网格、粗化算子、粗化物理等)。

一些参考资料(另见论文中列出的参考资料):

我已经编写了 PFASST 的两个实现,它们可以在 'net 上找到:PyPFASSTlibpfasst

虽然这篇文章现在已经有两年了,但如果有人偶然发现它,让我做一个简短的更新:

Martin Gander 最近写了一篇很好的评论文章,给出了该领域的历史观点并讨论了许多不同的 PINT 方法:http ://www.unige.ch/~gander/Preprints/50YearsTimeParallel.pdf

现在还有一个社区网站,列出了很多参考资料并描述了不同的方法: http: //www.parallel-in-time.org/

可以在这里找到关于 Parareal 实时并行算法的讨论:https ://en.wikipedia.org/wiki/Parareal

更新:Ong 和 Schroder现在有一篇更新的 2020 年评论论文

这是波形弛豫的简短介绍。在谈论像 parareal 或 PITA 或其他方法这样的时间并行方法时,应该区分耗散和保守(Hamiltonian)ODE 系统。后者似乎更难以通过划分为时间子间隔在时间维度上进行并行化。这是哈密​​顿系统的超现实分析。耗散系统更容易,因为在初始时间引起的错误u0由于耗散而趋于消失u(t)=exp(λt)u0, Reλ>0.