一种多处理卡间的数据传输方法与流程

文档序号:36541879发布日期:2023-12-30 00:56阅读:23来源:国知局
一种多处理卡间的数据传输方法与流程

本说明书涉及计算机,特别涉及一种多处理器或多处理卡间的数据传输方法。


背景技术:

1、多处理器设备是指一台包含多个处理器的处理设备。每个处理器均具有数据运算的能力,之间可以进行数据交换,由统一的操作系统管理,可以共享i/o设备、磁盘等外设。一般来说,在多处理器设备中多个处理器位于同一主板上,主板上布设线路以及开设有插槽,处理器以板卡形式卡接在插槽上,因此,处理器又可称为处理卡。

2、多处理器设备相比单处理器设备具有更加强劲的数据运算能力,一般用作工业级计算设备,实现大数据计算。在大数据计算场景中,多处理器之间需要进行频繁、大量的数据交换,如何优化处理器之间的数据传输,成为亟待解决的问题。


技术实现思路

1、本说明书一个或多个实施例提供一种多处理卡间的数据传输方法,所述多处理卡间的数据传输方法包括:通过数据传输客户端接收应用进程的调用进而向数据传输服务进程发起卡间数据传输请求,卡间数据传输请求包括目标地址和源地址,目标地址和源地址对应不同的处理卡;通过数据传输服务进程从源地址对应的第一处理卡到目标地址对应的第二处理卡之间的两条以上通道中选择一条以上的目标通道,并将目标通道标识返回给数据传输客户端;通过数据传输客户端基于目标通道的数量和待传输数据得到待传输数据的一个以上数据子集;通过数据传输客户端基于一个以上数据子集,向与目标通道相关的处理卡上的传输进程发起数据传输指令;通过与目标通道相关的处理卡上的传输进程将相应数据子集进行传输,进而将待传输数据传输至目标地址。

2、本说明书一个或多个实施例提供一种多处理卡间的数据传输系统,所述多处理卡间的数据传输系统包括:数据传输客户端,由应用进程调用进而向数据传输服务端发起卡间数据传输请求,卡间数据传输请求包括目标地址和源地址,目标地址和源地址对应不同的处理卡;数据传输服务端,用于响应卡间数据传输请求,从源地址对应的第一处理卡到目标地址对应的第二处理卡之间的两条以上通道中选择一条以上的目标通道,并将目标通道标识返回给数据传输客户端;数据传输客户端还用于基于目标通道的数量和待传输数据得到待传输数据的一个以上数据子集,以及基于一个以上数据子集,向与目标通道相关的处理卡上的传输模块发起数据传输指令;传输模块,用于响应数据传输指令,对相应数据子集进行传输,进而将待传输数据传输至目标地址。

3、本说明书一个或多个实施例提供一种存储介质,用于存储计算机指令,当所述计算机指令中的至少一部分被处理器或处理卡执行时,实现前述多处理卡间的数据传输方法。

4、本说明书一个或多个实施例提供一种装置,包括多个处理卡以及存储介质,多个处理卡之间具有直连通道和/或间接通道,间接通道包括两跳以上的直连通道,所述存储介质存储有计算机指令,多个处理卡用于执行计算机指令以实现前述多处理卡间的数据传输方法。

5、本说明书一个或多个实施例提供一种多处理卡间的数据传输方法,多处理卡之间具有直连通道和/或间接通道;所述方法包括:接收卡间数据传输请求;所述卡间数据传输请求包括目标地址以及源地址,目标地址和源地址对应不同的处理卡;确定从源地址对应的第一处理卡到目标地址对应的第二处理卡之间的两条以上通道;获取所述两条以上通道中每一条的权重值;所述权重值与通道的数据传输带宽正相关,与通道的观测负载量负相关;基于权重值,从所述两条以上通道中选出一条以上的目标通道,用于传输待传输数据。



技术特征:

1.一种多处理卡间的数据传输方法,多处理卡之间具有直连通道和间接通道,间接通道包括两跳以上的直连通道;所述多处理卡位于同一处理设备的主板上;所述方法包括:

2.如权利要求1所述的方法,所述方法还包括,所述一个以上数据子集各自具有不同的数据量,数据量较大的数据子集通过数据传输带宽较大的通道进行传输。

3.如权利要求1所述的方法,所述待传输数据包括应用进程计算得到的计算结果。

4.如权利要求1所述的方法,为了从所述两条以上通道中选出一条以上的目标通道,所述方法还包括:

5.如权利要求1所述的方法,所述数据子集与目标通道一一对应;所述卡间数据传输请求还包括待传输数据的存储区域相对所述源地址的偏移量;所述方法还包括:

6.如权利要求1或5所述的方法,当目标通道为间接通道时,通过数据传输客户端向与目标通道相关的处理卡上的传输进程发起数据传输指令,包括:

7.如权利要求6所述的方法,对于目标通道上的中转处理卡,为了传输数据子集,其传输进程用于:将对应的数据子集缓存在全局存储区域或者该传输进程的临时存储区域中,其中,当所述临时存储区域的空闲量大于设定阈值时,将数据子集缓存在临时存储区域中,否则将数据子集缓存在所述全局存储区域中。

8.如权利要求7所述的方法,所述中转处理卡的传输进程还用于:

9.如权利要求8所述的方法,在所述两个以上任务中,当某一任务将数据读取到相应的缓冲区域后,另一任务开始执行。

10.一种存储介质,用于存储计算机指令,当所述计算机指令中的至少一部分被处理器或处理卡执行时,实现如权利要求1~9任一项所述的方法。

11.一种计算机装置,包括多个处理卡以及存储介质,多个处理卡之间具有直连通道和间接通道,间接通道包括两跳以上的直连通道,所述存储介质存储有计算机指令,多个处理卡用于执行计算机指令以实现如权利要求1~9任一项所述的方法。


技术总结
本说明书实施例提供一种多处理卡间的数据传输方法,多处理卡之间具有直连通道和间接通道,间接通道包括两跳以上的直连通道;多处理卡位于同一处理设备的主板上;该方法包括:接收卡间数据传输请求;确定从源地址对应的第一处理卡到目标地址对应的第二处理卡之间的两条以上通道;从两条以上通道中选出一条以上的目标通道,用于传输待传输数据;基于目标通道的数量和待传输数据得到待传输数据的一个以上数据子集,一个以上数据子集通过一个以上的目标通道进行传输;基于一个以上数据子集,向与目标通道相关的处理卡发起数据传输指令,通过与目标通道相关的处理卡将相应数据子集进行传输,进而将待传输数据传输至目标地址。

技术研发人员:赵军平,梅晓峰,赵守仁
受保护的技术使用者:支付宝(杭州)信息技术有限公司
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1