技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种数据处理方法、产品、服务器及介质与流程  >  正文

一种数据处理方法、产品、服务器及介质与流程

  • 国知局
  • 2024-08-05 12:21:06

本发明涉及服务器,特别是涉及一种数据处理方法、产品、服务器及介质。

背景技术:

1、高性能计算(high performance computing,hpc)系统需要处理的数据量呈指数级增长,这迫使hpc数据中心利用图形处理器(graphics processing unit,gpu)、数据处理器(data processing unit,dpu)和现场可编程门阵列(field-programmable gatearray,fpga)等新兴硬件技术来加速处理。由于加速器的高带宽内存(high bandwidthmemory,hbm)内存有限,通常加速器从主内存上和/或计算快速链接(compute expresslink,cxl)内存上读取/写入数据。

2、相关的内存分配方法中通常按照任务(即工作负载)调度时间依次在各内存中申请占用内存,该方法往往会出现某个任务剧烈抢占某种内存的带宽,导致无法高效利用内存和带宽。

3、由此可见,如何平衡每个gpu上的任务对内存的申请占用,实现内存和带宽的高效利用是本领域人员亟需解决的技术问题。

技术实现思路

1、本发明的目的是提供一种数据处理方法、产品、服务器及介质,以解决当按照任务(即工作负载)调度时间依次在各内存中申请占用内存,往往会出现某个任务剧烈抢占某种内存的带宽,导致无法高效利用内存和带宽的技术问题。

2、为解决上述技术问题,本发明提供一种数据处理方法,包括:

3、获取任务并将所述任务划分出的各子任务分别部署在图形处理器上;其中,子任务与所述图形处理器一一对应;

4、获取各所述图形处理器上处理子任务所需的额外内存空间;其中,所述额外内存空间为所述图形处理器上处理子任务所需的内存空间之和减去所述图形处理器的内存空间得到的差值,所述额外内存空间所属的目标内存至少包括系统内存和计算快速链接内存;

5、将所述目标内存的空间划分至各所述图形处理器,以得到各所述图形处理器的可用目标内存空间;

6、根据各所述图形处理器上处理子任务所需的额外内存空间与对应的可用目标内存空间之间的关系确定各所述图形处理器待占用的目标内存,以便于各所述图形处理器占用确定出的所述待占用的目标内存上的可用目标内存空间处理所述任务。

7、一方面,所述任务为多个,所述将所述任务划分出的各子任务分别部署在图形处理器上包括:

8、获取系统中所述图形处理器的数量;

9、分别将各所述任务划分成预设数量的子任务;其中,所述预设数量与系统中所述图形处理器的数量相同;

10、分别将各所述任务划分出的各子任务部署在对应的图形处理器上;

11、所述获取各所述图形处理器上处理子任务所需的额外内存空间包括:

12、获取各所述图形处理器上处理目标子任务所需的所述额外内存空间;其中,所述目标子任务为部署在各所述图形处理器上的所有所述任务对应的子任务之和。

13、另一方面,所述分别将各所述任务划分出的各子任务部署在对应的图形处理器上包括:

14、获取各所述任务所需的内存空间大小;

15、按照各所述任务所需的内存空间大小的顺序对所有所述任务进行排序;

16、根据所述任务的顺序将各所述任务中的一个子任务部署在同一图形处理器。

17、另一方面,所述根据所述任务的顺序将各所述任务中的一个子任务部署在同一图形处理器包括:

18、对各所述图形处理器设置唯一编号并按照各所述图形处理器对应的唯一编号的先后顺序对各所述图形处理器进行排序,得到所述图形处理器的顺序;

19、分别对各所述任务中的子任务设置唯一编号并在每个所述任务中按照子任务的唯一编号对各子任务进行排序,得到每个所述任务中子任务的顺序;

20、获取所有所述任务的数量;

21、根据所述任务的数量与系统中所述图形处理器的数量之间的关系确定各所述任务中的子任务部署在所述图形处理器时的部署顺序;其中,所述部署顺序包含按照所述图形处理器的顺序正向部署和按照所述图形处理器的顺序反向部署;所述正向部署或反向部署各所述任务中的子任务时,各所述任务中的起始子任务部署在不同的所述图形处理器上;

22、根据所述任务的顺序并结合每个所述任务中子任务的顺序和所述部署顺序将各所述任务中的子任务部署在对应的所述图形处理器上,以将各所述任务中的一个子任务部署在同一所述图形处理器。

23、另一方面,所述根据所述任务的数量与系统中所述图形处理器的数量之间的关系确定各所述任务中的子任务部署在所述图形处理器时的部署顺序包括:

24、在检测到所述任务的数量小于或等于系统中所述图形处理器的数量的情况下,确定各所述任务中的子任务部署在所述图形处理器时的部署顺序为正向部署顺序;

