[发明专利]SOR的并行通信优化方法无效

专利信息
申请号: 200810239582.3 申请日: 2008-12-12
公开(公告)号: CN101430654A 公开(公告)日: 2009-05-13
发明(设计)人: 胡长军;李建江;赵冲冲;张继林 申请(专利权)人: 北京科技大学
主分类号: G06F9/46 分类号: G06F9/46;G06F17/13
代理公司: 暂无信息 代理人: 暂无信息
地址: 100083*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: sor 并行 通信 优化 方法
【权利要求书】:

1、SOR的并行通信优化方法,其特征在于:优化方法分为两个阶段顺序进行,包括串行执行阶段和并行执行阶段;将1维空间网格点和1维时间点组成1+1维的迭代空间网格系统Snode_space(Z,T),Z为一维的网格空间,T表示时间空间;其中网格点Pnode定义为:Pnode(x,t)={ux(t)|(x∈Z,t∈T)},x表示一维网格点,t表示时间维,ux(t)表示1+1维迭代空间内的网格点;

第一阶段:串行执行阶段

步骤1.网格块划分

用区域分解方法将网格区域Snode_space(Z,T)在T=0处进行等份划分,划分后使得每块网格Sub_Snode_space(m,t=0)中的网格点数为R,1≤m≤L,m表示t=0时的第m个网格块,L为t=0时的总块数,R满足R>2K,K为单向迭代次数,K的值为cache大小的一半;

步骤2.在网格块的基础上,沿时间轴对网格区域进行划分

划分方法采用时滞技术,对每层网格子区域修正其边界,修正方法描述如下:

a)对于奇数K层循环中的第一个网格块:

Sub_Snode_space(m=1,t=k)=Sub_Snode_space(m=1,t=k-1)-Pynode(m,k-1),其中,Pynode(m,k-1)为第m个网格块在第k-1次迭代时间步的右边界点;

b)对于奇数K层循环中的最后一个网格块,即第L个网格块:Sub_Snode_space(m=L,t=k)=Sub_Snode_space(m=L,t=k-1)+Pynode(m-1,k-1),其中,Pynode(m-1,k-1)为第m-1个网格块在第k-1次迭代时间步的右边界点;

c)对于奇数K层循环中的除第一个和最后一个网格块外的其他网格块:Sub_Snode_space(m,t=k)=Sub_Snode_space(m,t=k-1)+Pynode(m-1,k-1)-Pynode(m,k-1);

d)对于偶数K层循环中的最后一个,即第L个网格块:Sub_Snode_space(m=L,t=k)=Sub_Snode_space(m=L,t=k-1)-Pznode(m,k-1),其中,Pznode(m,k-1)为第m个网格块在第k-1次迭代时间步的左边界点;

e)对于偶数K层循环中的第一个网格块:Sub_Snode_space(m=1,t=k)=Sub_Snode_space(m=1,t=k-1)+Pznode(m+1,k-1),其中,Pznode(m+1,k-1)为第m个网格块在第k-1次迭代时间步的左边界点;

f)对于偶数K层循环中的除第一个和最后一个网格块外的其他网格块:Sub_Snode_space(m,t=k)=Sub_Snode_space(m,t=k-1)+Pznode(m+1,k-1)-Pznode(m,k-1);

以上修正中,1≤k≤K;

边界修正后,在奇数K次迭代中,网格块和相应的边界点组成了下层空间网格条块b_tile1~b_tileL,在偶数K次迭代中,网格块和相应的边界点组成了上层网格条块t_tile1~t_tileL;

步骤3.按空间网格条块顺序执行SOR方法

网格条块生成后,按条块顺序执行,以条块内部网格点层作为内部执行序,条块序作为外部执行序,其执行顺序描述如下:

对于奇数K层循环中,依次执行块b_tile1~b_tileL,每个块内,按时间步顺序执行,每个时间步是按照从左到右的顺序进行计算;

对于偶数K层循环中,依次执行块t_tile1~t_tileL,每个块内,按时间步顺序执行,每个时间步是按照从右到左的顺序进行计算;

第二阶段,并行执行实现步骤描述如下:

步骤4.依据处理器数目q,将空间计算区域划分为q个子空间sub_domain;第一块子空间的大小和最后一块子区域的大小通过添加和减少K/2个数据进行修正,其它子区域的大小为n/q;

步骤5.该方法分奇数和偶数K次迭代,并且奇数K次迭代与偶数K次迭代执行方向相反;

步骤6.各子区域通过时间轴进行划分,同步骤2执行;

步骤7.对网格条块重新排序:

根据多色排序方法将所有的网格块进行重新排序,相邻的网格块使用不同颜色,并对相同颜色使用连续的数字标示;

步骤8.以网格条块为单位执行奇数K次迭代数据更新:

首先,执行奇数K次迭代更新,更新所有sub_domain中的“发送条块”,以及第一个条块;然后,将边界数据发送给相邻sub_domain的“接收条块”;最后,更新所有sub_domain中的“接收条块”,以及最后一个条块;

步骤9.以网格条块为单位执行偶数K次迭代数据更新:

首先,执行偶数K次迭代更新,更新所有sub_domain中的“发送条块”,以及最后一个条块;然后,将边界数据发送给相邻sub_domain的“接收条块”;最后,更新所有sub_domain中的“接收条块”,以及第一个条块。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京科技大学,未经北京科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200810239582.3/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top