一种求解线性方程组的SOR并行算法
收稿日期: 2009-01-10
修回日期: 2009-04-09
网络出版日期: 2010-09-29
基金资助
国家自然科学基金资助项目(50675080);教育部高等学校博士点基金资助项目(20060487056)
A Class of Parallel SOR Method for Solving Linear Equation Systems
Received date: 2009-01-10
Revised date: 2009-04-09
Online published: 2010-09-29
逐次松弛迭代算法(SOR)是求解线性方程组的一种常用迭代算法,当系数矩阵正定时,它具有较快的收敛速度。但是,由于每个迭代步内存在数据相关,它难以实现并行计算。目前的SOR并行算法采用数据分解的方法,但由于该法并行区域过小,同步通讯代价大,并行效率低。本文提出了SOR的一种新型并行算法,该算法与传统SOR方法等价,具有相同的收敛性和迭代结果。该并行算法通过矩阵分块增大了可并行计算的区域,并引入流水线技术,利用各处理器间通讯与计算时间的重叠,获得较理想的并行加速效率。通过多核微机以及小规模集群上的数值实验证明,本文提出的SOR并行算法在求解大型稠密线性方程组时具有较好的并行效率。
张云,周华民,崔树标,李德群 . 一种求解线性方程组的SOR并行算法[J]. 计算机工程与科学, 2010 , 32(10) : 80 -84 . DOI: 10.3969/j.issn.1007130X.2010.
The Successive OverRelaxation (SOR) method is a class of solvers for the linear equation systems in use. It converges quickly if the coefficient matrix is positively definite. Since there are data correlations in each iteration step,it is thought to be unsuitable for parallel computing. The general parallel algorithms for SOR,which use a data decomposition method,is inefficient due to the tiny parallel regions and the resulting expensive time cost for synchronizations. A class of parallel SOR method is proposed in this paper. The parallel SOR method presented is equivalent to the original SOR method and has an identical convergence ratio and identical solutions as the original. In this method,the sizes of parallel regions are increased using a partitioning method,and then pipeline is brought in to overlap communications and computing,thus a perfect parallel efficiency can be achieved. Numerical experiments are performed on both multicore personal computers and a smallscale computer cluster,the parallel SOR method proposed is proved efficient for largescale dense linear equation systems.
/
| 〈 |
|
〉 |