25、在检测到所述任务的数量大于系统中所述图形处理器的数量的情况下,确定各所述任务中的子任务部署在所述图形处理器时的部署顺序为反向部署顺序。

26、另一方面,所述根据各所述图形处理器上处理子任务所需的额外内存空间与对应的可用目标内存空间之间的关系确定各所述图形处理器待占用的目标内存包括:

27、获取各所述目标内存的优先级顺序;

28、在检测到各所述图形处理器上处理子任务所需的额外内存空间小于或等于第一优先级的目标内存对应的可用目标内存空间的情况下,确定各所述图形处理器待占用的目标内存为第一优先级的目标内存;

29、在检测到各所述图形处理器上处理子任务所需的额外内存空间大于对应的第一优先级的目标内存的可用目标内存空间,且小于或等于第二优先级的目标内存的可用目标内存空间的情况下,确定各所述图形处理器待占用的目标内存为第一优先级的目标内存和第二优先级的所述目标内存。

30、另一方面,所述方法还包括:

31、在检测到各所述图形处理器上处理子任务所需的额外内存空间大于第一优先级的目标内存的可用目标内存空间,且大于第二优先级的目标内存的可用目标内存空间的情况下,确定各所述图形处理器待占用的目标内存为第一优先级的目标内存、第二优先级的所述目标内存和第三优先级的所述目标内存;其中,第三优先级的所述目标内存为其他内存,所述其他内存中至少包括硬盘内存。

32、另一方面,第一优先级的所述目标内存为系统内存,第二优先级的所述目标内存为计算快速链接内存,第三优先级的所述目标内存为其他内存。

33、另一方面,所述根据各所述图形处理器上处理子任务所需的额外内存空间与对应的可用目标内存空间之间的关系确定各所述图形处理器待占用的目标内存,以便于各所述图形处理器占用确定出的所述待占用的目标内存上的可用目标内存空间处理所述任务包括:

34、根据当前图形处理器上处理子任务所需的额外内存空间与所述当前图形处理器的可用目标内存空间之间的关系确定所述当前图形处理器待占用的目标内存,以便于所述当前图形处理器占用确定出的所述待占用的目标内存上的可用目标内存空间处理所述任务;

35、获取所述当前图形处理器的下一个图形处理器,并将所述当前图形处理器的下一个图形处理器作为新的所述当前图形处理器,返回所述根据当前图形处理器上处理子任务所需的额外内存空间与所述当前图形处理器的可用目标内存空间之间的关系确定所述当前图形处理器待占用的目标内存的步骤,直至确定出所有的所述图形处理器待占用的目标内存后,停止返回。

36、另一方面,确定所述当前图形处理器的可用目标内存空间包括:

37、获取剩余的所述图形处理器的数量和各优先级的目标内存的剩余空间容量;其中,剩余的所述图形处理器的数量为系统中所有所述图形处理器的数量减去已确定出占用目标内存的所述图形处理器的数量得到的差值;各优先级的目标内存的剩余空间容量为各优先级的目标内存的总空间容量减去各优先级的目标内存上已占用的空间容量得到的差值;其中,各优先级的目标内存至少包括第一优先级的目标内存和第二优先级的目标内存;

38、根据各优先级的目标内存的剩余空间容量与剩余的所述图形处理器的数量的比值确定所述当前图形处理器在各优先级的目标内存上的可用目标内存空间。

39、另一方面,所述根据各优先级的目标内存的剩余空间容量与剩余的所述图形处理器的数量的比值确定所述当前图形处理器在各优先级的目标内存上的可用目标内存空间包括:

40、在检测到不存在已占用第一优先级的目标内存的所述图形处理器的情况下,获取各优先级的目标内存的空间容量与所有所述图形处理器的数量之间的第一比值结果,将各所述第一比值结果作为所述当前图形处理器在对应的优先级的目标内存上的可用目标内存空间;

41、在检测到存在已占用第一优先级的目标内存的所述图形处理器、不存在已占用第二优先级的目标内存的所述图形处理器的情况下,获取第一优先级的目标内存的剩余空间容量与剩余的所述图形处理器的数量之间的第二比值结果,将所述第二比值结果作为所述当前图形处理器在第一优先级的目标内存上的可用目标内存空间;获取第二优先级的目标内存的空间容量与剩余的所述图形处理器的数量之间的第三比值结果,将所述第三比值结果作为所述当前图形处理器在第二优先级的目标内存上的可用目标内存空间;

42、在检测到存在已占用第一优先级的目标内存的所述图形处理器、且存在已占用第二优先级的目标内存的所述图形处理器的情况下,获取第一优先级的目标内存的剩余空间容量与剩余的所述图形处理器的数量之间的第四比值结果,将所述第四比值结果作为所述当前图形处理器在第一优先级的目标内存上的可用目标内存空间;获取第二优先级的目标内存的剩余空间容量与剩余的所述图形处理器的数量之间的第五比值结果,将所述第五比值结果作为所述当前图形处理器在第二优先级的目标内存上的可用目标内存空间。

