一种内存区域注册方法、装置及设备与流程

文档序号:34004816发布日期:2023-04-29 20:02阅读:43来源:国知局
一种内存区域注册方法、装置及设备与流程

本技术涉及数据处理领域,特别涉及一种内存区域注册方法、装置及设备。


背景技术:

1、随着信息技术(information technology,it)的发展,用于对计算设备的数据处理能力要求越来越高。内存是影响计算设备数据处理能力的关键因素之一,越高数据处理能力的计算设备,对内存的需求也越高。由于,物理形态上的限制,计算设备的中央处理单元(central processing unit,cpu)可本地连接的主存储器(main memory)(例如,动态随机存取存储器(dynamic random access memory,dram))是有限的,并且,主存储器的容量没有得到快速增长。

2、因此,远端内存扩展方案成为了扩展计算设备内存的研究方向。其中,远程内存直接访问(remote direct memory access,rdma)技术使得远端内存扩展方案成为了可行性方案。其中,为了实施rdma技术,设备a1需要将相应的内存区域注册到网卡,使得设备a2可以在不经过设备a1的cpu的情况下,直接访问设备a1注册到网卡的内存区域(memoryregion,mr)。其中,在设备a1注册mr的过程中,设备a1难以对设备a1侧的用户提供业务,导致设备a1侧的用户体验较差。


技术实现思路

1、本技术实施例提供了一种内存区域注册方法、装置及设备,可以及早利用rdma mr执行业务请求,提高了设备间的通信性能。

2、第一方面,本技术实施例提供了一种内存区域注册方法,该方法可应用于第一设备,第一设备包括内存和网卡,第一设备和第二设备通过网络通信,该方法包括:第一设备将内存的第一存储区域注册到网卡,第一存储区域是内存的一部分存储空间;向第二设备发送第一存储区域的标识;当第一存储区域注册到网卡之后,利用第一存储区域执行一个或多个业务请求;在执行一个或多个业务请求的过程中,在第一设备满足第一条件时,执行内存区域注册任务,将内存的第二存储区域注册到网卡,第二存储区域是指内存的存储空间中除第一存储区域中之外的全部或部分剩余区域。

3、本技术实施例提供的内存区域注册方法可以先将内存的部分存储区域注册到网卡,缩短了注册时间,从而可以及早利用该部分区域执行业务请求,提高了设备间的通信性能;并且,可以在适当时机(满足第一条件时),继续将内存中剩余的存储区域注册到网卡,可以在不影响或较少其他业务的情况下,实现内存到网卡的注册。

4、在第一方面的第一种可能实现方式中,第一条件为:第一设备的当前待执行任务中不具有第一类型任务,第一类型任务的优先级高于内存区域注册任务。

5、也就是说,在该实现方式中,可以将不影响高优先级任务执行的情况下,实现内存到网卡的注册。

6、在第一方面的第二种可能实现方式中,第一条件为:第一设备已连续执行了n次第一类型任务,n为大于或等于1的正整数,第一类型任务的优先级高于内存区域注册任务。

7、也就是说,在该实现方式中,可以兼顾高优先级任务和内存区域注册任务,在减少对高优先级任务的影响的同时,改善设备间的通信性能。

8、结合第一方面的第一种可能实现方式或第二种可能实现方式,在第一方面的第三种可能实现中,第一类型任务为用户任务。

9、也就是说,在该实现方式中,第一设备可以优先执行用户任务,改善了第一设备侧的用户体验。

10、在第一方面的第四种可能实现方式中,第一条件为:第一设备在第一时长内未执行内存区域注册任务。

11、也就是说,在该实现方式中,可以兼顾内存区域注册任务和其他任务,在减少对其他任务的影响的同时,改善设备间的通信性能。

12、在第一方面的第五种可能实现方式中,执行内存区域注册任务包括:将第二存储区域中的第三存储区域注册到网卡,第三存储区域为第二存储区域中的一部分存储区域;当第三存储区域注册到网卡之后,在第一设备满足第一条件时,将第二存储区域中的第四存储区域注册到网卡,第四存储区域为第二存储区域中除第三存储区域之外的全部或部分剩余区域。

