计算机工程与科学 ›› 2025, Vol. 47 ›› Issue (5): 761-774.
所属专题: 高性能计算
唐滔,姜浩,彭林,漆海俊,鲁轻风
TANG Tao,JIANG Hao,PENG Lin,QI Haijun,LU Qingfeng
摘要: 浮点程序的可复现性是指相同的浮点程序在多次不同的运行中得到按位完全相同的数值结果,这对程序调试或数值结果的正确性检验具有重要意义,在数值仿真模拟领域应用广泛。然而,浮点计算的结果往往受到计算顺序的影响,因而指令的动态调度和乱序执行使得浮点计算的精确可复现成为一个挑战。矩阵分解算法在数值仿真应用中有着非常广泛的应用背景,基于可复现的矩阵分解算法可有效提升精度敏感的数值仿真应用的调试和结果分析的效率。基于无误差变换技术,在可复现BLAS库的基础上实现了分块LU分解、Cholesky分解和QR分解3个可复现矩阵分解算法,并在国产处理器上进行了验证。实验结果表明,可复现矩阵分解算法具备良好的数值精确性和可复现性。