[发明专利]针对SMP集群系统采用MPI和OpenMP混合并行提高计算速度的方法在审
申请号: | 201310442102.4 | 申请日: | 2013-09-25 |
公开(公告)号: | CN104461467A | 公开(公告)日: | 2015-03-25 |
发明(设计)人: | 罗海飙;廖俊豪 | 申请(专利权)人: | 广州中国科学院软件应用技术研究所 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 广州新诺专利商标事务所有限公司 44100 | 代理人: | 肖云 |
地址: | 511458 广东省广州*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 针对 smp 集群 系统 采用 mpi openmp 混合 并行 提高 计算 速度 方法 | ||
1.一种针对SMP集群系统采用MPI和OpenMP混合并行提高计算速度的方法,其特征在于,包括以下步骤:
(1)计算准备
a)启动MPI多进程计算,其中进程数小于或等于可用计算节点数目;
b)每个进程读入子稀疏矩阵A、子初始向量x0、块向量b和最大计算公差Tolerance,子稀疏矩阵A、子初始向量x0和块向量b是通过网格划分软件划分问题的计算域后生成;
(2)开始预条件共轭梯度法的MPI+OpenMP并行的循环计算
1)根据初始值x0,计算r=b-Ax0;
2)p=M-1r;
3)ρ=rTp;
4)每个进程开启OpenMP多线程编译指令,其中线程数小于或等于该线程所处计算节点可用CPU核数目:
#pragmaompparallel{ /*开始OpenMP线程*/
5)fori=1,2,…… /*开始循环*/
6)#pragmaompparallelforreduction(+:α){
7)q=Ap /*稀疏矩阵向量乘*/
其中,具体包括以下步骤:
①多线程并行计算行循环:按行顺序,i从0循环到稀疏矩阵最后一行,其中:
a)预先读取子稀疏矩阵A第i行的数据,存到向量tmp中,
b)j从0循环到第i行非零值结尾,其中:
i.k=第i行第j个非零值的列指数,
ii.q[k]=tmp[j]*p[k]+q[k],
②MPI非阻塞通信交换各节点的q;
8)α=pTq /*向量内积*/
9)}
10)α=ρ/α
11)ρold=ρ
12)#pragmaompparallelforreduction(+:ρ,error){
13)x=x+αp /*AXPY*/
14)r=r-αq /*AXPY*/
15)q=M-1r /*向量内积*/
16)q=rTq /*向量内积*/
17)error=rTr /*向量内积*/
18)}
19)β=ρ/ρold
20)#pragmaompparallelfornowait{p=q+βp} /*AXPY*/
21)#pragmaompsingle{MPI_Allgather(error);
22) If(error<tolerance)break}
23)} /*结束for循环和OpenMP多线程计算*/
(3)各计算节点的计算结果归约后得到最终计算结果。
并行计算时,首先MPI进程启动,对问题进行多进程分解,开始节点间的并行,每个MPI进程被分配到一个计算节点上,进程间使用消息传递交换信息;然后在每个MPI进程中,使用OpenMP制导指令创建一组线程,并分配到计算节点的不同处理器上并行执行。
2.如权利要求1所述的针对SMP集群系统采用MPI和OpenMP混合并行提高计算速度的方法,其特征在于:所述网格划分软件可为Metis或ParMetis。
3.如权利要求1所述的针对SMP集群系统采用MPI和OpenMP混合并行提高计算速度的方法,其特征在于:开启MPI多进程计算和OpenMP多线程计算后,能够针对多核SMP集群多核、多节点的硬件资源特性,实现计算节点间和计算节点内的两级并行。
4.如权利要求1所述的针对SMP集群系统采用MPI和OpenMP混合并行提高计算速度的方法,其特征在于:并行计算执行过程中,计算节点间(即进程间)通过MPI消息传递方式通信数据,在计算节点内(即进程内)通过OpenMP线程组的共享内存方式实现数据共享
5.如权利要求1所述的针对SMP集群系统采用MPI和OpenMP混合并行提高计算速度的方法,其特征在于:每一子稀疏矩阵的存储格式为CSR。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州中国科学院软件应用技术研究所,未经广州中国科学院软件应用技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310442102.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:应用软件升级回滚方法、装置及电子设备
- 下一篇:一种实现动画效果的方法及系统