[发明专利]顾及负载均衡的全局型栅格空间分析并行方法在审
申请号: | 201910576511.0 | 申请日: | 2019-06-28 |
公开(公告)号: | CN110597617A | 公开(公告)日: | 2019-12-20 |
发明(设计)人: | 周琛;姜朋辉;陈振杰;李满春;程亮;李飞雪 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 32245 南京同泽专利事务所(特殊普通合伙) | 代理人: | 赵洪玉 |
地址: | 210023 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 栅格分块 并行计算 负载均衡 数据粒度 接缝线 动态任务调度 任务并行调度 并行处理 并行调度 并行节点 迭代计算 结果融合 空闲节点 实时监控 有效计算 栅格空间 二叉树 计算量 两阶段 未处理 抓取式 对栅 分块 相等 并行 融合 重复 分配 全局 分析 | ||
1.一种顾及负载均衡的全局型栅格空间分析并行方法,包括以下步骤:
步骤一、并行环境初始化,接收并行参数,所述并行参数包括并行进程数p、数据划分最大迭代次数n、迭代中划分线移动距离d和栅格分块间有效计算量相差阈值比例s;
步骤二、主进程读取源栅格数据,并将源栅格数据划分成p-1个栅格分块,划分方法如下:
步骤S201:确定栅格分块数t=p-1;
步骤S202:统计栅格数据中所有的有效栅格单元个数Nt,将整个栅格数据作为待划分区域;
步骤S203:若t=1则停止迭代计算;
步骤S204:若t为偶数,则将待划分区域沿着宽度较长的边划分成面积相等的栅格分块A和栅格分块B,分别获取栅格分块A包含的有效栅格单元个数NA和栅格分块B中包含的有效栅格单元个数NB,若|NA-NB|≤s×Nt,则执行步骤S205;否则,需要对栅格分块A和栅格分块B的接缝线位置进行调整后再执行步骤S205,具体调整过程如下:
11)当NA-NB>s×Nt时,将接缝线的位置向使得栅格分块A面积减少的方向移动d;
12)当NB-NA>s×Nt时,将接缝线的位置向使得栅格分块B面积减少的方向移动距离d;
13)重复执行步骤11)、12),直至满足|NA-NB|≤s×Nt或达到最大迭代次数n;在迭代过程中若当前划分线移动方向与上一次移动方向相反,则移动距离为d/2;
若t为奇数,则将待划分区域沿着宽度较长的边划分成栅格分块A和栅格分块B,使得两者面积比为[t/2]:([t/2]+1);分别获取栅格分块A包含的有效栅格单元个数NA和栅格分块B中包含的有效栅格单元个数NB,若|NA-([t/2]:[t/2]+1)NB|≤s×Nt,则执行步骤S205;否则,需要对栅格分块A和栅格分块B的接缝线位置进行调整后再执行步骤S205,具体调整过程如下:
21)当NA–([t/2]:[t/2]+1)NB>s×Nt时,将接缝线的位置向使得栅格分块A面积减少的方向移动距离d;
22)当([t/2]:[t/2]+1)NB–NA>s×Nt时,将接缝线的位置向使得栅格分块B面积减少的方向移动距离d;
23)重复执行步骤21)、22),直至满足|NA-([t/2]:[t/2]+1)NB|≤s×Nt或达到最大迭代次数n,则停止迭代;在迭代过程中若当前划分线移动方向与上一次移动方向相反,则移动距离为d/2;
步骤S205:若t为偶数,则令t=t/2,并分别将栅格分块A和栅格分块B作为待划分区域,重复执行步骤S203-S205;
若t为奇数,则令t=[t/2],将栅格分块A作为待划分区域,重复执行步骤S203-S205;令t=[t/2]+1,将栅格分块B作为待划分区域,重复执行步骤S203-S205;
步骤三、主进程创建目标数据集,并初始化为空;然后将p-1个栅格分块分别发送给p-1个从进程,各从进程接收然后并行处理,将处理结果写入目标数据集;
步骤四、主进程输出所述目标数据集并退出并行环境。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910576511.0/1.html,转载请声明来源钻瓜专利网。