本发明涉及服务器,更具体地说,涉及一种数据处理装置、方法、计算机程序产品、设备及介质。
背景技术:
1、当前,在应用算法对数据进行运算的过程中,通常根据算法从头到尾对数据进行运算,这样一来,如果数据量较大,会使得运算过程耗时较长,影响数据处理效率,给用户带来不好的体验。
2、综上所述,如何提高数据处理效率是目前本领域技术人员亟待解决的问题。
技术实现思路
1、本发明的目的是提供一种数据处理装置,其能在一定程度上解决如何提高数据处理效率的技术问题。本发明还提供了一种数据处理方法、计算机程序产品、电子设备及计算机可读存储介质。
2、第一方面,提供一种数据处理装置,包括目标数量个加速卡,所述目标数量大于等于2,每个加速卡均包括:
3、算法内核,用于对待处理数据进行处理,得到处理结果;将处理结果拆分为所述目标数量份子处理结果;保留一份子处理结果,并将其余子处理结果发送给全局内存;
4、与所述算法内核连接的所述全局内存,用于存储加速卡与其他加速卡所交互的子处理结果;
5、与所述全局内存连接的数据传输模块,用于从所述全局内存读取加速卡发送的子处理结果并传输至传输层,或接收所述传输层传输的其他加速卡发送的子处理结果并存入所述全局内存;
6、与所述数据传输模块连接的所述传输层,用于与其他加速卡一一对应的交互子处理结果,以对子处理结果进行处理。
7、另一方面,所述目标数量的值为2时,所述传输层包括物理层。
8、另一方面,所述目标数量大于2时,所述传输层包括第一数量个子传输层,每个所述子传输层均包括物理层和路由模块,且路由模块连接在物理层和所述数据传输模块之间;
9、所述路由模块,用于检测是否接收所连接物理层传输的子处理结果,若是,则将子处理结果发送给所述数据传输模块;若否,则通过所连接物理层,按照路由表将子处理结果转发给其他加速卡的物理层。
10、另一方面,加速卡的每个物理层至多与其他加速卡的一个物理层相连接;所述第一数量包括对运算值进行向上取整后得到的数值,所述运算值包括以2为底对所述目标数量进行解幂后得到的数值。
11、另一方面,所述算法内核包括:
12、与所述全局内存连接的数据加载模块,用于与所述全局内存交互子处理结果;
13、与所述数据加载模块连接的本地内存,用于对待处理数据、处理结果和子处理结果进行存储;
14、与所述本地内存连接的运算核,用于对待处理数据进行处理,得到处理结果;将处理结果拆分为所述目标数量份子处理结果。
15、另一方面,所述本地内存包括真双端口随机存取存储器;所述本地内存的接口为本地接口。
16、另一方面,所述全局内存包括高带宽存储器或双倍速率同步动态随机存储器;所述全局内存的接口为高级可扩展内存映射接口;
17、所述数据加载模块具有对真双端口随机存取存储器本地接口与高级可扩展内存映射接口之间的数据协议进行转换的功能。
18、另一方面,所述物理层的输入接口为高级可扩展流接口;
19、所述数据传输模块具有对高级可扩展内存映射接口与高级可扩展流接口之间的数据协议进行转换的功能。
20、另一方面,还包括:
21、与所述全局内存连接的直接内存访问引擎,用于接收控制端分配给加速卡的子目标数据,子目标数据包括按照所述目标数量将目标数据拆分后得到的数据;
22、所述数据加载模块还用于:读取所述全局内存存储的子目标数据,将子目标数据作为待处理数据写入所述本地内存。
23、另一方面,所述数据加载模块还用于:从所述本地内存中读取所述运算核最后得到的处理结果,将最后得到的处理结果存入所述全局内存;向所述控制端发送中断信号,以使所述控制端通过所述直接内存访问引擎获取最后得到的处理结果,进而使所述控制端将所有加速卡最后得到的处理结果进行合并得到所述目标数据的处理结果。
24、另一方面,所述算法内核还用于:将由所述算法内核保留的子处理结果和其他加速卡发送的子处理结果进行合并后得到的合并数据作为待处理数据。
25、另一方面,所述运算核包括傅里叶变换核、卷积核和转置模块;子目标数据包括在z方向上按照所述目标数量将目标数据拆分后得到的数据;
26、所述运算核用于:通过所述傅里叶变换核对子目标数据进行x维的傅里叶变换,通过所述转置模块对变换结果进行转置处理,通过所述傅里叶变换核对转置后数据进行y维的傅里叶变换,得到处理结果,在x方向上按照所述目标数量将处理结果进行拆分,得到第一轮的子处理结果;从所述本地内存读取第一次存储的由第一轮子处理结果得到的合并数据,通过所述傅里叶变换核对第一次合并数据进行z维的傅里叶变换,通过所述卷积核对变换结果进行卷积处理,通过所述傅里叶变换核对卷积后数据进行z维的傅里叶逆变换,得到处理结果,在z方向上按照所述目标数量将处理结果进行拆分,得到第二轮的子处理结果;从所述本地内存读取第二次存储的由第二轮子处理结果得到的合并数据,通过所述傅里叶变换核对第二次合并数据进行y维的傅里叶逆变换,通过所述转置模块对变换结果进行转置处理,通过所述傅里叶变换核对转置后数据进行x维的傅里叶逆变换,得到最后的处理结果。
27、第二方面,提供一种数据处理方法,应用于如上任一所述数据处理装置的加速卡,包括:
28、通过算法内核对待处理数据进行处理,得到处理结果;将处理结果拆分为目标数量份子处理结果;保留一份子处理结果,并将其余子处理结果发送给与所述算法内核连接的全局内存;
29、通过所述全局内存存储加速卡与其他加速卡所交互的子处理结果;
30、通过与所述全局内存连接的数据传输模块,从所述全局内存读取加速卡发送的子处理结果并传输至传输层,或接收所述传输层传输的其他加速卡发送的子处理结果并存入所述全局内存;
31、通过与所述数据传输模块连接的所述传输层,与其他加速卡一一对应的交互子处理结果,以对子处理结果进行处理;
32、其中,所述数据处理装置包括所述目标数量个加速卡,所述目标数量大于等于2。
33、第三方面,提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现如上所述数据处理方法的步骤。
34、第四方面,提供一种电子设备,包括:
35、存储器,用于存储计算机程序;
36、处理器,用于执行所述计算机程序时实现如上所述数据处理方法的步骤。
37、第五方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如上所述数据处理方法的步骤。
38、本发明提供的一种数据处理装置,包括目标数量个加速卡,目标数量大于等于2,每个加速卡均包括:算法内核,用于对待处理数据进行处理,得到处理结果;将处理结果拆分为目标数量份子处理结果;保留一份子处理结果,并将其余子处理结果发送给全局内存;与算法内核连接的全局内存,用于存储加速卡与其他加速卡所交互的子处理结果;与全局内存连接的数据传输模块,用于从全局内存读取加速卡发送的子处理结果并传输至传输层,或接收传输层传输的其他加速卡发送的子处理结果并存入全局内存;与数据传输模块连接的传输层,用于与其他加速卡一一对应的交互子处理结果,以对子处理结果进行处理。本发明的有益效果是:目标数量个加速卡组成数据处理装置,每个加速卡均设置有算法内核来对待处理数据进行处理,且将处理结果拆分为目标数量份子处理结果,这样每个加速卡仅保留一份子处理结果,通过全局内存、数据传输模块和传输层与其他加速卡一一对应的交互子处理结果,这样一来,每个加速卡均可以获取其他加速卡的一份子处理结果,所获得的所有子处理结果便可以成为新的待处理数据,最终所有的加速卡可以相互配合共同进行数据处理,换言之,本发明可以借助目标数量个加速卡并行对数据进行处理,提高了数据处理效率。本发明提供的一种数据处理方法、计算机程序产品、电子设备及计算机可读存储介质也解决了相应技术问题。
1.一种数据处理装置,其特征在于,包括目标数量个加速卡,所述目标数量大于等于2,每个加速卡均包括:
2.根据权利要求1所述的数据处理装置,其特征在于,所述目标数量的值为2时,所述传输层包括物理层。
3.根据权利要求1所述的数据处理装置,其特征在于,所述目标数量大于2时,所述传输层包括第一数量个子传输层,每个所述子传输层均包括物理层和路由模块,且路由模块连接在物理层和所述数据传输模块之间;
4.根据权利要求3所述的数据处理装置,其特征在于,加速卡的每个物理层至多与其他加速卡的一个物理层相连接;所述第一数量包括对运算值进行向上取整后得到的数值,所述运算值包括以2为底对所述目标数量进行解幂后得到的数值。
5.根据权利要求2至4任一项所述的数据处理装置,其特征在于,所述算法内核包括:
6.根据权利要求5所述的数据处理装置,其特征在于,所述本地内存包括真双端口随机存取存储器;所述本地内存的接口为本地接口。
7.根据权利要求6所述的数据处理装置,其特征在于,所述全局内存包括高带宽存储器或双倍速率同步动态随机存储器;所述全局内存的接口为高级可扩展内存映射接口;
8.根据权利要求7所述的数据处理装置,其特征在于,所述物理层的输入接口为高级可扩展流接口;
9.根据权利要求5所述的数据处理装置,其特征在于,还包括:
10.根据权利要求9所述的数据处理装置,其特征在于,所述数据加载模块还用于:从所述本地内存中读取所述运算核最后得到的处理结果,将最后得到的处理结果存入所述全局内存;向所述控制端发送中断信号,以使所述控制端通过所述直接内存访问引擎获取最后得到的处理结果,进而使所述控制端将所有加速卡最后得到的处理结果进行合并得到所述目标数据的处理结果。
11.根据权利要求9所述的数据处理装置,其特征在于,所述算法内核还用于:将由所述算法内核保留的子处理结果和其他加速卡发送的子处理结果进行合并后得到的合并数据作为待处理数据。
12.根据权利要求11所述的数据处理装置,其特征在于,所述运算核包括傅里叶变换核、卷积核和转置模块;子目标数据包括在z方向上按照所述目标数量将目标数据拆分后得到的数据;
13.一种数据处理方法,其特征在于,应用于如权利要求1至12任一项所述数据处理装置的加速卡,包括:
14.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求13所述数据处理方法的步骤。
15.一种电子设备,其特征在于,包括:
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求13所述数据处理方法的步骤。