43、另一方面,各所述图形处理器占用确定出的所述待占用的目标内存上的可用目标内存空间处理所述任务包括:

44、各所述图形处理器占用确定出的所述待占用的目标内存上的可用目标内存空间处理各所述任务的起始子任务,并接收在可用目标内存空间处理各所述任务的起始子任务的结果,以便于根据处理起始子任务的结果并按照每个所述任务中子任务的顺序处理各子任务。

45、为了解决上述技术问题,本发明还提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述的数据处理方法的步骤。

46、为了解决上述技术问题,本发明还提供一种服务器,包括:

47、存储器,用于存储计算机程序;

48、处理器,用于执行所述计算机程序时实现上述的数据处理方法的步骤。

49、为了解决上述技术问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的数据处理方法的步骤。

50、本发明所提供的数据处理方法,包括获取任务并将任务划分出的各子任务分别部署在图形处理器上,获取各图形处理器上处理子任务所需的额外内存空间和各图形处理器的可用目标内存空间,最后根据各图形处理器上处理子任务所需的额外内存空间与对应的可用目标内存空间之间的关系确定各图形处理器待占用的目标内存,以便于各图形处理器占用确定出的待占用的目标内存上的可用目标内存空间处理任务。

51、本发明的有益效果在于,首先,该方法中,由于提前将目标内存的空间划分至各图形处理器,因此,在根据各图形处理器上处理子任务所需的额外内存空间和可用目标内存空间之间的关系确定出图形处理器待占用的目标内存的情况下,即可让各图形处理器占用提前为其分配好的可用目标内存空间,使得各图形处理器上的任务不会抢占内存和带宽,实现了内存和带宽高效利用;其次,获取各图形处理器上处理子任务所需的额外内存空间并根据各图形处理器上处理子任务所需的额外内存空间与对应的可用目标内存空间之间的关系确定各图形处理器待占用的目标内存时,即通过计算不同图形处理器上不同任务额外需要的内存大小来自动分配不同类型内存的占用,使得不同的任务根据自身的特点占用不同的内存;且由于额外内存空间为图形处理器上处理子任务所需的内存空间之和减去图形处理器的内存空间得到的差值,即在图形处理器上综合考虑所有子任务,尽可能地保证了选取合适的目标内存供图形处理器使用;再次,将任务划分出的各子任务分别部署在图形处理器上;由于子任务与图形处理器一一对应,使得能够充分利用图形处理器的资源;而且,该方法中目标内存至少包括系统内存和计算快速链接内存,实现了在服务器平台上部署多种内存资源来支撑大模型乃至超大模型中巨大的算力需求。

52、此外,将任务划分出的各子任务分别部署在图形处理器的过程中,分别将各任务划分成预设数量的子任务,预设数量与图形处理器的数量相同,使得各任务能够均衡地分配到各图形处理器上;

53、在分别将各任务划分出的各子任务部署在对应的图形处理器上时,考虑到任务所需的内存空间大小将各任务中的一个子任务部署在同一图形处理器,具体地,根据任务的数量与系统中图形处理器的数量之间的关系确定各任务中的子任务部署在图形处理器时的部署顺序,以及根据任务的顺序并结合每个任务中子任务的顺序和部署顺序将各任务中的子任务部署在对应的图形处理器上,尽可能地保证了各图形处理器上的负载均衡,且通过对各图形处理器进行编号和排序以及对每个任务中的子任务进行编号和排序,使得能够有序地将各任务部署在图形处理器上以及根据各编号能够了解各图形处理器上部署的任务的情况;

54、由于高优先级的任务可能对性能要求更高或对延迟更敏感,因此,本发明提供的方法中按照目标内存的优先级顺序作为各图形处理器待占用的目标内存,使得可以优先分配内存可以加快这些任务的处理速度;

55、采用的目标内存中包含包括系统内存、计算快速链接和内存其他内存,即通过混合内存布局任务,能够有效提升混合内存使用效率,最大限度的提升不同带宽的通信效率,提升了人工智能(artificial intelligence,ai)这种计算量大的工作负载的性能。同时这种实现方式能够充分利用各底层硬件(即混合内存)的资源,通过在服务器平台上部署多种内存资源来支撑数据密集型工作负载乃至超大模型训练中巨大的内存需求;

56、在确定各图形处理器待占用的目标内存时,充分考虑其他图形处理器在目标内存上占用的空间,将剩余空间容量均衡地分配至各未确定出占用的目标内存的图形处理器,实现了动态调整分配的内存以及尽可能地保证了内存分配均衡。

57、另外,本发明还提供一种计算机程序产品、一种服务器以及计算机可读存储介质,与上述提到的数据处理方法具有相同或相对应的技术特征,效果同上。

本文地址:https://www.jishuxx.com/zhuanli/20240802/262328.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。