waLBerla:一种用于多物理场模拟的块结构高性能框架
分布式、并行与集群计算
2020-02-26 v1 计算工程、金融与科学
计算物理
摘要
对当前超级计算机进行高效编程是一项具有挑战性的任务。需要利用核内、计算节点内以及节点间多个层次的并行才能充分发挥系统性能。带有加速器的异构硬件架构进一步使开发过程复杂化。waLBerla 通过为用户提供用于开发块结构网格上模拟的高效构建模块来应对这些挑战。块结构的区域划分足够灵活以处理复杂几何形状,而每个块内的结构化网格允许对基于模板的算法进行高效实现。我们展示了用 waLBerla 实现的若干示例应用,从格子 Boltzmann 方法到刚体粒子模拟。最重要的是,这些方法可以耦合在一起,实现多物理场模拟。该框架使用元编程技术,从符号化的方法表述为 CPU 和 GPU 生成高效代码。为确保软件质量与性能可移植性,持续集成工具链自动运行涵盖多种编译器、硬件架构和软件配置的广泛测试套件。
引用
@article{arxiv.1909.13772,
title = {waLBerla: A block-structured high-performance framework for multiphysics simulations},
author = {Martin Bauer and Sebastian Eibl and Christian Godenschwager and Nils Kohl and Michael Kuron and Christoph Rettinger and Florian Schornbaum and Christoph Schwarzmeier and Dominik Thönnes and Harald Köstler and Ulrich Rüde},
journal= {arXiv preprint arXiv:1909.13772},
year = {2020}
}