The invention relates to a method for optimizing calculation of a distributed conjugate gradient method based on MPI. The flow of traditional serial computing methods can not effectively utilize the advantages of multi-core platforms. The present invention when new nodes join the cluster computing, using pre tuning algorithm to determine the node number of computational threads and had been used in the cluster computing the optimal matrix block size; the matrix data structure according to the optimal block size, converted to block compressed structure; in the calculation task before, according to the data of all the pre tuning node computation thread allocation for each node; when the conjugate gradient method perform matrix vector multiplication algorithm, using MPI automatic computing tasks assigned to the computing nodes in the cluster, when calculating the results after the completion of active reduction to the master node. The invention adopts a high compression and flexible and convenient BCSR structure to block the processing of the sparse matrix, thereby reducing the constant in the computation time complexity and saving the storage space.
【技术实现步骤摘要】
本专利技术涉及一种基于共轭梯度法的计算方法,尤其涉及一种基于MPI的分布式共 轭梯度法的调优计算方法。
技术介绍
传统的共轭梯度法演算计算方法为串行方法,该方法是共轭梯度法在计算机上的 一种简单实现。共轭梯度法是求解特定线性系统的数值解的方法,其中的系数矩阵为对称 和正定的实数阵。共轭梯度法是一个迭代方法,所以它适用于稀疏矩阵系统,因为这些系统 通过类似乔莱斯基分解这样的直接方法去计算量太大。而这类系统在数值求解偏微分方程 时是很常见的。共轭梯度法主要用于求解下列线性系统』ζ = ,其中矩阵4是对称的(即# = 2 ),正定的(即对于所有非0向量χ属于民,Μ/>0 )实系数矩阵。经过一些简化,可以得到求解= 的算法,如附图说明图1所示。 其中2是实对称正定矩阵。传统的串行计算方法严格按照以上的算法流程进行演算,并能够得到正确的演算 结果。然而由于串行计算本身存在的瓶颈,当计算量相对较大,计算机本身的性能将大大制 约其进行演算的效率。并且当实对称正定矩阵2维数过大,计算机也无法对其数据进行有 效的存储与管理。近年来,随着计算机硬件的不断发展,越来越多的计算机采用了多核的平台构架, 传统的串行计算方法的演算流程不能有效地利用多核平台的优势,其对机器本身性能的利 用也不充分。随着分布式计算技术的不断推广,也使得集群并行计算成为提高计算性能的 有效方法。相比而言,传统的串行计算方法则表现出计算上极大的局限性。
技术实现思路
针对上述传统的串行计算方法存在的问题,本专利技术提出一种能充分利用计算机性 能以及硬件平台,组织进行分布式计算的方法。该方法应拥有自动 ...
【技术保护点】
1.一种基于MPI的分布式共轭梯度法的调优计算方法,其特征在于该方法包括以下步骤:步骤1.准备节点,具体是:1-1.进行各节点的硬件部署;1-2.判断是否有新节点加入,如果有新节点加入,则进行步骤1-3的预调优,否则转入步骤2;1-3.利用选取的 个矩阵所构成的基准矩阵集,对集群计算性能进行调优,其具体过程如下:设为的基准矩阵,其中与分别为相应基准矩阵的行数与列数,对其生成的随机向量,选用所有的矩阵分块方式,将基准矩阵按分块方式格式化为相应的BCSR结构,利用计算量分配算法进行节点部署,根据进行节点部署时得到的计算量分配方案,通过MPI控制集群中的各计算节点进行并行的矩阵向量乘运算,从而统计出集群在不同分块方式下的运算开销,其中;在完成基准矩阵集的运算开销的统计之后,对于不同的分块方式分别计算出集群运算的平均开销,选取其中平均开销最小的分块方式作为集群进行矩阵向量乘的最终分块方式;步骤2.准备数据,具体是:2-1.判断是否有计算任务,若无计算任务,则结束,否则对矩阵进行读取;2-2.对读取的矩 ...
【技术特征摘要】
【专利技术属性】
技术研发人员:张纪林,徐向华,万健,蒋从锋,张伟,任永坚,
申请(专利权)人:杭州电子科技大学,
类型:发明
国别省市:86
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。