论文标题
银杏:高性能计算的现代线性操作员代数框架
Ginkgo: A Modern Linear Operator Algebra Framework for High Performance Computing
论文作者
论文摘要
在本文中,我们提出了银杏,这是一个现代的C ++数学库,用于科学高性能计算。虽然经典的线性代数库对矩阵和向量对象作用,但银杏的设计原理将所有功能都作为“线性运算符”摘要,激发了“线性操作员代数库”的符号。银杏目前的重点是为了为高性能GPU体系结构提供稀疏线性代数功能,但是鉴于库设计,可以轻松扩展此重点以适应其他算法和硬件体系结构。我们介绍了这种复杂的软件体系结构,该软件体系结构将核心算法与特定于架构的后端分开,并提供有关可扩展性和可持续性指标的详细信息。我们还通过提供有关如何在MFEM和Deal.II有限元生态系统中使用其功能的示例来证明银杏的可用性。最后,我们提供了银杏在最先进的GPU架构上的高性能的实用证明。
In this paper, we present Ginkgo, a modern C++ math library for scientific high performance computing. While classical linear algebra libraries act on matrix and vector objects, Ginkgo's design principle abstracts all functionality as "linear operators", motivating the notation of a "linear operator algebra library". Ginkgo's current focus is oriented towards providing sparse linear algebra functionality for high performance GPU architectures, but given the library design, this focus can be easily extended to accommodate other algorithms and hardware architectures. We introduce this sophisticated software architecture that separates core algorithms from architecture-specific back ends and provide details on extensibility and sustainability measures. We also demonstrate Ginkgo's usability by providing examples on how to use its functionality inside the MFEM and deal.ii finite element ecosystems. Finally, we offer a practical demonstration of Ginkgo's high performance on state-of-the-art GPU architectures.