论文部分内容阅读
充分发挥并行计算机的潜在性能,寻求大型稀疏线性代数方程组的高效并行解法,是当前大规模科学计算中急待解决的问题,也是研究的热点问题。并行算法设计与并行程序实现的关键是:依据不同并行计算机的结构特征,减少整体通讯并尽量使各处理机之间负载平衡。 本文基于这一思路,应用高性能计算机,较系统地研究了求解大型稀疏线性代数方程组的并行非定常迭代方法,主要的工作分两个部分: 第一部分包括第3、4章。我们针对分布式存储大规模并行处理系统(MPP),从减少整体通讯和合理分布数据出发,完成了如下工作: (1)引入多搜索方向,提出了一类新的共轭梯度(CG)方法:多搜索方向共轭梯度方法,称MSD-CG方法。该方法是基于区域分解方法而提出的,方法用小线性方程组的求解代替传统的CG方法中整体内积的计算。小方程组的结构基于区域分解方式和搜索方向的选取,可用直接法或迭代法求解。若用迭代法近似求解,则得MSD-CG方法一种近似形式,这种近似方法仅需要相邻子区域之间的通讯,从而完全去掉了整体内积的计算,我们称其为无需整体内积的共轭梯度(GIPF-CG)方法,它非常适合大规模并行计算,是CG方法在大规模并行计算机上的有效实施形式。给出了方法相应的预条件形式。 (2)证明了MSD-CG和GIPF-CG方法的收敛性、相容性定理,奠定了方法的理论基础。特别是给出了MSD-CG方法的基本性质,收敛速度估计,得到了MSD-CG方法比最速下降法收敛得快的结论。 (3)在曙光3000和自行设计的P-II Cluster上进行了大量的数值试验。结果表明:虽然GIPF-CG方法的收敛速度比传统的CG方法略慢,但是,有效的并行使我们的方法整体更为有效。由于小线性方程组中包含了整体信息,我们的方法在每步都有整体信息的交换,从而克服了加法Schwarz区域分解方法的随区域个数增大而收敛速度严重下降的问题。预条件方法对GIPF-CG方法有很大的改善。 MSD-CG和GIPF-CG的算法设计思想很容易推广到非对称问题的求解上,特别是对CR、CGS、BiCG、BiCGSTAB、CGNR、CGNE、QMR等方法的并行化具有非常大的指导意义。 中国工程物理研究院博士学位论文 第二部分包括第5、6章。我们设计了具有自然并行性又有良好的负载平衡性能的松弛型非定常二级多分裂方法。(定常)多分裂和二级多分裂方法的缺陷是:当处理机台数增加时,其同步性和负载不平衡问题变得越来越严重。我们通过引入非定常方法,用非定常参数的调整来改善负载不平衡问题;通过引入异步方法来克服方法的同步性;通过引入松弛和加速因子来对方法进行加速。该部分的主要工作包括: (l)提出了两类松弛型非定常二级多分裂迭代法,即外松弛非定常二级多分裂(ORNSTSM)方法和内松弛非定常二级多分裂(I RNSTSM)方法。这些方法是基于外推法和AOR方法而提出的。当系数矩阵为H阵时,研究了方法的收敛性。已有的相应方法都可视为我们的方法的特殊形式。我们给出方法在共享存储多处理机上的数值试验,结果显示了良好的加速比。可以选择适当的非定常参数,使非定常方法比最优的定常方法更优,并可达到负载的基本平衡。方法的整体迭代次数随着非定常参数的增加而减小。 (2)提出了两类异步松弛型非定常二级多分裂迭代法,即AORNSTSM方法和AIRNSTSM方法。当系数矩阵为H阵时,研究了方法的收敛性。数值例子显示:异步方法总比其同步形式更优,异步形式的收敛区域比其同步形式的大,近似最优松弛因子在其收敛区域的上界附近。特别地,用异步形式的非定常二级多分裂方法,我们可以动态地调整非定常参数来达到动态调整负载平衡,并得到更优的收敛速度。