资源管理的方法、装置、存储介质及电子设备与流程

文档序号:30519762发布日期:2022-06-25 04:31阅读:69来源:国知局
资源管理的方法、装置、存储介质及电子设备与流程

1.本公开涉及资源管理领域,具体地,涉及一种资源管理的方法、装置、存储介质和电子设备。


背景技术:

2.随着计算机体系结构的不断演进与发展,gpu(graphics processing unit,图形处理器)因其高效的众核计算能力逐步应用于通用计算领域,例如数值分析、三维建模和游戏等场景,相关技术中为了解放终端本地的gpu资源限制,可以使用远程服务器上部署的gpu资源,服务器内配置硬盘和gpu等硬件设备,但是服务器通常部署linux系统,业务环境基于linux平台搭建,为提供windows访问环境,通常在单个部署了linux系统的服务器(宿主机)上构建多个windows虚拟机作为客户节点,来向用户提供windows服务。
3.如上所述,游戏和建模等场景需要使用gpu资源,但是gpu硬件是部署在linux服务器(即宿主机)上,windows虚拟机无法直接使用linux宿主机上的gpu资源,现有的gpu直通方案中,windows虚拟机使用直通进的gpu资源来构建gpu环境,但是直通后的宿主机的gpu卡无法再被另外一个windows虚拟机使用,这会降低gpu资源利用率。


技术实现要素:

