[发明专利]面向多核CPU集群系统的水声传播模型混合并行方法有效

专利信息
申请号: 202110983335.X 申请日: 2021-08-25
公开(公告)号: CN113687948B 公开(公告)日: 2023-08-08
发明(设计)人: 蓝强;马树青;颜冰;朱勋江;肖汶斌;刘巍;程兴华;王勇献;王文珂;张理论 申请(专利权)人: 中国人民解放军国防科技大学
主分类号: G06F9/50 分类号: G06F9/50
代理公司: 北京天盾知识产权代理有限公司 11421 代理人: 周敏云
地址: 410005 湖南省长沙市*** 国省代码: 湖南;43
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 面向 多核 cpu 集群 系统 传播 模型 混合 并行 方法
【权利要求书】:

1.一种面向多核CPU集群系统的水声传播模型混合并行方法,其特征在于,包括如下步骤:

步骤1,为混合并行模块设计输入配置文件,定义配置文件的要素与格式,包括水声传播模型的环境输入文件的路径,拟采用的水声模型,需要计算的模型输入文件总数以及水声模型的环境输入文件名称信息;设计混合并行模块的输入配置文件,采用文本文件保存输入信息,根据混合并行模块的功能,定义配置文件需包含的要素;根据输入配置文件的要素,定义输入配置文件的格式;

步骤2,设计水声传播模型处理多个环境输入文件的串行程序框架,解析配置文件,编写主循环处理各个环境输入文件对应的声场计算任务;设计水声传播模型处理多个环境输入文件的串行框架,通过解析配置文件,读取使用的水声模型M,读取需要处理的环境输入文件总数N以及读取这些环境输入文件的名称,保存在字符串数组中;编写主循环处理各个环境输入文件对应的声场计算任务,主循环的次数为需要处理的环境输入文件总数,循环内调用所需的水声传播模型,并根据循环id以及环境文件的路径,读取相应的环境输入文件名,并作为水声传播模型的输入,进行水声传播计算;

步骤3,节点间的任务划分,针对待处理的输入文件任务总数,通过MPI并行方式进行节点间任务划分;基于步骤2中的串行处理循环,面向集群硬件系统,设计多节点并行策略,对调用水声传播模型计算的主循环,根据循环次数循环环境输入文件总数N以及集群节点个数P,进行任务划分;根据任务划分结果,得到每个节点需处理的循环次数,采用MPI并行编程模型,根据每个MPI进程的id号,获取每个节点需处理循环的起始位置;

步骤4,针对每个节点内的任务,采用OpenMP多核并行方式,实现节点内的多核并行处理;针对每个节点内的计算任务,面向节点内的多核CPU,设计多核并行策略,将并行应用在每个MPI进程负责处理的子循环中;采用OpenMP并行编程模型,分析并行区域中使用的变量属性,确定各变量是私有属性还是共享属性,并在编译指导语句中注明共享变量以及私有变量。

2.根据权利要求1所述的一种面向多核CPU集群系统的水声传播模型混合并行方法,其特征在于,所述步骤1中,定义配置文件需包含的要素包括:

1)水声传播模型的环境输入文件的绝对路径,为字符串类型;

2)拟采用的水声模型,用数字表示;

3)需要计算的模型输入文件总数,用数字表示;

4)水声模型的环境输入文件名称,为字符串类型。

3.根据权利要求1所述的一种面向多核CPU集群系统的水声传播模型混合并行方法,其特征在于,所述步骤1中,定义输入配置文件的格式是指,定义输入配置文件中各要素信息的格式,包括位于输入配置文件中第一行信息的水声传播模型的环境输入文件的路径,位于输入配置文件中第二行中的拟采用的水声模型名称,位于输入配置文件中第三行的需要计算的模型输入文件总数,位于输入配置文件中第四行的水声模型的环境输入文件名称。

4.根据权利要求1所述的一种面向多核CPU集群系统的水声传播模型混合并行方法,其特征在于,所述步骤3中,在任务划分时,以任务划分保持负载的均衡为标准,对于环境输入文件总数N不能整除集群节点个数P的情况,每个进程分得的任务数按向上取整的原则。

5.根据权利要求1所述的一种面向多核CPU集群系统的水声传播模型混合并行方法,其特征在于,所述步骤3是根据每个MPI进程的id号,获取每个节点需处理循环的起始位置和结束位置,从配置文件中读取相应的环境输入文件名称到inputFilesArray数组中,读取文件名称前,需根据每个进程的起始位置,相应跳过前面的文件名称,跳过的文件总数为myrank*numPerProc,其中myrank为当前进程的id编号,numPerProc为每个进程需要处理的文件任务数。

6.根据权利要求1所述的一种面向多核CPU集群系统的水声传播模型混合并行方法,其特征在于:

所述步骤4还包括,将多核并行应用在每个MPI进程负责处理的子循环中;

所述步骤4还包括:在编译指导语句中注明共享变量以及私有变量,其中循环内用的临时变量inputFileName用来获取当前循环处理的输入环境文件,该字符串变量为私有变量,子循环标号iter也为私有变量,而对于进程编号的变量myrank,每个进程处理的文件数numPerProc以及文件总数FileNUM都为共享变量;确定各变量的属性后,通过OpenMP编译指导语句实现进程内的多核并行。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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