13、也就是说,在该实现方式中,内存区域注册任务可以分阶段执行,单阶段的内存区域注册任务占用时间较短,从而使得当待执行任务中具有高优先级任务时,使得高优先级任务可以得到及时执行。

14、结合第一方面的第五种可能实现方式,在第一方面的第六种可能实现方式中,该方法还包括:当第三存储区域注册到网卡时,向第二设备发送第三存储区域的标识;或者,当第四存储区域注册到网卡时,向第二设备发送第三存储区域的标识和第四存储区域的标识。

15、也就是说,在该实现方式中,可以每当将一存储区域注册到网卡时,向第二设备发送该存储区域的标识,从而可以及早利用该存储区域执行业务请求;也可以每当注册多个存储区域到网卡时,再将多个存储区域的标识同时发送给第二设备,从而可以节省第一设备和第二设备之间的网络资源。

16、在第一方面的第七种可能实现方式中,第一存储区域的大小为预设值。

17、也就是说,在该实现方式中,可以预先设定第一存储区域的大小。例如,根据第一设备的性能设置第一存储区域的大小,从而可以平衡注册时长以及注册的内存区域的大小。

18、第二方面,本技术实施例提供了一种内存区域注册装置,该装置可配置于第一设备,第一设备包括内存和网卡,第一设备和第二设备通过网络通信,该装置包括:注册单元,用于将内存的第一存储区域注册到网卡,第一存储区域是内存的一部分存储空间;发送单元,用于向第二设备发送第一存储区域的标识;执行单元,用于当第一存储区域注册到网卡之后,利用第一存储区域执行一个或多个业务请求;执行单元还用于在执行一个或多个业务请求的过程中,在第一设备满足第一条件时,执行内存区域注册任务,将内存的第二存储区域注册到网卡,第二存储区域是指内存的存储空间中除第一存储区域中之外的全部或部分剩余区域。

19、在第二方面的第一种可能实现方式中,第一条件为:第一设备的当前待执行任务中不具有第一类型任务,第一类型任务的优先级高于内存区域注册任务。

20、在第二方面的第二种可能实现方式中,第一条件为:第一设备已连续执行了n次第一类型任务,n为大于或等于1的正整数,第一类型任务的优先级高于内存区域注册任务。

21、结合第二方面的第一种可能实现方式或第二种可能实现方式,在第二方面的第三种可能实现中,第一类型任务为用户任务。

22、在第二方面的第四种可能实现方式中,第一条件为:第一设备在第一时长内未执行内存区域注册任务。

23、在第二方面的第五种可能实现方式中,执行单元还用于:将第二存储区域中的第三存储区域注册到网卡,第三存储区域为第二存储区域中的一部分存储区域;当第三存储区域注册到网卡之后,在第一设备满足第一条件时,将第二存储区域中的第四存储区域注册到网卡,第四存储区域为第二存储区域中除第三存储区域之外的全部或部分剩余区域。

24、结合第二方面的第五种可能实现方式,在第二方面的第六种可能实现方式中,发送单元还用于:当第三存储区域注册到网卡时,向第二设备发送第三存储区域的标识;或者,当第四存储区域注册到网卡时,向第二设备发送第三存储区域的标识和第四存储区域的标识。

25、在第二方面的第七种可能实现方式中,第一存储区域的大小为预设值。

26、第三方面,本技术实施例提供了一种电子设备,包括处理器、存储器和网卡,处理器用于执行存储器中存储的指令,使得电子设备执行第一方面所提供的方法。

27、第四方面,本技术实施例提供了一种计算机可读存储介质,包括计算机程序指令,当计算机程序指令由电子设备执行时,电子设备执行第一方面所提供的方法。

28、第五方面,本技术实施例提供了一种包含指令的计算机程序产品,当指令被电子设备执行时,使得电子设备执行第一方面所提供的方法。

29、本技术实施例提供的内存区域注册方法、装置及设备,可以先将内存的部分存储区域注册到网卡,缩短了注册时间,从而可以及早利用该部分区域执行业务请求,提高了设备间的通信性能;并且,可以在适当时机(满足第一条件时),继续将内存中剩余的存储区域注册到网卡,可以在不影响或较少其他业务的情况下,实现内存到网卡的注册。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1