4.本公开的目的是提供一种资源管理的方法、装置、存储介质及电子设备。
5.第一方面,本公开提供一种资源管理的方法,应用于服务节点,所述服务节点上部署有图形处理器gpu资源,所述方法包括:
6.接收客户节点发送的资源请求消息,所述资源请求消息用于请求使用所述服务节点上的所述gpu资源,所述客户节点与所述服务节点均部署在目标宿主机上;
7.根据所述资源请求消息从所述gpu资源中确定目标gpu资源;
8.在接收到所述客户节点发送的业务操作指令的情况下,根据所述目标gpu资源执行所述业务操作指令;
9.向所述客户节点发送指令执行结果;
10.其中,所述服务节点通过以下方式预先建立:
11.在所述目标宿主机上创建目标虚拟机,并将所述目标虚拟机作为所述服务节点,所述目标虚拟机的系统环境与所述客户节点的系统环境相同;
12.将所述目标宿主机上的所述gpu资源直通至所述服务节点。
13.可选地,所述资源请求消息包括所述客户节点的当前业务所需要的目标gpu计算资源请求消息和目标gpu存储资源请求消息;所述根据所述资源请求消息从所述gpu资源中确定目标gpu资源包括:根据所述目标gpu计算资源请求消息和所述目标gpu存储资源请求消息对所述gpu资源进行动态资源分配,得到所述目标gpu资源。
14.可选地,所述服务节点包括一个或者多个,在所述服务节点包括多个的情况下,不同的服务节点部署不同的业务场景对应的gpu资源。
15.第二方面,本公开提供一种资源管理的方法,应用于管理节点,所述管理节点用于对服务节点上部署的gpu资源进行管理;所述方法包括:
16.接收客户节点发送的资源请求消息,所述资源请求消息用于请求使用所述服务节点上的所述gpu资源;
17.根据所述资源请求消息确定目标gpu,所述目标gpu为所述管理节点分配的为所述客户节点的当前业务提供gpu资源的gpu;
18.将所述目标gpu的标识信息发送至所述客户节点,以使所述客户节点根据所述标识信息确定目标服务节点,并向所述目标服务节点发送业务操作指令,以便所述目标服务节点基于所述目标gpu执行所述业务操作指令,并向所述客户节点返回指令执行结果;
19.其中,所述服务节点通过以下方式预先建立:
20.在目标宿主机上创建目标虚拟机,并将所述目标虚拟机作为所述服务节点,所述目标虚拟机的系统环境与所述客户节点的系统环境相同,所述服务节点与所述客户节点均部署在所述目标宿主机上;
21.将所述目标宿主机上的所述gpu资源直通至所述服务节点。
22.可选地,所述资源请求消息包括所述客户节点的当前业务所需要的目标gpu计算资源请求消息和目标gpu存储资源请求消息;所述根据所述资源请求消息确定目标gpu包括:根据所述目标gpu计算资源请求消息和所述目标gpu存储资源请求消息对所述管理节点管理的gpu资源进行动态资源分配,得到目标gpu资源;根据所述目标gpu资源确定所述目标gpu。
23.可选地,在所述接收客户节点发送的资源请求消息之前,所述方法还包括:接收所述服务节点发送的资源上报消息,所述资源上报消息包括所述服务节点上部署的gpu资源信息。
24.第三方面,本公开提供一种资源管理的装置,应用于服务节点,所述服务节点部署有图形处理器gpu资源,所述装置包括:
25.第一接收模块,用于接收客户节点发送的资源请求消息,所述资源请求消息用于请求使用所述服务节点上的所述gpu资源,所述客户节点与所述服务节点均部署在目标宿主机上;
26.第一确定模块,用于根据所述资源请求消息从所述gpu资源中确定目标gpu资源;
27.指令执行模块,用于在接收到所述客户节点发送的业务操作指令的情况下,根据所述目标gpu资源执行所述业务操作指令;
28.第一发送模块,用于向所述客户节点发送指令执行结果;
29.其中,所述服务节点通过以下方式预先建立:
30.在所述目标宿主机上创建目标虚拟机,并将所述目标虚拟机作为所述服务节点,所述目标虚拟机的系统环境与所述客户节点的系统环境相同;将所述目标宿主机上的所述gpu资源直通至所述服务节点。
31.可选地,所述资源请求消息包括所述客户节点的当前业务所需要的目标gpu计算资源请求消息和目标gpu存储资源请求消息;所述第一确定模块,用于根据所述目标gpu计算资源请求消息和所述目标gpu存储资源请求消息对所述gpu资源进行动态资源分配,得到所述目标gpu资源。
32.可选地,所述服务节点包括一个或者多个,在所述服务节点包括多个的情况下,不同的服务节点部署不同的业务场景对应的gpu资源。
33.第四方面,本公开提供一种资源管理的装置,应用于管理节点,所述管理节点用于对服务节点上部署的gpu资源进行管理;所述装置包括:
34.第二接收模块,用于接收客户节点发送的资源请求消息,所述资源请求消息用于请求使用所述服务节点上的所述gpu资源;
35.第二确定模块,用于根据所述资源请求消息确定目标gpu,所述目标gpu为所述管理节点分配的为所述客户节点的当前业务提供gpu资源的gpu;
36.第二发送模块,用于将所述目标gpu的标识信息发送至所述客户节点,以使所述客户节点根据所述标识信息确定目标服务节点,并向所述目标服务节点发送业务操作指令,以便所述目标服务节点基于所述目标gpu执行所述业务操作指令,并向所述客户节点返回指令执行结果;
37.其中,所述服务节点通过以下方式预先建立:
38.在目标宿主机上创建目标虚拟机,并将所述目标虚拟机作为所述服务节点,所述目标虚拟机的系统环境与所述客户节点的系统环境相同,所述服务节点与所述客户节点均部署在所述目标宿主机上;将所述目标宿主机上的所述gpu资源直通至所述服务节点。
39.可选地,所述资源请求消息包括所述客户节点的当前业务所需要的目标gpu计算资源请求消息和目标gpu存储资源请求消息;所述第二确定模块,用于根据所述目标gpu计算资源请求消息和所述目标gpu存储资源请求消息对所述管理节点管理的gpu资源进行动态资源分配,得到目标gpu资源;根据所述目标gpu资源确定所述目标gpu。
40.可选地,所述装置还包括:
41.第三接收模块,用于接收所述服务节点发送的资源上报消息,所述资源上报消息包括所述服务节点上部署的gpu资源信息。
42.第五方面,本公开提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开第一方面所述方法的步骤。
43.第六方面,本公开提供一种电子设备,包括:
44.存储器,其上存储有计算机程序;
45.处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面所述方法的步骤。
46.第七方面,本公开提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开第二方面所述方法的步骤。
47.第八方面,本公开提供一种电子设备,包括:
48.存储器,其上存储有计算机程序;
49.处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第二方面所述方法的步骤。
50.通过上述技术方案,部署有图形处理器gpu资源的服务节点接收客户节点发送的资源请求消息,所述资源请求消息用于请求使用所述服务节点上的所述gpu资源,所述客户节点与所述服务节点均部署在目标宿主机上;根据所述资源请求消息从所述gpu资源中确定目标gpu资源;在接收到所述客户节点发送的业务操作指令的情况下,根据所述目标gpu
interface,应用程序接口)劫持的gpu池化技术需要客户节点与gpu池节点具备相同的系统环境,但是在现有的数据中心中,客户节点通常是windows环境,而gpu池节点却是linux环境,从而导致客户节点无法使用gpu资源,这还是不能实现gpu资源的动态分配,降低gpu资源利用率。
67.为解决上述存在的问题,本公开提供一种资源管理的方法、装置、存储介质及电子设备,可以预先在目标宿主机上创建系统环境与客户节点的系统环境相同的目标虚拟机作为服务节点,然后将该目标宿主机上的该gpu资源直通至该服务节点,这样可以保证客户节点与服务节点平台的一致性,使得客户节点发送的业务操作指令可以在远程的服务节点上执行,为gpu相关操作的远程执行提供了平台基础。
68.进一步地,在保证客户节点与服务节点平台一致性的前提下,服务节点可以接收客户节点发送的用于请求使用该服务节点上的该gpu资源的资源请求消息,服务节点可以根据该资源请求消息确定目标gpu资源,并在接收到客户节点发送的业务操作指令的情况下,服务节点可以根据该目标gpu资源执行该业务操作指令,之后向该客户节点发送指令执行结果,这样,客户节点可以向服务节点动态申请gpu资源使用,服务节点可以对目标宿主机上的全部gpu资源进行统一分配管理,并支持算力的动态拆分,从而提升了gpu资源的利用率。
69.下面结合附图对本公开的具体实施方式进行详细说明。
70.图3是根据一示例性实施例示出的一种资源管理的方法的流程图,应用于服务节点,该服务节点上部署有图形处理器gpu资源,如图3所示,该方法包括以下步骤:
71.在步骤s301中,接收客户节点发送的资源请求消息,该资源请求消息用于请求使用该服务节点上的该gpu资源,该客户节点与该服务节点均部署在目标宿主机上。
72.其中,该目标宿主机通常是指服务器,并且该目标宿主机上同时部署有该客户节点和该服务节点,该客户节点可以包括客户物理机或者在目标宿主机上构建的客户虚拟机,该服务节点是指在目标宿主机上构建的目标虚拟机,并且该服务节点与该客户节点的系统环境相同,该目标宿主机的系统环境与该服务节点(及客户节点)的系统环境不同,例如,通常情况下,该目标宿主机的系统环境为linux,客户节点和服务节点的系统环境为windows。
73.需要说明的是,该目标宿主机上可以同时部署多个服务节点,也可以同时部署多个客户节点。
74.该资源请求消息可以包括客户节点的当前业务所需要的目标gpu计算资源请求消息和目标gpu存储资源请求消息,该目标gpu计算资源通常是指gpu核数,该目标gpu存储资源一般是指gpu显存大小,可以理解的是,不同的业务所需要的gpu核数可能不同,所需要的gpu显存大小可能也不同,服务节点可以管理该目标宿主机上的全部gpu资源,该全部gpu资源包括多个gpu以及每个gpu分别对应的可用核数和可用显存大小。
75.在步骤s302中,根据该资源请求消息从该gpu资源中确定目标gpu资源。
76.在本步骤中,可以根据该目标gpu计算资源请求消息和该目标gpu存储资源请求消息对该gpu资源进行动态资源分配,得到该目标gpu资源。
77.在一种可能的实现方式中,可以从该资源请求消息中获取客户节点的当前业务所需要的目标gpu核数和目标显存大小,然后根据该目标gpu核数和该目标显存大小从管理的
多个gpu分别对应的可用核数和可用显存大小中进行gpu资源分配,得到该目标gpu资源。
78.示例地,假设服务节点从该资源请求消息中获取到客户节点当前业务所需要的目标gpu核数为16核,当前业务所需要的目标显存大小为32g,并且服务节点管理有gpu1、gpu2、gpu3三个gpu,其中,gpu1可用核数为4核,可用显存大小为8g;gpu2可用核数为8核,可用显存大小为16g;gpu3可用核数为8核,gpu3可用显存大小为16g,这样,服务节点可以将gpu2和gpu3两个gpu的资源分配给客户节点使用,以满足客户节点当前业务所需要的gpu计算资源和gpu存储资源,gpu2和gpu3即为该目标gpu,gpu2和gpu3对应的可用gpu资源即为该目标gpu资源,上述示例仅是举例说明,本公开对此不作限定。
79.在步骤s303中,在接收到该客户节点发送的业务操作指令的情况下,根据该目标gpu资源执行该业务操作指令,并向该客户节点发送指令执行结果。
80.其中,该业务操作指令例如可以包括图像渲染指令(如directx中的createtexture())。
81.服务节点在接收到该业务操作指令后,可以基于该目标gpu资源通过执行该业务操作指令得到指令执行结果(例如渲染得到的纹理对象),之后可以将该指令执行结果发送至客户节点,以便客户节点进行界面显示。
82.需要说明的是,客户节点向服务节点发送该资源请求消息后,服务节点可以通过共享内存的方式与客户节点建立数据通路。
83.上述步骤实现了在目标宿主机上创建目标虚拟机作为服务节点,然后通过该服务节点对该目标宿主机上的gpu资源进行统一分配管理,客户节点可以根据实际业务需求向服务节点进行动态gpu资源申请,服务节点可以支持算力的动态拆分,根据客户节点对gpu资源的具体需求进行gpu资源分配,这样可以明显提升gpu资源的利用率。
84.但考虑到若服务节点与客户节点的系统环境不一致,无法将服务节点管理的宿主机上的gpu资源对客户节点进行资源共享,因此,该服务节点可以通过以下方式预先建立:
85.在该目标宿主机上创建目标虚拟机,并将该目标虚拟机作为该服务节点,该目标虚拟机的系统环境与该客户节点的系统环境相同;将该目标宿主机上的该gpu资源直通至该服务节点。
86.其中,在宿主机上创建目标虚拟机作为服务节点,以及将目标宿主机的gpu资源直通至服务节点的具体实现方式可以参考相关文献中的描述,在此不作限定。
87.这样,可以保证客户节点与服务节点平台(即系统环境)的一致性,使得客户节点发送的业务操作指令可以在远程的服务节点上执行,为gpu相关操作的远程执行提供了平台基础。
88.示例地,图4是根据一示例性实施例示出的一种远程gpu资源共享架构示意图,如图4所示,linux宿主机上部署有gpu1、gpu2、gpu3、gpu4、gpu5五个gpu,linux宿主机还部署有三个windows客户虚拟机(即vm1、vm2、vm3)作为客户节点,三个客户节点上均安装有需要使用gpu资源的应用程序,为了对linux宿主机上的gpu资源进行统一分配管理,并能保证客户节点与服务节点的系统环境的一致性,如图4所示,可以在该linux宿主机上创建一个windows虚拟机(windows server vm)作为服务节点,然后将linux宿主机上的gpu资源直通至server vm,实现server vm对宿主机上全部gpu资源的统一分配管理,这样,windows客户虚拟机可以向server vm发送资源请求消息,windows客户虚拟机在拦截到应用程序发送的
业务操作指令的情况下,可以向server vm发送该业务操作指令,server vm可以基于分配的目标gpu资源通过执行该业务操作指令得到指令执行结果,并向windows客户虚拟机返回该指令执行结果,上述示例仅是举例说明,本公开对此不做限定。
89.采用上述的方法,可以保证客户节点与服务节点平台的一致性,使得客户节点发送的业务操作指令可以在远程的服务节点上执行,为gpu相关操作的远程执行提供了平台基础。进一步地,客户节点可以向服务节点动态申请gpu资源使用,服务节点可以对目标宿主机上的全部gpu资源进行统一分配管理,并支持算力的动态拆分,从而提升了gpu资源的利用率。
90.上述已经提及,服务节点可以包括一个或者多个,即在目标宿主机上可以部署一个或者多个服务节点,在该服务节点包括多个的情况下,不同的服务节点可以部署不同的业务场景对应的gpu资源,从而进一步提升gpu资源的利用效率。
91.示例地,以游戏、建模两个场景为例,通常情况下,游戏相关的应用程序在运行的过程中所需要的gpu资源一般大于建模场景所需要的gpu资源,因此,假设如图4所示,linux宿主机上部署有gpu1、gpu2、gpu3、gpu4、gpu5五个配置大致相同的gpu,在一种可能的实现方式中,可以将gpu1、gpu2、gpu3三个gpu对应的gpu资源分配给游戏场景使用,将gpu4、gpu5两个gpu对应的gpu资源分配给建模场景使用,这样,可以在linux宿主机上预先创建两个windows虚拟机作为服务节点(可分别记为s-vm1,s-vm2),其中,可以将gpu1、gpu2、gpu3三个gpu的gpu资源直通至服务节点s-vm1,可以将gpu4、gpu5两个gpu的gpu资源直通至服务节点s-vm2,从而实现不同的服务节点管理不同的业务场景所需要的gpu资源,这样可以进一步提高gpu资源的利用率和分配效率,上述示例仅是举例说明,本公开对此不做限定。
92.图5是根据一示例性实施例示出的一种管理资源的方法的流程图,该方法可以应用于管理节点,该管理节点用于对服务节点上部署的gpu资源进行管理,并且该管理节点通常是一个预设进程,可以部署在服务节点、客户节点或者目标宿主机上,该目标宿主机通常是指服务器,并且该目标宿主机上可以同时部署有该客户节点和该服务节点,如图5所示,该方法包括以下步骤:
93.在步骤s501中,接收客户节点发送的资源请求消息,该资源请求消息用于请求使用该服务节点上的该gpu资源。
94.其中,该客户节点可以包括客户物理机或者在目标宿主机上构建的客户虚拟机,该服务节点是指在目标宿主机上构建的目标虚拟机,并且该服务节点与该客户节点的系统环境相同,该目标宿主机的系统环境与该服务节点(及客户节点)的系统环境不同,例如,通常情况下,该目标宿主机的系统环境为linux,客户节点和服务节点的系统环境为windows。
95.该资源请求消息可以包括客户节点的当前业务所需要的目标gpu计算资源请求消息和目标gpu存储资源请求消息,该目标gpu计算资源通常是指gpu核数,该目标gpu存储资源一般是指gpu显存大小,可以理解的是,不同的业务所需要的gpu核数可能不同,所需要的gpu显存大小可能也不同,服务节点可以管理该目标宿主机上的gpu资源,该gpu资源包括多个gpu以及每个gpu分别对应的可用核数和可用显存大小,管理节点可以管理多个服务节点分别部署的gpu资源,管理节点在接收到该资源请求消息后,可以根据该资源请求消息确定当前业务所需要的目标gpu计算资源和目标gpu存储资源,然后从管理的多个服务节点分别部署的gpu资源中选择可用资源进行动态资源分配。
96.在步骤s502中,根据该资源请求消息确定目标gpu,该目标gpu为该管理节点分配的为该客户节点的当前业务提供gpu资源的gpu。
97.在本步骤中,可以根据该目标gpu计算资源请求消息和该目标gpu存储资源请求消息对该管理节点管理的gpu资源进行动态资源分配,得到目标gpu资源;根据该目标gpu资源确定该目标gpu。
98.在一种可能的实现方式中,可以从该资源请求消息中获取客户节点的当前业务所需要的目标gpu核数和目标显存大小,然后根据该目标gpu核数和该目标显存大小从管理的多个服务节点分别部署的gpu资源中的可用核数和可用显存大小中进行gpu资源分配,得到该目标gpu资源。
99.示例地,假设管理节点从该资源请求消息中获取到客户节点当前业务所需要的目标gpu核数为16核,当前业务所需要的目标显存大小为64g,并且管理节点管理有甲、乙、丙三个服务节点,其中,甲服务节点上部署有gpu1、gpu2两个gpu,乙服务节点上部署有gpu3一个gpu,丙服务节点上部署有gpu4、gpu5两个gpu,并且每个gpu的可用gpu资源如表1所示,管理节点根据表1中每个gpu的可用gpu资源以及客户节点当前业务所需要的目标gpu核数和目标显存大小进行资源分配后,可以将gpu4和gpu5两个gpu的资源分配给客户节点使用,以满足客户节点当前业务所需要的gpu计算资源和gpu存储资源,gpu4和gpu5即为该目标gpu,上述示例仅是举例说明,本公开对此不作限定。
100.gpu可用核数可用显存大小gpu14核8ggpu28核16ggpu34核8ggpu416核32ggpu516核32g
101.表1
102.在步骤s503中,将该目标gpu的标识信息发送至该客户节点,以使该客户节点根据该标识信息确定目标服务节点,并向该目标服务节点发送业务操作指令,以便该目标服务节点基于该目标gpu执行该业务操作指令,并向该客户节点返回指令执行结果。
103.其中,该标识信息可以包括目标gpu的gpu标识信息(如上述示例中的gpu4和gpu5)以及部署该目标gpu的服务节点标识信息(如上述示例中部署gpu4和gpu5的丙服务节点)。
104.上述步骤实现了通过管理节点对多个服务节点上部署的gpu资源进行统一分配管理,客户节点可以根据实际业务需求向管理节点进行动态gpu资源申请,管理节点可以支持算力的动态拆分,根据客户节点对gpu资源的具体需求进行gpu资源分配,这样可以提升gpu资源的利用率。
105.但考虑到若服务节点与客户节点的系统环境不一致,无法将服务节点部署的宿主机上的gpu资源对客户节点进行资源共享,因此,该服务节点可以通过以下方式预先建立:
106.在目标宿主机上创建目标虚拟机,并将该目标虚拟机作为该服务节点,该目标虚拟机的系统环境与该客户节点的系统环境相同,该服务节点与该客户节点均部署在该目标宿主机上;将该目标宿主机上的该gpu资源直通至该服务节点。
107.同样的,在目标宿主机上创建目标虚拟机作为服务节点,以及将目标宿主机的gpu
资源直通至服务节点的具体实现方式可以参考相关文献中的描述,在此不作限定。
108.这样,可以保证客户节点与服务节点平台(即系统环境)的一致性,使得客户节点发送的业务操作指令可以在远程的服务节点上执行,为gpu相关操作的远程执行提供了平台基础。
109.另外,为了实现通过管理节点对多个服务节点上部署的gpu资源进行统一分配管理,在执行步骤s501之前,管理节点还需要接收该服务节点发送的资源上报消息,该资源上报消息包括该服务节点上部署的gpu资源信息。
110.也就是说,针对每个服务节点,在创建该服务节点,并将相应宿主机上的gpu资源直通进该服务节点后,该服务节点需要将部署的gpu资源上报至管理节点,以便实现通过管理节点对多个服务节点上部署的gpu资源的统一分配管理,以此提高资源的利用率和分配效率。
111.采用上述方法,可以保证客户节点与服务节点平台的一致性,使得客户节点发送的业务操作指令可以在远程的服务节点上执行,为gpu相关操作的远程执行提供了平台基础。进一步地,可以通过管理节点管理多个服务节点分别部署的gpu资源,客户节点可以向管理节点动态申请gpu资源使用,管理节点可以支持算力的动态拆分,从而提升了gpu资源的利用率。
112.图6是根据一示例性实施例示出的一种资源管理的装置的框图,应用于服务节点,该服务节点部署有图形处理器gpu资源,如图6所示,该装置包括:
113.第一接收模块601,用于接收客户节点发送的资源请求消息,该资源请求消息用于请求使用该服务节点上的该gpu资源,该客户节点与该服务节点均部署在目标宿主机上;
114.第一确定模块602,用于根据该资源请求消息从该gpu资源中确定目标gpu资源;
115.指令执行模块603,用于在接收到该客户节点发送的业务操作指令的情况下,根据该目标gpu资源执行该业务操作指令;
116.第一发送模块604,用于向该客户节点发送指令执行结果;
117.其中,该服务节点通过以下方式预先建立:
118.在该目标宿主机上创建目标虚拟机,并将该目标虚拟机作为该服务节点,该目标虚拟机的系统环境与该客户节点的系统环境相同;将该目标宿主机上的该gpu资源直通至该服务节点。
119.可选地,该资源请求消息包括该客户节点的当前业务所需要的目标gpu计算资源请求消息和目标gpu存储资源请求消息;该第一确定模块602,用于根据该目标gpu计算资源请求消息和该目标gpu存储资源请求消息对该gpu资源进行动态资源分配,得到该目标gpu资源。
120.可选地,该服务节点包括一个或者多个,在该服务节点包括多个的情况下,不同的服务节点部署不同的业务场景对应的gpu资源。
121.采用上述装置,可以保证客户节点与服务节点平台的一致性,使得客户节点发送的业务操作指令可以在远程的服务节点上执行,为gpu相关操作的远程执行提供了平台基础。进一步地,客户节点可以向服务节点动态申请gpu资源使用,服务节点可以对目标宿主机上的全部gpu资源进行统一分配管理,并支持算力的动态拆分,从而提升了gpu资源的利用率。
122.图7是根据一示例性实施例示出的一种资源管理的装置的框图,应用于管理节点,该管理节点用于对服务节点上部署的gpu资源进行管理;如图7所示,该装置包括:
123.第二接收模块701,用于接收客户节点发送的资源请求消息,该资源请求消息用于请求使用该服务节点上的该gpu资源;
124.第二确定模块702,用于根据该资源请求消息确定目标gpu,该目标gpu为该管理节点分配的为该客户节点的当前业务提供gpu资源的gpu;
125.第二发送模块703,用于将该目标gpu的标识信息发送至该客户节点,以使该客户节点根据该标识信息确定目标服务节点,并向该目标服务节点发送业务操作指令,以便该目标服务节点基于该目标gpu执行该业务操作指令,并向该客户节点返回指令执行结果;
126.其中,该服务节点通过以下方式预先建立:
127.在目标宿主机上创建目标虚拟机,并将该目标虚拟机作为该服务节点,该目标虚拟机的系统环境与该客户节点的系统环境相同,该服务节点与该客户节点均部署在该目标宿主机上;将该目标宿主机上的该gpu资源直通至该服务节点。
128.可选地,该资源请求消息包括该客户节点的当前业务所需要的目标gpu计算资源请求消息和目标gpu存储资源请求消息;该第二确定模块702,用于根据该目标gpu计算资源请求消息和该目标gpu存储资源请求消息对该管理节点管理的gpu资源进行动态资源分配,得到目标gpu资源;根据该目标gpu资源确定该目标gpu。
129.可选地,图8是根据图7所示实施例示出的一种资源管理的装置的框图,如图8所示,该装置还包括:
130.第三接收模块704,用于接收该服务节点发送的资源上报消息,该资源上报消息包括该服务节点上部署的gpu资源信息。
131.关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
132.采用上述装置,可以保证客户节点与服务节点平台的一致性,使得客户节点发送的业务操作指令可以在远程的服务节点上执行,为gpu相关操作的远程执行提供了平台基础。进一步地,可以通过管理节点管理多个服务节点分别部署的gpu资源,客户节点可以向管理节点动态申请gpu资源使用,管理节点可以支持算力的动态拆分,从而提升了gpu资源的利用率。
133.图9是根据一示例性实施例示出的一种电子设备900的框图。如图9所示,该电子设备900可以包括:处理器901,存储器902。该电子设备900还可以包括多媒体组件903,输入/输出(i/o)接口904,以及通信组件905中的一者或多者。
134.其中,处理器901用于控制该电子设备900的整体操作,以完成上述的资源管理的方法中的全部或部分步骤。存储器902用于存储各种类型的数据以支持在该电子设备900的操作,这些数据例如可以包括用于在该电子设备900上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器902可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(static random access memory,简称sram),电可擦除可编程只读存储器(electrically erasable programmable read-only memory,简称eeprom),可擦除可编程只读存储器(erasable programmable read-only memory,简称eprom),可编程只读存储器
(programmable read-only memory,简称prom),只读存储器(read-only memory,简称rom),磁存储器,快闪存储器,磁盘或光盘。多媒体组件903可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器902或通过通信组件905发送。音频组件还包括至少一个扬声器,用于输出音频信号。i/o接口904为处理器901和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件905用于该电子设备900与其他设备之间进行有线或无线通信。无线通信,例如wi-fi,蓝牙,近场通信(near field communication,简称nfc),2g、3g、4g、nb-iot、emtc、或其他5g等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件905可以包括:wi-fi模块,蓝牙模块,nfc模块等等。
135.在一示例性实施例中,电子设备900可以被一个或多个应用专用集成电路(application specific integrated circuit,简称asic)、数字信号处理器(digital signal processor,简称dsp)、数字信号处理设备(digital signal processing device,简称dspd)、可编程逻辑器件(programmable logic device,简称pld)、现场可编程门阵列(field programmable gate array,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述资源管理的方法。
136.在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的资源管理的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器902,上述程序指令可由电子设备900的处理器901执行以完成上述的资源管理的方法。
137.图10是根据一示例性实施例示出的一种电子设备1000的框图。例如,电子设备1000可以被提供为一服务器。参照图10,电子设备1000包括处理器1022,其数量可以为一个或多个,以及存储器1032,用于存储可由处理器1022执行的计算机程序。存储器1032中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器1022可以被配置为执行该计算机程序,以执行上述的资源管理的方法。
138.另外,电子设备1000还可以包括电源组件1026和通信组件1050,该电源组件1026可以被配置为执行电子设备1000的电源管理,该通信组件1050可以被配置为实现电子设备1000的通信,例如,有线或无线通信。此外,该电子设备1000还可以包括输入/输出(i/o)接口1058。电子设备1000可以操作基于存储在存储器1032的操作系统,例如windows server
tm
,mac os x
tm
,unix
tm
,linux
tm
等等。
139.在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的资源管理的方法的步骤。例如,该非临时性计算机可读存储介质可以为上述包括程序指令的存储器1032,上述程序指令可由电子设备1000的处理器1022执行以完成上述的资源管理的方法。
140.在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的资源管理的方法的代码部分。
141.以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实
施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
142.另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
143.此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1