计算机科学
库达
转置
解算器
并行计算
线性系统
模板
稀疏矩阵
线性代数
计算科学
软件
基质(化学分析)
算法
程序设计语言
数学
特征向量
数学分析
物理
几何学
材料科学
量子力学
复合材料
高斯分布
作者
Paul F. Baumeister,Stepan Nassyr
出处
期刊:Research Square - Research Square
日期:2023-11-11
标识
DOI:10.21203/rs.3.rs-3574519/v1
摘要
Abstract Linear solvers are a central component of many applications in physics and engineering. In this work we present a software package for simultaneously solving with multiple right-hand sides using the vast compute performance and memory bandwidth of graphical processors. Using the transpose-free quasi minimal residual method iterative linear solving does not require the implementation of an adjoint operator. This C++/CUDA software packet has two ways of being employed. The precompiled version of this library offers linear solving for single and double precision block-sparse complex matrices with interfaces to various programming languages, in particular C, Fortran, Python and Julia. Furthermore, the core algorithm is available for custom implementations of any linear operator as a C++ header-only library. We showcase a matrix-free approach of a custom operator for a finite-difference stencil application solving the three-dimensional Helmholtz equation and compare the performance of the matrix-free approach against the block-sparse matrix version, both on NVIDIA hardware. MSC Classification: 15-04
科研通智能强力驱动
Strongly Powered by AbleSci AI