买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种面向自适应解耦方程的动态负载平衡并行计算方法_上海交通大学四川研究院_202410054454.0 

申请/专利权人:上海交通大学四川研究院

申请日:2024-01-15

公开(公告)日:2024-04-02

公开(公告)号:CN117573375B

主分类号:G06F9/50

分类号:G06F9/50;G06F9/54

优先权:

专利状态码:有效-授权

法律状态:2024.04.02#授权;2024.03.08#实质审查的生效;2024.02.20#公开

摘要:本发明公开了一种面向自适应解耦方程的动态负载平衡并行计算方法,在动态数据转移方案的基础上,提出一种面向自适应解耦NS方程负载不平衡问题的、基于MPI+OpenMP混合并行的、更加灵活高效的动态负载平衡算法。解决现有负载平衡方法未充分利用线程级并行的共享内存优势、负载平衡算法较为复杂、数据转移开销较大的技术问题,更加灵活高效地实现动态负载平衡,减少程序阻塞时间,提升计算效率加速计算。

主权项:1.一种面向自适应解耦方程的动态负载平衡并行计算方法,其特征在于,包括如下步骤:S1、获取每个进程的负载并判断负载不平衡度,所述负载为每个进程的所有网格的化学反应迭代步数之和,其中,负载不平衡度具体计算方式为: 式中,为负载不平衡度,为各进程中负载的最大值,为各进程负载的平均值;当所述负载不平衡度大于平衡阈值时则开启动态负载平衡算法;S2、生成化学反应迭代步数转移列表得到发送进程-接收进程-转移迭代步数,并生成网格转移列表将转移迭代步数转移至具体的网格数据,生成化学反应迭代步数转移列表的具体方式为:A1、利用优先队列将负载分为大于等于平均值的部分和小于平均值的部分;A2、基于贪婪算法,不断从大于等于平均值的部分中取出差值最大的元素和小于平均值部分中差值最小的元素进行转移,直至转移次数达到阈值,得到化学反应迭代步数转移列表;A3、将所得到的化学反应迭代步数转移列表中发送进程-接收进程-转移迭代步数进行对应;生成网格转移列表的具体方式为:B1、输入根据所得到的化学反应迭代步数转移列表,以及每个进程需要向其他进程发送的进程号;B2、遍历网格,判断发送目标进程是否为空,若是则退出循环,若不是则从第一个目标进程开始判断当前网格化学反应迭代步数是否可以加入转移网格,若可以则将当前网格及相关数据加入转移网格对应数据中,若不可以则判断下一个目标进程是否可以,优先将网格加入满足需求迭代步数的目标进程中;B3、当一个目标进程转移的化学反应迭代步数满足要求时则开始下一个目标进程,直至所有进程均转移完成得到网格转移列表;S3、发送进程将打包好的数据发送至对应的接收进程并进行解包,通过非阻塞通信在发送数据的同时进行计算操作;S4、接收进程接收到转移的数据并完成数据解包后进行转移网格化学反应式求解。

全文数据:

权利要求:

百度查询: 上海交通大学四川研究院 一种面向自适应解耦方程的动态负载平衡并行计算方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。