本公开的实施例涉及一种用于拓扑系统间直接存储访问的方法及装置、设备与介质。
背景技术:
1、计算设备经由诸如网络或高速串行总线等互联结构彼此连接。在使用多个设备进行运算或数据处理时,主机(host)主要负责流程控制、运算解析和少量的计算,大量的运算转移到计算设备(device)上运行,并且需要不同计算节点之间的计算设备直接相互交换大块数据。随着运算模式的改变,不同计算节点之间的计算设备直接相互交换数据的需求也越来越多。
技术实现思路
1、本公开至少一实施例提供一种用于拓扑系统间直接存储访问的方法,该用于拓扑系统间直接存储访问的方法包括:对第一拓扑系统中的第一处理模块进行配置以使得所述第一处理模块具有第一功能和第二功能,其中,所述第一功能包括直接存储访问,所述第二功能包括拓扑系统间地址翻译;通过在所述第一处理模块进行所述拓扑系统间地址翻译,在所述第一处理模块的直接存储访问操作中将对第一拓扑地址的访问转换为对第二拓扑地址的访问,或接收将对所述第二拓扑地址的访问进行转换得到的对所述第一拓扑地址的访问,其中,所述第一拓扑地址与在所述第一拓扑系统中的所述第一处理模块对应,所述第二拓扑地址位于第二拓扑系统中,所述第一拓扑系统和所述第二拓扑系统各自分别寻址且相互通信。
2、例如,本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法,还包括:所述第一拓扑系统和所述第二拓扑系统为两个不同的高速串行计算机扩展总线标准拓扑系统。
3、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述在所述第一处理模块进行所述拓扑系统间地址翻译,包括:在所述第一处理模块根据地址映射关系将所述第一拓扑地址翻译为所述第二拓扑地址。
4、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述第二拓扑地址与在所述第二拓扑系统中的所述第二处理模块对应,所述第一处理模块和所述第二处理模块相互通信,所述第一处理模块的所述直接存储访问操作,包括:对所述第二处理模块进行直接存储访问,以将来自所述第一处理模块的第一待处理数据写入所述第二处理模块,或者对所述第一处理模块进行直接存储访问,以将来自所述第二处理模块的第二待处理数据写入所述第一处理模块。
5、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述第一处理模块和所述第二处理模块经非透明桥互联模块相互通信,和/或所述第一处理模块和所述第二处理模块经第一链路相互通信,其中,所述第一链路包括传输介质。
6、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述第一处理模块包括第一功能单元和第二功能单元,所述第一功能单元具有第一功能,所述第二功能单元具有第二功能,所述第一功能单元包括存储装置,所述通过在所述第一处理模块进行所述拓扑系统间地址翻译,在所述第一处理模块的直接存储访问操作中将对第一拓扑地址的访问转换为对第二拓扑地址的访问,包括:从所述第一功能单元的存储装置中读取所述第一待处理数据,将所述第一待处理数据传输至所述第二功能单元,在所述第二功能单元将所述第一拓扑地址翻译为所述第二拓扑地址,基于所述第二拓扑地址,将所述第一待处理数据传输至所述第二处理模块,以对所述第二处理模块进行直接存储访问;或者,所述接收将对所述第二拓扑地址的访问进行转换得到的对所述第一拓扑地址的访问,包括:利用所述第二功能单元接收来自所述第二处理模块的所述第二待处理数据,其中,所述第二处理模块将所述第二拓扑地址翻译为所述第一拓扑地址,基于所述第一拓扑地址,将所述第二待处理数据传输至所述第一功能单元,并存储到所述第一功能单元的存储装置中。
7、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述第二功能单元包括非透明桥单元。
8、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述第一功能单元包括直接存储访问引擎,所述存储装置包括第一内存,所述第一待处理数据存储在所述第一内存中,所述将所述第一待处理数据传输至所述第二功能单元,包括:利用所述直接存储访问引擎将所述第一待处理数据从所述第一内存传输至所述第二功能单元。
9、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述将所述第一待处理数据传输至所述第二处理模块,包括:利用所述第二功能单元将所述第一待处理数据经非透明桥互联模块传输至第二处理模块;或者,所述利用所述第二功能单元接收来自所述第二处理模块的所述第二待处理数据,包括:利用所述第二功能单元经所述非透明桥互联模块接收来自第二处理模块的第二待处理数据。
10、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述第一处理模块还包括第三功能单元,所述将所述第一待处理数据传输至所述第二处理模块,包括:将所述第一待处理数据传输至所述第三功能单元,利用所述第三功能单元将所述第一待处理数据经第一链路传输至所述第二处理模块;或者,所述利用所述第二功能单元接收来自所述第二处理模块的所述第二待处理数据,包括:利用所述第三功能单元经所述第一链路接收来自所述第二处理模块的所述第二待处理数据,将所述第二待处理数据传输至所述第二功能单元。
11、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述第三功能单元包括网卡。
12、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,利用所述第二待处理数据在所述第一功能单元执行数据处理。
13、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,执行所述数据处理包括执行分布式数据整合计算。
14、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述存储装置包括第一内存和第一缓存,所述将所述第二待处理数据传输至所述第一功能单元,并存储到所述第一功能单元的存储装置中,包括:将所述第二待处理数据映射到所述第一内存和扩展地址空间中;所述利用所述第二待处理数据在所述第一功能单元执行数据处理,包括:将所述第二待处理数据缓存在所述第一缓存中,利用所述第二待处理数据执行所述数据处理。
15、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述第一功能单元包括第一寄存器,所述将所述第二待处理数据映射到所述第一内存和扩展地址空间中,包括:将所述第二待处理数据传输至所述第一缓存中,利用所述第一寄存器的映射地址空间将所述第二待处理数据映射到所述第一内存和所述扩展地址空间中。
16、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述第一处理模块还包括第四功能单元,所述将所述第二待处理数据传输至所述第一功能单元,并存储到所述第一功能单元的存储装置中,包括:启用或禁用所述第四功能单元;响应于启用所述第四功能单元,所述将所述第二待处理数据传输至所述第一功能单元,并存储到所述第一功能单元的存储装置中,还包括:将所述第二待处理数据传输至所述第四功能单元中;将所述第二待处理数据从所述第四功能单元传输至所述第一功能单元,并存储到所述存储装置中。
17、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述存储装置包括第一内存和第一缓存,所述第一功能单元包括第一寄存器,所述第四功能单元包括第二寄存器,所述第二待处理数据包括基础信息和多组计算信息,所述将所述第二待处理数据从所述第四功能单元传输至所述第一功能单元,并存储到所述存储装置中,包括:利用所述第一寄存器的映射地址空间将所述基础信息映射到所述第一内存中;利用所述第二寄存器的映射地址空间将所述多组计算信息中的m组计算信息映射到所述扩展地址空间中,其中,m为正整数。
18、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述第二寄存器的映射地址空间的大小从第一尺寸被扩展为第二尺寸,所述第一尺寸的第二寄存器的映射地址空间包括第一接口地址空间,所述第二尺寸的第二寄存器的映射地址空间包括m个接口地址空间,所述m个接口地址空间包括第一接口地址空间至第m接口地址空间,所述利用所述第二寄存器将所述多组计算信息中的m组计算信息映射到所述第一缓存中,包括:利用所述m个接口地址空间中的第k接口地址空间将所述m组计算信息中的第k组计算信息映射到所述扩展地址空间中,其中,k=1,2,…,m。
19、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述第四功能单元还包括第三寄存器,所述多组计算信息包括n组计算信息,n为大于m的整数,所述将所述第二待处理数据从所述第四功能单元传输至所述第一功能单元,并存储到所述存储装置中,还包括:利用所述第二寄存器的映射地址空间将所述n组计算信息中的第1组至第m组计算信息映射到所述扩展地址空间中,以执行所述数据处理中的第一操作;利用所述第三寄存器的映射地址空间将所述n组计算信息中的第m+1组至第n组计算信息映射到所述扩展地址空间中,以执行所述数据处理中的第二操作。
20、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的方法中,所述第三寄存器的映射地址空间的大小从第三尺寸被扩展为第四尺寸,所述第三尺寸的第三寄存器的映射地址空间包括第m+1接口地址空间,所述第四尺寸的第三寄存器的映射地址空间包括n-m个接口地址空间,所述n-m个接口地址空间包括第m+1接口地址空间至第n接口地址空间,所述利用所述第三寄存器的映射地址空间将所述n组计算信息中的第m+1组至第n组计算信息映射到所述扩展地址空间中,包括:利用所述n-m个接口地址空间中的第j接口地址空间将所述n组计算信息中的第j组计算信息映射到所述扩展地址空间中,其中,j=m+1,m+2,…,n。
21、本公开至少一实施例还提供一种用于拓扑系统间直接存储访问的装置,该用于拓扑系统间直接存储访问的装置包括:配置模块,配置为用于对第一拓扑系统中的第一处理模块进行配置以使得所述第一处理模块具有第一功能和第二功能,其中,所述第一功能包括直接存储访问,所述第二功能包括拓扑系统间地址翻译;转换模块,配置为通过在所述第一处理模块进行所述拓扑系统间地址翻译,在所述第一处理模块的直接存储访问操作中将对第一拓扑地址的访问转换为对第二拓扑地址的访问,或接收将对所述第二拓扑地址的访问进行转换得到的对所述第一拓扑地址的访问,其中,所述第一拓扑地址与在所述第一拓扑系统中的所述第一处理模块对应,所述第二拓扑地址位于第二拓扑系统中,所述第一拓扑系统和所述第二拓扑系统各自分别寻址且相互通信。
22、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的装置中,所述第一拓扑系统和所述第二拓扑系统为两个不同的高速串行计算机扩展总线标准拓扑系统。
23、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的装置中,所述转换模块还配置为,在所述第一处理模块根据地址映射关系将所述第一拓扑地址翻译为所述第二拓扑地址。
24、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的装置中,所述第二拓扑地址与在所述第二拓扑系统中的所述第二处理模块对应,所述第一处理模块和所述第二处理模块相互通信,所述转换模块还配置为:对所述第二处理模块进行直接存储访问,以将来自所述第一处理模块的第一待处理数据写入所述第二处理模块,或者,对所述第一处理模块进行直接存储访问,以将来自所述第二处理模块的第二待处理数据写入所述第一处理模块。
25、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的装置中,所述第一处理模块包括第一功能单元和第二功能单元,所述第一功能单元具有第一功能,所述第二功能单元具有第二功能,所述第一功能单元包括存储装置,所述转换模块还配置为:从所述第一功能单元的存储装置中读取所述第一待处理数据,将所述第一待处理数据传输至所述第二功能单元,在所述第二功能单元将所述第一拓扑地址翻译为所述第二拓扑地址,基于所述第二拓扑地址,将所述第一待处理数据传输至所述第二处理模块,以对所述第二处理模块进行直接存储访问;或者,利用所述第二功能单元接收来自所述第二处理模块的所述第二待处理数据,其中,所述第二处理模块将所述第二拓扑地址翻译为所述第一拓扑地址,基于所述第一拓扑地址,将所述第二待处理数据传输至所述第一功能单元,并存储到所述第一功能单元的存储装置中。
26、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的装置中,所述第一处理模块还包括第三功能单元,所述转换模块还配置为:将所述第一待处理数据传输至所述第三功能单元,利用所述第三功能单元将所述第一待处理数据经第一链路传输至所述第二处理模块;或者,利用所述第三功能单元经所述第一链路接收来自所述第二处理模块的所述第二待处理数据,将所述第二待处理数据传输至所述第二功能单元。
27、例如,本公开至少一实施例提供的用于拓扑系统间直接存储访问的装置,还包括执行模块,配置为利用所述第二待处理数据在所述第一功能单元执行数据处理。
28、例如,在本公开至少一实施例提供的用于拓扑系统间直接存储访问的装置中,所述第一处理模块还包括第四功能单元,所述转换模块还配置为,启用或禁用所述第四功能单元;响应于启用所述第四功能单元,所述转换模块还配置为:将所述第二待处理数据传输至所述第四功能单元中;将所述第二待处理数据从所述第四功能单元传输至所述第一功能单元,并存储到所述存储装置中。
29、本公开至少一实施例还提供一种电子设备。该电子设备包括:处理器;存储器,包括一个或多个计算机程序模块;其中,所述一个或多个计算机程序模块被存储在所述存储器中并被配置为由所述处理器执行,所述一个或多个计算机程序模块用于实现本公开任一实施例提供的用于拓扑系统间直接存储访问的方法。
30、本公开至少一实施例还提供一种存储介质,存储有非暂时性计算机可读指令,当所述非暂时性计算机可读指令由计算机执行时实现本公开任一实施例提供的用于拓扑系统间直接存储访问的方法。