Parallel implementations of Krylov subspace methods often help to accelerate the procedure of finding an approximate solution of a linear system. However, such parallelization coupled with asynchronous and out-of-order execution often enlarge the non-associativity impact in floating-point operations. These problems are even amplified when communication-hiding pipelined algorithms are used to improve the parallelization of Krylov subspace methods. Introducing reproducibility in the implementations avoids these problems by getting more robust and correct solutions. This paper proposes a general framework for deriving reproducible and accurate variants of Krylov subspace methods. The proposed algorithmic strategies are reinforced by programmability suggestions to assure deterministic and accurate executions. The framework is illustrated on the preconditioned BiCGStab method and its pipelined modification, which in fact is a distinctive method from the Krylov subspace family, for the solution of non-symmetric linear systems with message-passing. Finally, we verify the numerical behaviour of the two reproducible variants of BiCGStab on a set of matrices from the SuiteSparse Matrix Collection and a 3D Poisson's equation.
翻译:Krylov子空间方法的并行实现通常有助于加速线性系统近似解的求解过程。然而,这种并行化结合异步与乱序执行往往会放大浮点运算中非结合性的影响。当采用通信隐藏流水线算法改进Krylov子空间方法的并行化时,此类问题会进一步加剧。通过引入可复现性实现更鲁棒且正确的解,可避免上述问题。本文提出了一个用于推导Krylov子空间方法可复现且高精度变体的通用框架。所提出的算法策略辅以可编程性建议,以确保确定性与精确的执行。该框架以预处理BiCGStab方法及其流水线改进型为例进行说明——后者实际上是Krylov子空间族中一种独特的非对称线性系统消息传递求解方法。最后,我们基于SuiteSparse矩阵集合中的一组矩阵和三维泊松方程,验证了两种BiCGStab可复现变体的数值行为。