计算机工程与科学 ›› 2024, Vol. 46 ›› Issue (07): 1158-1166.
杜皓1,2,毛润彰1,2,邓蕴桐1,2,黄思路2,徐小文2
DU Hao1,2,MAO Run-zhang1,2,DENG Yun-tong1,2,HUANG Si-lu2,XU Xiao-wen2
摘要: 代数多重网格(AMG)是科学工程计算与工业仿真领域求解大规模稀疏线性代数方程组最常用的算法之一。在启动(Setup)阶段的每个网格层,AMG需要基于限制算子R、当前细网格层矩阵A和插值算子P的稀疏矩阵乘积来计算粗网格矩阵Ac=RAP,该过程是AMG并行性能的主要瓶颈。首先发现了主流AMG解法器中RAP并行算法由于分支判断的平方复杂度导致的性能瓶颈,并结合稀疏矩阵CSR的行主序特点,提出了具有线性复杂度分支判断数的RAP并行算法MiniBranRAP。该算法集成到JXPAMG解法器中,并通过实际应用算例验证了算法的有效性。测试结果表明,对于6个来自实际应用的典型算例,相对于Hypre最新版本的BoomerAMG解法器,基于MiniBranRAP的JXPAMG解法器在28个进程上将Setup阶段的计算效率平均加速3.3倍、最高加速9.3倍。