[发明专利]一种GPU通信方法、设备以及介质有效
申请号: | 202010602573.7 | 申请日: | 2020-06-29 |
公开(公告)号: | CN111858454B | 公开(公告)日: | 2022-11-22 |
发明(设计)人: | 罗建刚 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F15/163 | 分类号: | G06F15/163 |
代理公司: | 北京连和连知识产权代理有限公司 11278 | 代理人: | 陈黎明;张腾 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 gpu 通信 方法 设备 以及 介质 | ||
本发明公开了一种GPU通信方法,包括以下步骤:使每一个GPU针对各自的第一个待传输的数据块执行reduce操作,以使所述每一个GPU得到中间数据块;对所述每一个GPU上的所述中间数据块执行压缩操作;对所述每一个GPU执行allgather操作,以使所述每一个GPU分别向其他所有GPU发送自身的所述中间数据块;对所述每一个GPU接收到的若干个所述中间数据块和自身的所述中间数据块执行解压操作。本发明还公开了一种系统、计算机设备以及可读存储介质。本发明提出的方案以环形通信为基础,采用了数据压缩的方法,减少了传输时数据量,提升了传输带宽。
技术领域
本发明涉及GPU领域,具体涉及一种GPU通信方法、设备以及存储介质。
背景技术
深度学习的大规模数据并行训练带来了越来越大的时间开销,在高速传输网络,硬件成本高昂的情况下,如何合理高效的利用低速网络传输也是我们要解决的问题。低速网络的低传输效率,已经逐渐成为了神经网络大规模训练的瓶颈。
环形通信算法是GPU通信的常用方法,常在数据量较大时使用环形通信算法,其可以有效的利用pipeline技术,在多GPU上有良好的扩展性。但是在低速网络的限制下,例如在部分PCIE连接下,其传输速度仅有7.5GB/s左右,这已经逐渐成为了GPU计算的瓶颈。
发明内容
有鉴于此,为了克服上述问题的至少一个方面,本发明实施例提出一种GPU通信方法,包括以下步骤:
使每一个GPU针对各自的第一个待传输的数据块执行reduce操作,以使所述每一个GPU得到中间数据块;
对所述每一个GPU上的所述中间数据块执行压缩操作;
对所述每一个GPU执行allgather操作,以使所述每一个GPU分别向其他所有GPU发送自身的所述中间数据块;
对所述每一个GPU接收到的若干个所述中间数据块和自身的所述中间数据块执行解压操作。
在一些实施例中,还包括:
在使所述每一个GPU针对各自的所述第一个待传输的数据块执行所述解压操作的同时,使所述每一个GPU针对各自的第二个待传输的数据块开始依次执行所述reduce操作、所述压缩操作、所述allgather操作以及所述解压操作。
在一些实施例中,还包括:
在使所述每一个GPU针对各自的所述第一个待传输的数据块执行所述压缩操作后,使所述每一个GPU针对各自的第三个待传输的数据块开始依次执行所述reduce操作、所述压缩操作、所述allgather操作以及所述解压操作。
在一些实施例中,还包括:所述每一个GPU针对各自的所述第二个待传输的数据块执行所述压缩操作的同时执行所述每一个GPU针对各自的所述第三个待传输的数据块的所述allgather操作。
在一些实施例中,还包括:所述每一个GPU针对各自的所述第一个待传输的数据块执行所述allgather操作的同时执行所述每一个GPU针对各自的所述第三个待传输的数据块的所述压缩操作。
在一些实施例中,还包括:
在使所述每一个GPU针对各自的所述第三个待传输的数据块进行所述解压操作的同时,使所述每一个GPU针对各自的第四个待传输的数据块开始依次执行所述reduce操作、所述压缩操作、所述allgather操作以及所述解压操作。
在一些实施例中,还包括:所述每一个GPU针对各自的所述第二个待传输的数据块执行所述allgather操作的同时执行所述每一个GPU针对各自的所述第四待传输的数据块的所述压缩操作。
在一些实施例中,所述reduce操作包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010602573.7/2.html,转载请声明来源钻瓜专利网。