[发明专利]一种MPI消息通信算法的优化方法、装置、设备及可读介质在审
申请号: | 202011551511.4 | 申请日: | 2020-12-24 |
公开(公告)号: | CN112738055A | 公开(公告)日: | 2021-04-30 |
发明(设计)人: | 李龙翔;刘羽;崔坤磊;张敏 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/24 |
代理公司: | 北京连和连知识产权代理有限公司 11278 | 代理人: | 刘小峰;宋薇薇 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 mpi 消息 通信 算法 优化 方法 装置 设备 可读 介质 | ||
本发明公开了一种MPI消息通信算法的优化方法,包括以下步骤:获取并行应用程序调用的若干MPI函数,并将MPI函数使用的若干通信算法进行编号;基于若干通信算法的编号生成状态向量,将状态向量的变化作为动作集以构建动作价值函数;将应用程序单步运行速度作为奖励,通过强化学习算法基于奖励对动作价值函数进行迭代计算,以得到收敛后的最优结果;以及根据最优结果映射对应的通信算法作为最优通信算法,并基于最优通信算法调用底层基本通信模块进行交互。本发明还公开了对应的优化装置、计算机设备和可读存储介质。本发明将MPI函数通信算法的优化转换为强化学习的训练,实现为不同MPI函数选取最优的通信算法,缩短消息传输时间,提高并行计算效率。
技术领域
本发明涉及通信技术领域,尤其涉及一种MPI消息通信算法的优化方法、装置、设备及可读介质。
背景技术
MPI(Message Passing Interface,消息传递接口)自20世纪90年代以来一直是HPC(High Performance Computing,高性能计算)领域并行应用程序开发的底层基础标准。消息传递模型指应用程序通过在进程间传递消息来完成某些任务,这些消息可以理解为带有一些信息和数据的一个数据结构。消息传递模型假设底层的消息传递单元是一组处理器,每个处理器都有自己的本地内存,并且通过互联网络实现与其他处理器的消息传递。MPI标准一直是最流行的并行编程消息传递规范,这种接口实现广泛应用于分布式内存系统和高性能集群上软件的运行过程。在基于MPI编写的并行程序中,MPI通信性能通常对程序整体并行效率和跨节点扩展性起着关键作用。
近年来,随着高性能计算在不同领域应用越来越广泛,求解问题计算量呈指数增加,使用MPI的并行应用程序运行时需要节点数也越来越大,此时MPI通信逐渐成为软件运行时主要瓶颈,亟待针对不同并行应用特点对MPI消息传递过程进行优化。
MPI通信模式可大致分为点对点通信和集合通信两种,其中点对点通信表示两个进程间进行消息通信,集合通信表示所有进程间进行消息广播或归约等操作,其中又可分为一对多,多对一,和多对多等不同通信类型。为了最大程度提高消息通信效率,在不同MPI函数中,如broadcast、scatter、gather、reduce、all-reduce、all-gather等,各自采用了多种算法实现。例如在all-reduce函数中,经典的通信算法包括Reduce broadcast算法、Recursive doubling算法、Ring all-reduce算法。在实际运行过程中,不同算法通信模式、通信次数、以及对网络带宽等需求各不相同。在实际运行过程中会受多种因素影响,包括MPI消息发送次数,传输消息块的大小,以及节点网络带宽大小等。在运行包含MPI的应用程序过程中,为了提高运行速度并且提高最大并行计算规模,需要尽量减少MPI通信占用时间,因此如何根据实际通信模式对MPI通信算法进行选取成为影响应用运行性能,提交集群使用效率。
现有技术中,为了合理地为不同MPI函数选取合适的通信算法,一些MPI软件采用静态方法来进行自动判断。例如,在开源软件OpenMPI,主要是根据通信算法理论性能推导获得的,其假设各个进程运行在计算能力完全相同的核心上,并且各个进程间通信带宽和延迟基本一致。在程序实际运行过程中,由于现代服务器大部分使用NUMA架构,在CPU内与Socket间的通信延迟与带宽都不完全相同,另外当存在跨节点消息通信时,网络延迟与带宽还与集群的网络拓扑有关。这些实际问题使得静态方法常常不能真实估计不同通信算法实际运行时间大小,对于最优通信算法需要实际测试才能最终确定。在Intel MPI等商业软件中,提供了MPI参数调优工具mpitune等。其主要工作原理是通过运行基准MPI测试程序或者MPI应用程序,通过调整运行时不同MPI函数通信算法及其参数,利用枚举方法最终获得不同MPI函数的最优算法及其对应参数。这种方法虽然能够结合应用实际环境对MPI参数进行选取,但是由于不同MPI函数可使用的算法众多,在进行参数调优时需要应用程序运行多次才能获得最终结果。当应用程序运行时间过长时,此参数调优过程会浪费大量集群运行时间进行调试。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011551511.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于摩擦纳米发电的自行车尾灯
- 下一篇:缓冲型旋钮折叠式跑步机