[发明专利]一种适用于大规模分布式水文模拟的并行方法有效
申请号: | 201910116373.8 | 申请日: | 2019-02-13 |
公开(公告)号: | CN109918740B | 公开(公告)日: | 2020-10-02 |
发明(设计)人: | 吴佳豪;胡长军;储根深;李扬;吴彦飞 | 申请(专利权)人: | 北京科技大学 |
主分类号: | G06F30/20 | 分类号: | G06F30/20;G06F113/08 |
代理公司: | 北京市广友专利事务所有限责任公司 11237 | 代理人: | 张仲波 |
地址: | 100083*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 适用于 大规模 分布式 水文 模拟 并行 方法 | ||
1.一种适用于大规模分布式水文模拟的并行方法,其特征在于,包括:
获取待模拟流域,其中,所述待模拟流域包括:多个子流域;
采用时空离散并行策略,在空间上对所述待模拟流域的各个子流域进行静态任务划分,将所述待模拟流域的多个子流域的水文模拟任务分配到多个处理器核上并行执行;
其中,单个子流域在某个模拟时刻的水文模拟计算过程作为并行化执行的任务单元;静态任务划分下,单个处理器核上的进程用于执行被分配到本进程上的所有子流域在所有时刻上的水文模拟任务,进程间采用非阻塞通信方式传递数据;
其中,所述单个处理器核上的进程用于执行被分配到本进程上的所有子流域在所有时刻上的水文模拟任务包括:
A11,根据任务分配结果,读取分配到本进程上的子流域在进行水文模拟任务时所需要的输入数据;
A12,初始化消息接收池、消息发送池、汇流数据容器和各个子流域当前模拟时刻,其中,每个子流域对应一个汇流数据容器;
A13,基于进程间点对点非阻塞通信,使用消息接收池中的所有空闲载体监听接收汇流数据;
A14,将接收到的所有汇流数据存入相应的子流域的汇流数据容器;
A15,遍历本进程上的所有子流域的汇流数据容器,获取在当前模拟时刻下已满足计算依赖的可执行子流域;
A16,执行可执行子流域在当前模拟时刻的水文模拟任务,得到该可执行子流域在当前模拟时刻要传递给下游子流域的汇流数据;
A17,基于进程间点对点非阻塞通信,使用消息发送池中的所有空闲载体监听发送要传递给下游子流域的汇流数据;
A18,将该可执行子流域的当前模拟时刻自增一;
A19,判断本进程上的所有子流域是否都已完成了预设个模拟时刻的水文模拟任务;若都已完成,保存本进程上所有子流域在所有时刻的水文模拟计算结果;否则,返回步骤A13继续执行。
2.根据权利要求1所述的适用于大规模分布式水文模拟的并行方法,其特征在于,在静态任务划分下,各个进程采用对等模式执行被分配到本进程上的所有子流域在所有时刻上的水文模拟任务。
3.根据权利要求1所述的适用于大规模分布式水文模拟的并行方法,其特征在于,所述初始化消息接收池、消息发送池、汇流数据容器和各个子流域当前模拟时刻包括:
初始化一个含有空闲载体的消息接收池和一个含有空闲载体的消息发送池;
为本进程上的所有子流域各初始化一个以模拟时刻Tj为关键字的字典形式的汇流数据容器,所述汇流数据容器用于保存从直接上游子流域在不同时刻发送过来的汇流数据;
将分配到本进程上的所有子流域的当前模拟时刻Tj置为第一预设值。
4.根据权利要求1所述的适用于大规模分布式水文模拟的并行方法,其特征在于,所述基于进程间点对点非阻塞通信,使用消息接收池中的所有空闲载体监听接收汇流数据包括:
选取消息接收池中所有的空闲载体,使用该些空闲载体作为调用非阻塞点对点接收函数的数据缓存区来监听接收其它进程发送过来的汇流数据,同时将这些载体的状态设置为非空闲。
5.根据权利要求1所述的适用于大规模分布式水文模拟的并行方法,其特征在于,所述将接收到的所有汇流数据存入相应的子流域的汇流数据容器包括:
遍历消息接收池中的所有非空闲载体,判断上次使用该载体进行的非阻塞通信数据接收操作是否已经完成;
若已完成,则说明该载体已接收到有效汇流数据;
解析所有接收的有效汇流数据,依次存入相应子流域的汇流数据容器的相应模拟时刻的汇流数据块中;
将这些接收到有效汇流数据的载体的状态重新置为空闲;
其中,汇流数据容器中保存的每个汇流数据块由2个字段组成,第一字段用于标识本汇流数据容器所对应的子流域有几个直接上游子流域还未将当前模拟时刻的汇流数据传递过来;第二字段用于标识本汇流数据容器所对应的子流域的直接上游子流域已传递过来的当前模拟时刻的汇流数据的加和。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京科技大学,未经北京科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910116373.8/1.html,转载请声明来源钻瓜专利网。