高性能并行计算

高性能并行计算

ID:47648969

大小:184.00 KB

页数:13页

时间:2019-10-16

高性能并行计算_第1页
高性能并行计算_第2页
高性能并行计算_第3页
高性能并行计算_第4页
高性能并行计算_第5页
资源描述:

《高性能并行计算》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、cannon.f%1^%1^%1^•^»T*rTwrTwrTwrTw^nrY»rT»

2、rIda,ldb,ldc,m,n,k,rowcomm,colcomm,iw(*)reala(lda,*),b(ldb,*),c(ldc,*),w(*)*integerlma,lka,lkb,lnb,lmc,Inc,ldw,ldwl*integernr,nc,rid,cid,ierr,res,arect,brect,nrbintegerroot,north,south,sta(mpi_status_size),i*callmpi_comm_size(colcomm,nr,ierr)callmpi_comm_rank(colcomm,rid,ierr)callmpi_comm_siz

3、e(rowcomm,nc,ierr)callmpi_comm_rank(rowcomm,cid,ierr)*lma=m/nrres=mod(m,nr)if(rid」t・res)lma=lma+1*lka=k/ncres=mod(k,nc)if(cid.It.res)lka=lka+1*lkb=Wnrres=mod(k,nr)if(rid.It.res)lkb=lkb+1*Inc=n/ncres=mod(n,nc)讦(cid」t.res)Inc=Inc+1lmc=lmalnb=Incldw=lma+1callmpi_allgather(lkb,1,mpi_integer,iw,1,

4、mpi_integer,&colcomm,ierr)nrb=iw(l)ldwl=ldbif(nF.ne.nc)returncallmpirect(Ida,lma,nrb,arect)callmpi_type_commit(arect,ierr)callmpirect(ldb,nrb,lnb,brect)callmpi_type_commit(brect,ierr)callwrapinita(a,Ida,lma,lka,rid,cid,nr,nc)callwrapinitb(b,ldb,lkb,lnb,rid,cid,nr,nc)callzeroc(c,ldc,lmc,Inc)no

5、rth=mod(nr+rid-1,nr)south=mod(rid+1,nr)root=0do100i=0,nr-1root=mod(rid+i,nr)callmcopy(a,Ida,w,ldw,lma,lka)callmpi_bcast(w,1,arect,root,rowcomm,ierr)k=root+1callsgemm(w,ldw,b,ldb,c,ldc,lma,iw(k),Inc)c=c+a*bif(i」t.nr-i)thencallmpi_sendrecv(b,1,brect,north,1,w,1,brect,&south,1、colcomm,sta,ierr)k

6、=mod(root+1,nr)+1callmcopy(w,ldwl,b,ldb,iw(k),lnb)endif100continuecallmpi_type_free(arect,ierr)callmpi_type_free(brect,ieiT)returnenddatamove.fprogrammainimplicitnoneinclude'mpif.h'*integercomm,np,iamintegerierrintegerm,n,sta(mpi_status_size),front,next*callmpibegin(comm,np,iam)print*「Hellowo

7、rld!onProc.iamfront=mod(iam-1+np,np)next=mod(iam+1,np)*easelm=iamgoto20if(mod(iam,2).eq.0・and.inm.ne.np・l)thencallmpi_recv(n,1,mpi_integer,iam+1,1,comm,sta,ierr)elseif(mod(iam,2).ne.0・and・iam.ne.0)thencallmpi_send(m,1,mpi_integer,iam-1,1,com

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。