CN116755843B - 虚拟资源创建方法及装置、电子设备、芯片、存储介质 - Google Patents
虚拟资源创建方法及装置、电子设备、芯片、存储介质 Download PDFInfo
- Publication number
- CN116755843B CN116755843B CN202311037854.2A CN202311037854A CN116755843B CN 116755843 B CN116755843 B CN 116755843B CN 202311037854 A CN202311037854 A CN 202311037854A CN 116755843 B CN116755843 B CN 116755843B
- Authority
- CN
- China
- Prior art keywords
- resource
- target
- video memory
- resource unit
- memory resource
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 88
- 238000013468 resource allocation Methods 0.000 claims abstract description 25
- 230000006870 function Effects 0.000 claims description 35
- 238000013507 mapping Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 7
- 239000002699 waste material Substances 0.000 description 6
- 230000000694 effects Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Image Processing (AREA)
Abstract
本申请提供了虚拟资源创建方法及装置、电子设备、芯片、存储介质;其中,所述方法包括:基于虚拟资源创建请求,从多个资源配置选项中确定目标资源配置选项;其中,所述资源配置选项是基于位于物理显卡上、支持虚拟机实现图像处理功能的资源单元确定;基于所述目标资源配置选项确定目标数量个所述资源单元;基于所述目标数量个资源单元创建目标虚拟图形处理器设备,并基于所述目标虚拟图形处理器设备运行目标虚拟机。
Description
技术领域
本申请涉及但不限于计算机技术领域,尤其涉及一种虚拟资源创建方法及装置、电子设备、芯片、存储介质。
背景技术
在模拟处理器软件(Quick Emulator,qemu)及基于内核的虚拟机(Kernel-basedVirtual Machine,kvm)的虚拟化框架下,从厂商提供的mdevctl type列表中选择了一种mdevctl type来创建vgpu device(虚拟图形处理器设备,Virtual Graphics ProcessingUnit device)之后,就不能选择其它的mdevctl type来创建其它类型的vgpu device,只能根据之前已选择的mdevctl type来创建同类型的vgpu device,也就是说,在已创建过vgpudevice的情况下,仅能创建同类型的vgpu device,这样使得创建的vgpu device的资源较为单一,灵活性差。
发明内容
有鉴于此,本申请提供的一种虚拟资源创建方法及装置、电子设备、芯片、存储介质,能够给不同的虚拟机灵活分配vgpu资源,满足虚拟机对vgpu资源的多种需求,具有良好的灵活性。
根据本申请实施例的一个方面,提供一种虚拟资源创建方法,包括:
基于虚拟资源创建请求,从多个资源配置选项中确定目标资源配置选项;其中,所述资源配置选项是基于位于物理显卡上、支持虚拟机实现图像处理功能的资源单元确定;
基于所述目标资源配置选项确定目标数量个所述资源单元;
基于所述目标数量个资源单元创建目标虚拟图形处理器设备,并基于所述目标虚拟图形处理器设备运行目标虚拟机。
在一些实施方式中,所述方法还包括:基于支持虚拟机实现图像处理功能的最小资源,确定所述资源单元;基于所述资源单元,确定所述资源配置选项。
在一些实施方式中,所述资源单元中包括算力资源单元;所述基于支持虚拟机实现图像处理功能的最小资源,确定所述资源单元,包括:基于所述物理显卡中的图像处理器的硬件条件,确定支持虚拟机实现图像处理功能的最小算力资源;将所述最小算力资源作为所述资源单元中的算力资源单元。
在一些实施方式中,所述资源单元中包括显存资源单元;所述基于支持虚拟机实现图像处理功能的最小资源,确定所述资源单元,包括:基于至少一个虚拟机的显存资源使用信息,确定支持虚拟机实现图像处理功能的最小显存资源;其中,每一所述显存资源使用信息表征对应的虚拟机在处理与图像相关的服务时所使用的显存资源;基于所述最小显存资源和目标条件,确定所述资源单元中的显存资源单元;其中,所述目标条件包括:所述显存资源单元的大小小于或等于所述最小显存资源的大小。
在一些实施方式中,所述资源单元中包括算力资源单元和显存资源单元;所述基于所述资源单元,确定所述资源配置选项,包括:基于所述算力资源单元和所述物理显卡中的图像处理器的总算力资源,确定多个算力资源选项;基于所述显存资源单元和所述物理显卡的总显存资源,确定多个显存资源选项;基于每一所述算力资源选项和每一所述显存资源选项,确定所述资源配置选项。
在一些实施方式中,所述目标资源配置选项中包括目标算力资源和目标显存资源;所述基于所述目标资源配置选项确定目标数量个所述资源单元,包括:基于所述目标算力资源,从算力资源池的至少一个第一算力资源单元中确定至少一个目标第一算力资源单元;其中,每一所述目标第一算力资源单元的大小的和、与所述目标算力资源的大小匹配;基于所述目标显存资源,从显存资源池的至少一个第一显存资源单元中确定至少一个目标第一显存资源单元;其中,每一所述目标第一显存资源单元的大小的和、与所述目标显存资源的大小匹配;将所述至少一个目标第一算力资源单元和所述至少一个目标第一显存资源单元作为所述目标数量个资源单元。
在一些实施方式中,所述基于所述目标算力资源,从算力资源池的至少一个第一算力资源单元中确定至少一个目标第一算力资源单元,包括:基于所述算力资源池中的每一所述第一算力资源单元的状态,从每一所述第一算力资源单元中确定至少一个第二算力资源单元,并基于所述目标算力资源,从所述至少一个第二算力资源单元中确定所述至少一个目标第一算力资源单元;
所述基于所述目标显存资源,从显存资源池的至少一个第一显存资源单元中确定至少一个目标第一显存资源单元,包括:基于所述显存资源池中的每一所述第一显存资源单元的状态,从每一所述第一显存资源单元中确定至少一个第二显存资源单元;基于所述目标显存资源,从所述至少一个第二显存资源单元中确定所述至少一个目标第一显存资源单元。
在一些实施方式中,所述资源单元中包括算力资源单元和显存资源单元;所述方法还包括:基于所述资源单元中的算力资源单元,对所述物理显卡中的图像处理器的总算力资源进行划分,得到至少一个第一算力资源单元,并基于每一所述第一算力资源单元构建所述算力资源池;基于所述资源单元中的显存资源单元,对所述物理显卡的总显存资源进行划分,得到至少一个第一显存资源单元,并基于每一所述第一显存资源单元构建所述显存资源池。
在一些实施方式中,所述目标虚拟图形处理器设备中包括至少一个目标第一显存资源单元;所述基于所述目标虚拟图形处理器设备运行目标虚拟机,包括:启动所述目标虚拟机;利用预设的内存映射接口,将所述至少一个目标第一显存资源单元映射到所述目标虚拟机中,以基于所述目标虚拟图形处理器设备运行所述目标虚拟机。
在一些实施方式中,所述基于所述目标虚拟图形处理器设备运行目标虚拟机,包括:在所述至少一个目标第一显存资源单元为连续的多个第一显存资源单元的情况下,将所述至少一个目标第一显存资源单元整体映射到所述目标虚拟机中,以基于所述目标虚拟图形处理器设备运行所述目标虚拟机;在所述至少一个目标第一显存资源单元为不连续的多个第一显存资源单元的情况下,将所述至少一个目标第一显存资源单元分段映射到所述目标虚拟机中,以基于所述目标虚拟图形处理器设备运行所述目标虚拟机。
在一些实施方式中,所述目标虚拟图形处理器设备的资源大小不同于至少一个已创建的虚拟图形处理器设备的资源大小。
根据本申请实施例的一个方面,提供一种虚拟资源创建装置,包括:
确定模块,配置成基于虚拟资源创建请求,从所述多个资源配置选项中确定目标资源配置选项;其中,所述资源配置选项是基于位于物理显卡上、支持虚拟机实现图像处理功能的资源单元确定;
所述确定模块,配置成基于所述目标资源配置选项确定目标数量个所述资源单元;
处理模块,配置成基于所述目标数量个资源单元创建目标虚拟图形处理器设备,并基于所述目标虚拟图形处理器设备运行目标虚拟机。
根据本申请实施例的一个方面,提供一种电子设备,包括第一存储器和第一处理器,所述第一存储器存储有可在第一处理器上运行的计算机程序,所述第一处理器执行所述程序时实现本申请实施例所述的方法。
根据本申请实施例的一个方面,提供一种芯片,所述芯片包括第二存储器和第二处理器,所述第二存储器存储有可在第二处理器上运行的计算机程序,所述第二处理器执行所述程序时实现本申请实施例所述的方法。
根据本申请实施例的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如本申请实施例所述的方法。
在本申请实施例所提供的一种虚拟资源创建方法及装置、电子设备、芯片、存储介质,基于虚拟资源创建请求,从多个资源配置选项中确定目标资源配置选项;其中,所述资源配置选项是基于位于物理显卡上、支持虚拟机实现图像处理功能的资源单元确定;基于所述目标资源配置选项确定目标数量个所述资源单元;基于所述目标数量个资源单元创建目标虚拟图形处理器设备,并基于所述目标虚拟图形处理器设备运行目标虚拟机。如此,一方面,由于多个资源配置选项是基于位于物理显卡上、支持虚拟机实现图像处理功能的资源单元确定的,每一资源配置选项对应的资源单元的数量是不同的,这样通过多个资源配置选项能够创建多个具有不同资源大小的虚拟图形处理器设备(vgpu device)给不同的虚拟机使用,所分配的虚拟资源(vgpu资源)具有多样性,从而通过多个资源配置选项能够满足虚拟机对资源的多种需求。另一方面,基于资源单元创建的多个资源配置选项之间彼此独立,不会相互制约,可以先后从多个资源配置选项中确定不同的资源配置选项,已创建不同的虚拟图形处理器设备给不同的虚拟机使用;也就是说,如果之前已基于从多个资源配置选项中确定的任一资源配置选项创建过虚拟图形处理器设备,那么当前还是可以继续从多个资源配置选项中再选择一个资源配置选项来创建与之前的虚拟图形处理器设备不同的虚拟图形处理器设备;换句话说,已创建的虚拟图形处理器设备和其对应的资源配置选项,并不会影响当前从多个资源配置选项中确定新的资源配置选项(目标资源配置选项,不同于已创建的虚拟图形处理器设备对应的资源配置选项)来创建新的虚拟图形处理器设备(目标虚拟图形处理器设备);如此,通过基于资源单元确定的多个资源配置选项来为虚拟机创建虚拟图形处理器设备,不会受到已创建的虚拟图形处理器设备的制约,实现为不同的虚拟机创建具有不同资源大小的虚拟图形处理器设备(vgpu device),灵活分配vgpu资源,满足虚拟机对资源的多种需求,具有良好的灵活性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本申请的实施例,并与说明书一起用于说明本申请的技术方案。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
图1为本申请实施例提供的一种虚拟资源创建方法的实现流程示意图;
图2为本申请实施例提供的又一种虚拟资源创建方法的实现流程示意图;
图3为本申请实施例提供的再一种虚拟资源创建方法的实现流程示意图;
图4为本申请又一实施例提供的一种虚拟资源创建方法的实现流程示意图;
图5为本申请实施例提供的一种创建vgpu device的流程示意图;
图6为本申请实施例提供的又一种创建vgpu device的流程示意图;
图7为本申请实施例提供的一种虚拟资源创建装置的结构示意图;
图8为本申请实施例提供的一种电子设备的硬件实体示意图;
图9为本申请实施例提供的一种芯片的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请的具体技术方案做进一步详细描述。以下实施例用于说明本申请,但不用来限制本申请的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
在以下的描述中,涉及到“一些实施例”、“本实施例”、“本申请实施例”以及举例等等,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
本申请实施例中出现的“第一、第二、第三”等描述,仅作示意与区分描述对象之用,没有次序之分,也不表示本申请实施例中对设备个数的特别限定,不能构成对本申请实施例的任何限制。
在qemu和kvm的虚拟化框架下,可以从厂商提供的mdevctl types列表中选择任一mdevctl type来创建vgpu device给虚拟机使用,以使虚拟机通过创建的vgpu device减轻虚拟机中CPU(中央处理器,Central Processing Unit)的负担;其中,mdevctl type中描述有可创建的vgpu device所具有的资源大小。在实施时,根据不同的mdevctl type所创建的vgpu device中的资源大小是不同的。然而,如果从mdevctl type列表中选择了一种mdevctl type来创建vgpu device给虚拟机使用之后,就不能选择其它的mdevctl type来创建新的vgpu device,只能根据之前已选择的mdevctl type来创建新的vgpu device,也就是说,在已创建过vgpu device的情况下,仅能创建具有同等资源大小的vgpu device。
相关技术中,如果新创建的虚拟机想要拥有不同资源大小的vgpu device,则需要选择不同的mdevctl type来创建vgpu device,具体地:
1、将所有正在运行的虚拟机中的vgpu驱动卸载或者直接关闭所有的虚拟机;
2、销毁所创建的vgpu device;
3、重新从mdevctl type列表中选择新的mdevctl type来创建具有不同资源的vgpu device给虚拟机使用。
然而,不同虚拟机的业务负载(loading)情况是不同的,有的虚拟机负载很重,需要更多的vgpu资源;有的虚拟机负载很轻,不需要那么多的vgpu资源。相关技术中,给不同的虚拟机所分配的vgpu device所拥有的资源大小都是一样的,这样的话,非常不灵活;对于负载重的虚拟机来说,该虚拟机所需要的vgpu资源多,如果分配给该虚拟机的vgpu资源不多的话,会影响该虚拟机的用户体验;对于负载轻的虚拟机来说,该虚拟机所需要的vgpu资源更少,如果分配给该虚拟机的vgpu资源过多,则会导致资源浪费。
由上可知,上述方案做不到弹性分配vgpu资源,给每个虚拟机分配的vgpu device所拥有的资源大小都是一样的,无法根据不同的业务场景给不同的虚拟机分配具有不同资源大小的vgpu device。
基于上述问题,本申请实施例提供了一种虚拟资源创建方法,能够创建不同的vgpu device(即vgpu device)给不同的虚拟机使用,以实现虚拟机对vgpu资源的多种需求。该vgpu device创建方法可以应用于各种电子设备中,该电子设备可以为服务器、笔记本电脑、台式计算机等物理机。
图1为本申请实施例提供的一种虚拟资源创建方法的实现流程示意图,如图1所示,该方法可以包括以下步骤101至步骤103,其中:
步骤101,基于虚拟资源创建请求,从多个资源配置选项中确定目标资源配置选项;其中,所述资源配置选项是基于位于物理显卡上、支持虚拟机实现图像处理功能的资源单元确定;
步骤102,基于所述目标资源配置选项确定目标数量个所述资源单元;
步骤103,基于所述目标数量个资源单元创建目标虚拟图形处理器设备vgpudevice,并基于所述目标虚拟图形处理器设备运行目标虚拟机。
可以理解,一方面,由于多个资源配置选项是基于位于物理显卡上、支持虚拟机实现图像处理功能的资源单元确定的,每一资源配置选项对应的资源单元的数量是不同的,这样通过多个资源配置选项能够创建多个具有不同资源大小的虚拟图形处理器设备(vgpudevice)给不同的虚拟机使用,所分配的虚拟资源(vgpu资源)具有多样性,从而通过多个资源配置选项能够满足虚拟机对资源的多种需求。另一方面,基于资源单元创建的多个资源配置选项之间彼此独立,不会相互制约,可以先后从多个资源配置选项中确定不同的资源配置选项,已创建不同的虚拟图形处理器设备给不同的虚拟机使用;也就是说,如果之前已基于从多个资源配置选项中确定的任一资源配置选项创建过虚拟图形处理器设备,那么当前还是可以继续从多个资源配置选项中再选择一个资源配置选项来创建与之前的虚拟图形处理器设备不同的虚拟图形处理器设备;换句话说,已创建的虚拟图形处理器设备和其对应的资源配置选项,并不会影响当前从多个资源配置选项中确定新的资源配置选项(目标资源配置选项,不同于已创建的虚拟图形处理器设备对应的资源配置选项)来创建新的虚拟图形处理器设备(目标虚拟图形处理器设备);如此,通过基于资源单元确定的多个资源配置选项来为虚拟机创建虚拟图形处理器设备,不会受到已创建的虚拟图形处理器设备的制约,实现为不同的虚拟机创建具有不同资源大小的虚拟图形处理器设备(vgpudevice),灵活分配vgpu资源,满足虚拟机对资源的多种需求,具有良好的灵活性。
以下分别对上述各个步骤的进一步的可选的实施方式以及相关名词等进行说明。
在步骤101中,基于虚拟资源创建请求,从多个资源配置选项中确定目标资源配置选项;其中,所述资源配置选项是基于位于物理显卡上、支持虚拟机实现图像处理功能的资源单元确定。
这里,虚拟资源创建请求用于创建目标虚拟图形处理器设备,以基于目标虚拟图形处理器设备运行目标虚拟机;通俗来讲,虚拟资源创建请求用于为目标虚拟机分配虚拟资源(目标虚拟图形处理器设备)。目标虚拟机为具有虚拟资源获取需求的虚拟机,该目标虚拟机可以是电子设备上新创建的虚拟机,也可以是该电子设备之外的其他设备上新创建的虚拟机。本申请实施例所涉及的虚拟图形处理器设备(vgpu device)中的虚拟资源均来自物理显卡中的资源。资源单元是可分配给虚拟机的最小资源;资源单元可用于划分物理显卡中的资源,也即,资源单元是划分物理显卡中的资源的颗粒度;其中,物理显卡中的资源可以包括但不限于显存资源、算力资源等。
多个资源配置选项用于为虚拟机创建不同的虚拟图形处理器设备;每一资源配置选项对应一种资源大小的虚拟图形处理器设备;示例地,资源配置选项可以为mdevctltype,多个mdevctl type可以组成一个mdevctl types列表。由于每一资源配置选项分别对应不同大小的资源,那么根据每一资源配置选项所创建的虚拟图形处理器设备具有不同大小的资源,也就是说,每一资源配置选项对应的虚拟图形处理器设备具有不同的资源大小,也即,每一资源配置选项对应一种类型的虚拟图形处理器设备,此时的类型是根据虚拟图形处理器设备所具有的资源大小确定的。
目标资源配置选项是基于虚拟资源创建请求,从多个资源配置选项中选取的任一资源配置选项,该目标资源配置选项用于为目标虚拟机创建目标虚拟图形处理器设备,每一资源配置选项中描述有对应的算力资源和显存资源。
在一种可行的实现方式中,可以预先基于资源单元设置好多个资源配置选项;如此,就可以通过mdevctl types命令,获知物理显卡所支持的资源配置选项,进而根据目标虚拟机的业务需求,从多个资源配置选项中确定目标资源配置选项,以为目标虚拟机创建目标虚拟图形处理器设备。
在一些实施例中,可以这样确定资源配置选项:基于支持虚拟机实现图像处理功能的最小资源,确定所述资源单元;基于所述资源单元,确定所述资源配置选项。
这里,支持虚拟机实现图像处理功能的最小资源,是指虚拟机对资源的最小需求,那么基于最小资源确定资源单元,也即是根据虚拟机对资源的最小需求来确定资源单元,这样确定的资源单元能够保障虚拟机对资源的最小需求,进而基于资源单元确定的多个资源配置选项,能够满足虚拟机对资源的更多需求。
可以理解,基于资源单元确定多个资源配置选项,是为了以资源单元为基础,确定多个可用于创建具有不同资源大小的虚拟图形处理器设备的资源配置选项,以通过多个资源配置选项为不同的虚拟机创建具有不同资源大小的虚拟机资源设备,满足虚拟机对资源的多样化需求。
在一种可行的实现方式中,可以基于位于物理显卡上且可实现虚拟机所需的图像处理功能的最小资源,确定资源单元;基于资源单元的倍数关系,确定多个资源配置选项;示例地,若资源单元为512M的显存资源,那么多个资源配置选项可以包括描述有大小为1G的显存资源的资源配置选项1、描述有大小为1.5G的显存资源的资源配置选项2、描述有大小为2G的显存资源的资源配置选项3等。
在一些实施例中,在资源单元中包括算力资源单元的情况下,可以这样确定资源单元:基于所述物理显卡中的图像处理器的硬件条件,确定支持虚拟机实现图像处理功能的最小算力资源;将所述最小算力资源作为所述资源单元中的算力资源单元。
这样,图像处理器可以为物理显卡中的gpu。由于不同虚拟机在处理与图像相关的服务时所需的算力资源是不同的,因此可以基于物理显卡中的图像处理器的硬件条件,确定出图像处理器的算力资源能被划分的最小颗粒度(最小算力资源),以满足虚拟机对算力资源的多种需求;该最小算力资源能够实现虚拟机所需的图像处理功能、且是不可再分割的。算力资源单元是可分配给虚拟机的最小算力资源;直接将可实现虚拟机所需的图像处理功能的最小算力资源确定为算力资源单元,能够保障虚拟机对算力资源的最小需求,基于此,通过将不同个数的算力资源单元进行组合以得到多种不同的算力资源,满足虚拟机在最小算力资源的需求之上的更多算力资源需求。
示例地,如果gpu的总算力资源为2000 tflops(每秒万亿次浮点运算,floatingpoint operations per second),gpu的硬件条件支持将总算力资源划分的最小颗粒度为500 tflops,那么此时的最小算力资源为500 tflops,算力资源单元也为500 tflops。
在其他实施例中,在资源单元中包括显存资源单元的情况下,可以这样确定资源单元:基于至少一个虚拟机的显存资源使用信息,确定支持虚拟机实现图像处理功能的最小显存资源;其中,每一所述显存资源使用信息表征对应的虚拟机在处理与图像相关的服务时所使用的显存资源;基于所述最小显存资源和目标条件,确定所述资源单元中的显存资源单元;其中,所述目标条件包括:所述显存资源单元的大小小于或等于所述最小显存资源的大小。
这样,显存资源使用信息可以包括虚拟机所处理的多个与图像相关的服务、每一服务所使用的显存资源、以及不同时间内显存资源的使用情况等信息。显存资源单元的大小小于或等于最小显存资源的大小,也就是说,显存资源单元的大小可以与虚拟机所需的最小显存资源的大小相同,也可以比虚拟机所需的最小显存资源的大小还要小。由于虚拟机对显存资源的需求较为多变,为了能够满足虚拟机对显存资源的最小需求、且减少显存资源的浪费,在设置显存资源单元时,可以将显存资源单元设置地比最小显存资源的大小还要小。
在一种可行的实现方式中,由于显存资源的大小一般为2的幂次方,因此为便于分配显存资源,可将显存资源单元的大小设置为2的幂次方,此时的目标条件为:显存资源单元的大小小于或等于最小显存资源的大小、且显存资源单元的大小为2的幂次方;这种情况下,显存资源单元的大小不仅要小于或等于最小显存资源的大小,而且必须是2的幂次方。示例地,显存资源单元可以设置为512M(兆字节),此时,显存资源单元的大小为2的9次方;或者,显存资源单元可以设置为1G(千兆字节),1G=1024M,此时,显存资源单元的大小为2的10次方。
可以理解,将目标条件设置为显存资源单元的大小小于或等于最小显存资源的大小、且显存资源单元的大小为2的幂次方的原因在于:一方面,虚拟机在处理与图像相关的服务时,对显存资源的需求较少,因此为减少显存资源的浪费,使显存资源单元的大小要不大于最小显存资源的大小;另一方面,电子设备中的显存资源的大小一般均为2的幂次方,因此为便于后续对物理显卡的显存资源进行划分,将显存资源单元的大小设置为2的幂次方;从而,显存资源单元在减少显存资源浪费的基础上,还保障了虚拟机对显存资源的最小需求,基于此,通过将不同个数的显存资源单元进行组合以得到多种不同的显存资源,满足虚拟机在对最小显存资源的需求之上的更多显存资源需求。
需要说明的是,目标条件不局限于显存资源单元的大小不大于最小显存资源的大小、且显存资源单元的大小为2的幂次方,还可以根据实际业务场景和硬件条件对目标条件进行进一步地扩充,如可以补充:显存资源单元的大小不能设置为0。
在一些实施例中,在资源单元包括算力资源单元和显存资源单元的情况下,可以这样确定多个资源配置选项:基于所述算力资源单元和所述物理显卡中的图像处理器的总算力资源,确定多个算力资源选项;基于所述显存资源单元和所述物理显卡的总显存资源,确定多个显存资源选项;基于每一所述算力资源选项和每一所述显存资源选项,确定所述多个资源配置选项。
这样,物理显卡中的图像处理器的总算力资源可以是物理显卡中的gpu的总算力资源;物理显卡的总显存资源可以是物理显卡的显存(video memory)的总显存资源。
可以理解,先确定多个算力资源选项和多个显存资源选项,再根据每一算力资源选项和每一显存资源选项确定多个资源配置选项,以得到物理显卡中算力资源与显存资源之间的所有组合关系,基于每一组合关系确定多个资源配置选项,将物理显卡所具有的资源组合均确定出来,便于后续创建多个具有不同资源大小的虚拟图形处理器设备。
在一种可行的实现方式中,获取总算力资源和总显存资源的操作可以为:在主机操作系统(Host Operating System,host os)中加载gpu host驱动(物理显卡的驱动),在物理显卡的驱动加载的过程中,初始化物理显卡,获取物理显卡中的总显存资源和该物理显卡的gpu(图形处理器)的总显存资源。
在一种可行的实现方式中,确定多个算力资源选项的操作可以为:可以基于算力资源单元的大小和总算力资源的大小,确定多个算力资源选项;示例地,若算力资源单元的大小为500 tflops,总算力资源的大小为2000 tflops ,那么多个算力资源选项可以为:500 tflops、1000 tflops、1500 tflops、2000 tflops。
在一种可行的实现方式中,确定多个显存资源选项的操作可以为:可以基于显存资源单元的大小和总显存资源的大小,确定多个显存资源选项;示例地,若显存资源单元的大小为512M,总算力资源的大小为2G,那么多个算力资源选项可以为:512M、1G、1.5G、2G。
在一种可行的实现方式中,确定多个资源配置选项的操作可以为:基于多个显存资源选项和多个算力资源选项确定多个资源配置选项;示例地,若多个显存资源选项为512M、1G,多个算力资源选项为500 tflops、1000 tflops,那么确定的多个资源配置选项可以为:包括512M的显存资源和500 tflops的算力资源的资源配置选项1、包括512M的显存资源和1000 tflops的算力资源的资源配置选项2、包括1G的显存资源和500tflops的算力资源的资源配置选项3、及包括1G的显存资源和1000 tflops的算力资源的资源配置选项4。
进一步地,在一些实施例中,确定算力资源单元后,可以这样确定算力资源池:基于所述资源单元中的算力资源单元,对所述物理显卡中的图像处理器的总算力资源进行划分,得到至少一个第一算力资源单元,并基于每一所述第一算力资源单元构建所述算力资源池;
同理,确定显存资源单元后,可以这样确定显存资源池:基于所述资源单元中的显存资源单元,对所述物理显卡的总显存资源进行划分,得到至少一个第一显存资源单元,并基于每一所述第一显存资源单元构建所述显存资源池。
这样,基于算力资源单元对物理显卡中的图像处理器的总算力资源进行划分,是将算力资源单元作为划分标准来对总算力资源进行划分的,以得到至少一个第一算力资源单元,进而基于至少一个第一算力资源单元构建出算力资源池,其中,每一第一算力资源单元的大小与算力资源单元的大小相同。基于显存资源单元对物理显卡中的图像处理器的总显存资源进行划分,是将显存资源单元作为划分标准来对总显存资源进行划分的,以得到至少一个第一显存资源单元,进而基于至少一个第一显存资源单元构建出显存资源池,其中,每一第一显存资源单元的大小与显存资源单元的大小相同。
可以理解,构建算力资源池和显存资源池,是为了便于管理物理显卡中的算力资源和显存资源,并为后续创建不同的虚拟图形处理器设备给不同的虚拟机使用来做准备,进而通过将算力资源池中的多个算力资源单元和显存资源池中的多个显存资源单元进行组合,实现为资源需求较多的虚拟机分配较多的资源,为资源需求较少的虚拟机分配较少的资源,不会存在相关技术中为不同资源需求的虚拟机均分配相同的资源而导致的资源浪费。
在步骤102中,基于所述目标资源配置选项确定目标数量个所述资源单元。
这样,每一资源配置选项中描述有对应的虚拟图形处理器设备所具有的资源大小。示例地,目标资源配置选项可以包括目标算力资源和目标显存资源,那么基于目标资源配置选项创建的目标虚拟图形处理器设备包括目标算力资源和目标显存资源。
在一些实施例中,在目标配置选项中包括目标算力资源和目标显存资源的情况下,可以这样确定目标数量个资源单元:基于所述目标算力资源,从算力资源池的至少一个第一算力资源单元中确定至少一个目标第一算力资源单元;其中,每一所述目标第一算力资源单元的大小的和、与所述目标算力资源的大小匹配;
然后,基于所述目标显存资源,从显存资源池的至少一个第一显存资源单元中确定至少一个目标第一显存资源单元;其中,每一所述目标第一显存资源单元的大小的和、与所述目标显存资源的大小匹配;将所述至少一个目标第一算力资源单元和所述至少一个目标第一显存资源单元作为所述目标数量个资源单元。
这样,目标数量个资源单元是根据目标资源配置选项确定的至少一个资源单元;目标数量个资源单元可以包括至少一个目标第一算力资源单元和/或至少一个目标第一显存资源单元。至少一个目标第一算力资源单元是根据目标算力资源从算力资源池中选取出的至少一个第一算力资源单元。至少一个目标第一显存资源单元是根据目标显存资源从显存资源池中选取出的至少一个第一显存资源单元。
可以理解,每一目标第一算力资源单元的大小的和、与目标算力资源的大小匹配,是指从算力资源池中确定的至少一个目标第一算力资源单元的大小的和近似于目标算力资源的大小;例如,目标算力资源的大小为1000 tflops,每一第一算力资源单元的大小为500 tflops,共需2个目标第一算力资源单元,那么这2个目标第一算力资源单元的大小之和为1000 tflops。同理,每一目标第一显存资源单元的大小的和、与目标显存资源的大小匹配,是指从显存资源池中确定的至少一个目标第一显存资源单元的大小的和近似于目标显存资源的大小;例如,目标显存资源为2G,每一第一显存资源单元的大小为512M,共需4个目标第一显存资源单元,那么这4个目标第一显存资源单元的大小之和为2G。
具体地,在一些实施例中,可以这样确定至少一个目标第一算力资源单元:基于所述算力资源池中的每一所述第一算力资源单元的状态,从每一所述第一算力资源单元中确定至少一个第二算力资源单元,并基于所述目标算力资源,从所述至少一个第二算力资源单元中确定所述至少一个目标第一算力资源单元;
相应地,可以这样确定至少一个目标第一显存资源单元:基于所述显存资源池中的每一所述第一显存资源单元的状态,从每一所述第一显存资源单元中确定至少一个第二显存资源单元;基于所述目标显存资源,从所述至少一个第二显存资源单元中确定所述至少一个目标第一显存资源单元。
这里,第一算力资源单元的状态可以包括但不限于被使用状态、未使用状态等;第一显存资源单元的状态可以包括但不限于被使用状态、未使用状态等。至少一个第二算力资源单元是从算力资源池中确定的未使用的至少一个第一算力资源单元;至少一个第二显存资源单元从显存资源池中确定的未使用的至少一个第一显存资源单元。
可以理解,标记第一算力资源单元的状态和第一显存资源单元的状态,是为了便于获知当前未使用的第一算力资源单元和未使用的第一显存资源单元,进而从未使用的第一算力资源单元中确定出当前创建目标虚拟图形处理器设备所需的至少一个目标第一算力资源单元、和从未使用的第一显存资源单元中确定出当前创建目标虚拟图形处理器设备所需的至少一个目标第一显存资源单元。
在一种可行的实现方式中,可以先基于算力资源池中的每一第一算力资源单元的状态,确定将算力资源池中未使用的多个第一算力资源单元分别作为一个第二算力资源单元,再按照随机、使用频率、自定义、顺序等选取方式,从多个第二算力资源单元中确定至少一个目标第一算力资源单元。
在一种可行的实现方式中,可以先基于显存资源池中的每一第一显存资源单元的状态,确定将显存资源池中未使用的多个第一显存资源单元分别作为一个第二显存资源单元,再按照随机、使用频率、自定义、顺序等选取方式,从多个第二显存资源单元中确定至少一个目标第一显存资源单元。
在步骤103中,基于所述目标数量个资源单元创建目标虚拟图形处理器设备,并基于所述目标虚拟图形处理器设备运行目标虚拟机。
其中,所述目标虚拟图形处理器设备的资源大小不同于至少一个已创建的虚拟图形处理器设备的资源大小。
这样,目标虚拟图形处理器设备的资源大小不同于至少一个已创建的虚拟图形处理器设备的资源大小,说明之前已经根据资源配置选项创建过虚拟图形处理器设备了,这种情况下,还是可以从多个资源配置选项中确定目标资源配置选项来为目标虚拟机创建目标虚拟图形处理器设备,也就是说,已创建的虚拟图形处理器设备和其对应的资源配置选项,并不会影响当前从多个资源配置选项中确定新的资源配置选项(目标资源配置选项,不同于已创建的虚拟图形处理器设备对应的资源配置选项)来创建新的虚拟图形处理器设备(目标虚拟图形处理器设备);如此,通过基于资源单元确定的多个资源配置选项来为虚拟机创建虚拟图形处理器设备,不会受到已创建的虚拟图形处理器设备的制约,实现为不同的虚拟机创建具有不同资源大小的虚拟图形处理器设备(vgpu device),灵活分配vgpu资源,满足虚拟机对资源的多种需求,具有良好的灵活性。基于目标数量个资源单元创建目标虚拟图形处理器设备,实际是根据目标资源配置选项中描述的资源大小来创建目标虚拟图形处理器设备给目标虚拟机。
在一种可行的实现方式中,可以从多个资源配置选项中确定目标资源配置选项后,基于目标资源配置选项确定目标数量个资源单元,并基于目标数量个资源单元创建目标虚拟图形处理器设备;具体地,可通过mdev框架,基于目标数量个资源单元创建目标虚拟图形处理器设备。
在一些实施例中,在目标虚拟图形处理器设备中包括至少一个目标第一显存资源单元的情况下,可以这样基于目标虚拟图形处理器设备运行目标虚拟机:启动目标虚拟机;利用预设的内存映射接口,将至少一个目标第一显存资源单元映射到目标虚拟机中,以基于目标虚拟图形处理器设备运行目标虚拟机。
这样,预设的内存映射接口可以为用户态设备驱动(Virtual Function IO,VFIO)框架的存储映象(Memory Mapped,mmap)接口。
在一种可行的实现方式中,可以通过qemu启动虚拟机,在启动虚拟机的时候,调用VFIO框架的mmap接口,将目标虚拟图形处理器设备的显存资源映射到目标虚拟机中。
具体地,在一些实施例中,可以这样将至少一个目标第一显存资源单元映射到目标虚拟机中:在所述至少一个目标第一显存资源单元为连续的多个第一显存资源单元的情况下,将所述至少一个目标第一显存资源单元整体映射到所述目标虚拟机中,以基于所述目标虚拟图形处理器设备运行所述目标虚拟机;在所述至少一个目标第一显存资源单元为不连续的多个第一显存资源单元的情况下,将所述至少一个目标第一显存资源单元分段映射到所述目标虚拟机中,以基于所述目标虚拟图形处理器设备运行所述目标虚拟机。
可以理解,在至少一个目标第一显存资源单元为连续的多个第一显存资源单元的情况下,将至少一个目标第一显存资源单元整体映射到目标虚拟机中,能够提高映射的速率。由于创建目标虚拟图形处理器设备时使用的目标第一显存资源单元存在不连续的情况,因此需要将不连续的目标第一显存资源单元进行分段映射,以保证映射的准确性和可靠性。
本申请实施例再提供一种虚拟资源创建方法,应用于为虚拟机分配包括算力资源和显存资源的虚拟图形处理器设备的场景,图2为本申请实施例提供的一种虚拟资源创建方法的实现流程示意图,如图2所示,该方法包括如下步骤201至步骤211,其中:
步骤201,确定算力资源单元和显存资源单元。
步骤202,基于算力资源单元和物理显卡中的图像处理器的总算力资源,确定多个算力资源选项。
步骤203,基于显存资源单元和物理显卡的总显存资源,确定多个显存资源选项。
步骤204,基于每一算力资源选项和每一显存资源选项,确定多个资源配置选项。
步骤205,基于算力资源单元对物理显卡中的图像处理器的总算力资源进行划分,得到至少一个第一算力资源单元,并基于每一第一算力资源单元构建算力资源池。
步骤206,基于显存资源单元对物理显卡的总显存资源进行划分,得到至少一个第一显存资源单元,并基于每一第一显存资源单元构建显存资源池。
步骤207,基于虚拟资源创建请求,从多个资源配置选项中确定目标资源配置选项。
步骤208,基于目标资源配置选项中的目标算力资源,从算力资源池的至少一个第一算力资源单元中确定至少一个目标第一算力资源单元;其中,每一目标第一算力资源单元的大小的和、与目标算力资源的大小匹配。
步骤209,基于目标资源配置选项中的目标显存资源,从显存资源池的至少一个第一显存资源单元中确定至少一个目标第一显存资源单元;其中,每一目标第一显存资源单元的大小的和、与目标显存资源的大小匹配。
步骤210,基于每一目标第一算力资源单元和每一目标第一显存资源单元,创建目标虚拟图形处理器设备。
步骤211,将目标虚拟图形处理器设备透传至目标虚拟机,以基于所述目标虚拟图形处理器设备运行目标虚拟机;其中,目标虚拟图形处理器设备的资源大小不同于至少一个已创建的虚拟图形处理器设备的资源大小。
本申请实施例又提供一种虚拟资源创建方法,应用于为虚拟机分配仅包括显存资源的虚拟图形处理器设备的场景,图3为本申请实施例提供的一种虚拟资源创建方法的实现流程示意图,如图3所示,该方法包括如下步骤301至步骤308,其中:
步骤301,确定显存资源单元。
步骤302,基于显存资源单元和物理显卡的总显存资源,确定多个显存资源选项。
步骤303,基于每一显存资源选项,确定多个资源配置选项。
步骤304,基于显存资源单元对物理显卡的总显存资源进行划分,得到至少一个第一显存资源单元,并基于每一第一显存资源单元构建显存资源池。
步骤305,基于虚拟资源创建请求,从多个资源配置选项中确定目标资源配置选项。
步骤306,基于目标资源配置选项中的目标显存资源,从显存资源池的至少一个第一显存资源单元中确定至少一个目标第一显存资源单元;其中,每一目标第一显存资源单元的大小的和、与目标显存资源的大小匹配。
步骤307,基于至少一个目标第一显存资源单元,创建目标虚拟图形处理器设备。
步骤308,将目标虚拟图形处理器设备透传至目标虚拟机,以基于目标虚拟图形处理器设备运行目标虚拟机;其中,目标虚拟图形处理器设备的资源大小不同于至少一个已创建的虚拟图形处理器设备的资源大小。
本申请实施例又提供一种虚拟资源创建方法,应用于为虚拟机分配仅包括算力资源的虚拟图形处理器设备的场景,图4为本申请实施例提供的一种虚拟资源创建方法的实现流程示意图,如图4所示,该方法包括如下步骤401至步骤408,其中:
步骤401,确定算力资源单元。
步骤402,基于算力资源单元和物理显卡的总算力资源,确定多个算力资源选项。
步骤403,基于每一算力资源选项,确定多个资源配置选项。
步骤404,基于算力资源单元对物理显卡的总算力资源进行划分,得到至少一个第一算力资源单元,并基于每一第一算力资源单元构建算力资源池。
步骤405,基于虚拟资源创建请求,从多个资源配置选项中确定目标资源配置选项。
步骤406,基于目标资源配置选项中的目标算力资源,从算力资源池的至少一个第一算力资源单元中确定至少一个目标第一算力资源单元;其中,每一目标第一算力资源单元的大小的和、与目标算力资源的大小匹配。
步骤407,基于至少一个目标第一算力资源单元,创建目标虚拟图形处理器设备。
步骤408,将目标虚拟图形处理器设备透传至目标虚拟机,以基于目标虚拟图形处理器设备运行目标虚拟机;其中,目标虚拟图形处理器设备的资源大小不同于至少一个已创建的虚拟图形处理器设备的资源大小。
下面将说明本申请实施例在一个实际的应用场景中的示例性应用。在实际的应用场景中,会将虚拟图形处理器设备称之为vgpu device。
1. 在linux系统上加载gpu host驱动(物理显卡的驱动)。
a) 加载gpu host 驱动进行gpu device初始化的过程中,会获取该物理显卡的gpu算力资源(总算力资源)和总显存资源,并分别创建该物理显卡的算力资源池和显存资源池,以管理物理显卡中的资源,并为后续创建vgpu device做准备;
i. 创建显存资源池:显存资源单元的设置条件:小于或等于虚拟机所需的最小显存资源;显存资源单元的大小为2的幂次方;还可以根据业务场景和硬件条件来设置;如,以显存资源单元为256M来划分总显存资源(video memory),并将划分后的第一显存资源单元放到显存资源池中,以形成显示资源池。显存资源池中的每一第一显存资源单元会根据资源使用情况标记为被使用状态或未使用状态。
ii. 创建算力资源池:根据能完成虚拟机中的gpu功能的最小算力资源确定算力资源单元;以算力资源单元划分物理显卡所拥有的总算力资源,并将划分后的第一算力资源单元放到算力资源池中,以形成算力资源池。算力资源池中的每一第一算力资源单元会根据资源使用情况标记为被使用状态或未使用状态。
2.在linux系统上根据mdevctl type创建vgpu device,并将vgpu device给虚拟机使用;
a) 创建指定mdevctl type(比如1G的显存资源,500 tflops的算力资源)的vgpudevice;
i. gpu host驱动会根据选择的mdevctl type中描述的显存资源(目标显存资源),从gpu host驱动管理的显存资源池中取出该vgpu device所需要的显存资源(至少一个目标第一显存资源),并分配给该vgpu device;如,从显存资源池中分配1G的显存资源给该vgpu device,并保存分配的显存资源的相关信息;
ii. gpu host驱动会根据选择的mdevctl type中描述的算力资源(目标算力资源),从算力资源池中取出该vgpu device所需要的算力资源(至少一个目标第一算力资源),并分配给该vgpu device。
b) 创建完该vgpu device之后,启动目标虚拟机将该vgpu device透传给目标虚拟机;
i. 在qemu启动虚拟机的时候,会调用VFIO框架的mmap接口,映射vgpu device的显存资源(例如,memory bar(内存条)2),该接口最终会调到gpu host驱动。在gpu host驱动中会判断前面分配给该vgpu device的显存资源是否是连续的多个第一显存资源单元;若分配给该vgpu device的显存资源不是连续的多个第一显存资源单元,则分成几块连续的内存段,分段映射该vgpu device的显存资源至目标虚拟机。若分配给该vgpu device的显存资源是连续的,则作为一个整体一起映射该vgpu device的显存资源至目标虚拟机。
ii. vgpu device中的算力资源是可以直接由虚拟机使用的。
iii. 虚拟机启动成功,在虚拟机里面加载gpu guest 驱动,在虚拟机里面利用vgpu 做编解码和渲染工作。
c) 创建不同的mdevctl type(比如2G的显存资源,500 tflops的算力资源)的新的vgpu device;
i. 从显存资源池中取出不同的mdevctl type对应的显存资源给新的vgpudevice,并保存分配的显存资源的相关信息;
ii. 从算力资源池中取出不同的mdevctl type对应的算力资源给新的vgpudevice;
d) 创建完新的vgpu device之后,启动新的虚拟机将新的vgpu device透传给新的虚拟机。
图5为本申请实施例提供的一种创建vgpu device的流程示意图;具体地,如图5所示,创建vgpu device的操作可以包括如下步骤501至步骤507:
步骤501,加载gpu host驱动(物理显卡驱动)。
步骤502,gpu device初始化的过程中,获取该物理显卡的总算力资源(gpu的算力资源)和总显存资源,若成功获取总算力资源和总显存资源,则进入步骤503;若gpu device初始化失败和/或未成功获取总算力资源和总显存资源,则进入步骤507。
步骤503,创建显存资源池和算力资源池,以管理物理显卡中的资源;若显存资源池和算力资源池创建成功,则进入步骤504;若显存资源池和算力资源池创建失败,则进入步骤507。
步骤504,通过mdev框架接口创建vgpu device。
步骤505,判断vgpu device是否创建成功,若vgpu device创建失败,则进入步骤507;若vgpu device创建成功,则进入步骤506。
步骤506,将vgpu device透传给虚拟机。
步骤507,驱动加载失败。
图6为本申请实施例提供的一种创建vgpu device的流程示意图;具体地,如图6所示,创建vgpu device的操作可以包括如下步骤601至步骤606:
步骤601,从mdevctl types列表中确定目标mdevctl type。
步骤602,从显存资源池中选取出该目标mdevctl type对应的显存资源,从算力资源池中选取出该目标mdevctl type对应的算力资源;若成功选取出该目标mdevctl type对应的显存资源和算力资源,则进入步骤603;若未成功选取出该目标mdevctl type对应的显存资源和算力资源,则进入步骤606。
步骤603,确定vgpu device常规的硬件初始化是否成功,硬件初始化包括但不限于:中断初始化、寄存器配置等;若硬件初始化成功,则进入步骤604;若硬件初始化失败,则进入步骤606。
步骤604,根据选取出的显存资源和算力资源创建vgpu device。
步骤605,通过qemu启动虚拟机,将vgpu device透传给虚拟机使用。
步骤606,创建vgpu device失败。
本申请实施例提供的虚拟资源创建方法,预先将物理显卡的总算力资源划分为多个算力资源单元,将物理显卡的总显存资源划分为多个显存资源单元,并基于多个算力资源单元构建算力资源池,基于多个显存资源单元构建多个显存资源池;根据多个算力资源单元和多个显存资源单元构建多个资源配置选项;如此,通过多个资源配置选项能够随时为虚拟机创建不同的vgpu device,不需要暂停虚拟机上正在运行的业务、不需要关闭虚拟机、不需要销毁已经创建的vgpu device,就可以重新创建不同mdevctl type类型的vgpudevice。可以给不同虚拟机创建具有不同资源大小的vgpu device,并透传给不同虚拟机使用;如,业务负载重的虚拟机可以透传具有更多gpu资源的vgpu device,业务负载轻的虚拟机可以透传具有更少资源的vgpu device,如此按照虚拟机的业务需求为不同的虚拟机创建不同的vgpu device,还能够避免因资源分配过多或过少而导致的资源浪费,也不会出现因资源分配不够而影响用户体验的情况。
应当注意,尽管在附图中以特定顺序描述了本申请中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等;或者,将不同实施例中步骤组合为新的技术方案。
基于前述的实施例,本申请实施例提供一种虚拟资源创建装置,该装置包括所包括的各模块、以及各模块所包括的各单元,可以通过处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为AI加速引擎(如NPU等)、gpu、CPU、微处理器(MPU)、数字信号处理器(DSP)或现场可编程门阵列(FPGA)等等。
图7为本申请实施例提供的一种虚拟资源创建装置的结构示意图,如图7所示,虚拟资源创建装置70包括:
确定模块701,配置成基于虚拟资源创建请求,从多个资源配置选项中确定目标资源配置选项;其中,所述资源配置选项是基于位于物理显卡上、支持虚拟机实现图像处理功能的资源单元确定;
确定模块701,配置成基于所述目标资源配置选项确定目标数量个所述资源单元;
处理模块702,配置成基于所述目标数量个资源单元创建目标虚拟图形处理器设备,并基于所述目标虚拟图形处理器设备运行目标虚拟机。
在一些实施例中,确定模块701配置成:基于支持虚拟机实现图像处理功能的最小资源,确定所述资源单元;基于所述资源单元,确定所述资源配置选项。
在一些实施方式中,所述资源单元中包括算力资源单元;确定模块701配置成:基于所述物理显卡中的图像处理器的硬件条件,确定支持虚拟机实现图像处理功能的最小算力资源;将最小算力资源作为资源单元中的算力资源单元。
在一些实施方式中,所述资源单元中包括显存资源单元;确定模块701配置成:基于至少一个虚拟机的显存资源使用信息,确定支持虚拟机实现图像处理功能的最小显存资源;其中,每一所述显存资源使用信息表征对应的虚拟机在处理与图像相关的服务时所使用的显存资源;基于所述最小显存资源和目标条件,确定所述资源单元中的显存资源单元;其中,所述目标条件包括:所述显存资源单元的大小小于或等于所述最小显存资源的大小。
在一些实施方式中,所述资源单元中包括算力资源单元和显存资源单元;处理模块702配置成:基于所述算力资源单元和所述物理显卡中的图像处理器的总算力资源,确定多个算力资源选项;基于所述显存资源单元和所述物理显卡的总显存资源,确定多个显存资源选项;基于每一所述算力资源选项和每一所述显存资源选项,确定所述资源配置选项。
在一些实施方式中,所述目标资源配置选项中包括目标算力资源和目标显存资源;处理模块702配置成:基于所述目标算力资源,从算力资源池的至少一个第一算力资源单元中确定至少一个目标第一算力资源单元;其中,每一所述目标第一算力资源单元的大小的和、与所述目标算力资源的大小匹配;基于所述目标显存资源,从显存资源池的至少一个第一显存资源单元中确定至少一个目标第一显存资源单元;其中,每一所述目标第一显存资源单元的大小的和、与所述目标显存资源的大小匹配;将所述至少一个目标第一算力资源单元和所述至少一个目标第一显存资源单元作为所述目标数量个资源单元。
在一些实施方式中,处理模块702配置成:基于所述算力资源池中的每一所述第一算力资源单元的状态,从每一所述第一算力资源单元中确定至少一个第二算力资源单元,并基于所述目标算力资源,从所述至少一个第二算力资源单元中确定所述至少一个目标第一算力资源单元;
相应地,处理模块702配置成:基于所述显存资源池中的每一所述第一显存资源单元的状态,从每一所述第一显存资源单元中确定至少一个第二显存资源单元;基于所述目标显存资源,从所述至少一个第二显存资源单元中确定所述至少一个目标第一显存资源单元。
在一些实施方式中,所述资源单元中包括算力资源单元和显存资源单元;处理模块702配置成:基于所述资源单元中的算力资源单元,对所述物理显卡中的图像处理器的总算力资源进行划分,得到至少一个第一算力资源单元,并基于每一所述第一算力资源单元构建所述算力资源池;基于所述资源单元中的显存资源单元,对所述物理显卡的总显存资源进行划分,得到至少一个第一显存资源单元,并基于每一所述第一显存资源单元构建所述显存资源池。
在一些实施方式中,所述目标虚拟图形处理器设备中包括至少一个目标第一显存资源单元;处理模块702配置成:在所述至少一个目标第一显存资源单元为连续的多个第一显存资源单元的情况下,将所述至少一个目标第一显存资源单元整体映射到所述目标虚拟机中,以基于所述目标虚拟图形处理器设备运行所述目标虚拟机;在所述至少一个目标第一显存资源单元为不连续的多个第一显存资源单元的情况下,将所述至少一个目标第一显存资源单元分段映射到所述目标虚拟机中,以基于所述目标虚拟图形处理器设备运行所述目标虚拟机。
在一些实施方式中,所述目标虚拟图形处理器设备的资源大小不同于至少一个已创建的虚拟图形处理器设备的资源大小。
以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
需要说明的是,本申请实施例中图7所示的虚拟资源创建装置对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。也可以采用软件和硬件结合的形式实现。
需要说明的是,本申请实施例中,如果以软件功能模块的形式实现上述的方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得电子设备执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本申请实施例不限制于任何特定的硬件和软件结合。
本申请实施例提供一种电子设备,图8为本申请实施例提供的电子设备的硬件实体示意图,如图8所示,电子设备80包括第一存储器801和第一处理器802,第一存储器801存储有可在第一处理器802上运行的计算机程序,第一处理器802执行所述程序时实现本申请实施例所述的方法。
需要说明的是,第一存储器801配置为存储由第一处理器802可执行的指令和应用,还可以缓存在第一处理器802以及电子设备80中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过闪存(FLASH)或随机访问存储器(Random Access Memory,RAM)实现。
在本申请实施例中,电子设备80在实施本申请实施例所述的vgpu device创建方法的过程中,可以是各种类型的具有信息处理能力的设备,例如电子设备80可以包括手机、平板电脑、台式机、笔记本电脑、主机等。
本申请实施例提供一种芯片,图9为本申请实施例提供的芯片的结构示意图,如图9所示,芯片90包括第二存储器901和第二处理器902,第二存储器901存储有可在第二处理器902上运行的计算机程序,第二处理器902执行所述程序时实现本申请实施例所述的方法。
本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中提供的方法中的步骤。
本申请实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述方法实施例提供的方法中的步骤。
这里需要指出的是:以上存储介质、芯片实施例和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请存储介质、存储介质和设备实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”或“一些实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”或“在一些实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如对象A和/或对象B,可以表示:单独存在对象A,同时存在对象A和对象B,单独存在对象B这三种情况。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者设备中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个模块或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的模块可以是、或也可以不是物理上分开的,作为模块显示的部件可以是、或也可以不是物理模块;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部模块来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能模块可以全部集成在一个处理单元中,也可以是各模块分别单独作为一个单元,也可以两个或两个以上模块集成在一个单元中;上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得电子设备执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本申请的实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (13)
1.一种虚拟资源创建方法,其特征在于,所述方法包括:
基于虚拟资源创建请求,从多个资源配置选项中确定目标资源配置选项;其中,所述资源配置选项是基于位于物理显卡上、支持虚拟机实现图像处理功能的资源单元确定;
基于所述目标资源配置选项确定目标数量个所述资源单元;
基于所述目标数量个资源单元创建目标虚拟图形处理器设备,并基于所述目标虚拟图形处理器设备运行目标虚拟机;所述目标虚拟图形处理器设备的资源大小不同于至少一个已创建的虚拟图形处理器设备的资源大小。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于支持虚拟机实现图像处理功能的最小资源,确定所述资源单元;
基于所述资源单元,确定所述资源配置选项。
3.根据权利要求2所述的方法,其特征在于,所述资源单元中包括算力资源单元;
所述基于支持虚拟机实现图像处理功能的最小资源,确定所述资源单元,包括:
基于所述物理显卡中的图像处理器的硬件条件,确定支持虚拟机实现图像处理功能的最小算力资源;
将所述最小算力资源作为所述资源单元中的算力资源单元。
4.根据权利要求2所述的方法,其特征在于,所述资源单元中包括显存资源单元;
所述基于支持虚拟机实现图像处理功能的最小资源,确定所述资源单元,包括:
基于至少一个虚拟机的显存资源使用信息,确定支持虚拟机实现图像处理功能的最小显存资源;其中,每一所述显存资源使用信息表征对应的虚拟机在处理与图像相关的服务时所使用的显存资源;
基于所述最小显存资源和目标条件,确定所述资源单元中的显存资源单元;其中,所述目标条件包括:所述显存资源单元的大小小于或等于所述最小显存资源的大小。
5.根据权利要求2至4中任一项所述的方法,其特征在于,所述资源单元中包括算力资源单元和显存资源单元;
所述基于所述资源单元,确定所述资源配置选项,包括:
基于所述算力资源单元和所述物理显卡中的图像处理器的总算力资源,确定多个算力资源选项;
基于所述显存资源单元和所述物理显卡的总显存资源,确定多个显存资源选项;
基于每一所述算力资源选项和每一所述显存资源选项,确定所述资源配置选项。
6.根据权利要求1所述的方法,其特征在于,所述目标资源配置选项中包括目标算力资源和目标显存资源;
所述基于所述目标资源配置选项确定目标数量个所述资源单元,包括:
基于所述目标算力资源,从算力资源池的至少一个第一算力资源单元中确定至少一个目标第一算力资源单元;其中,每一所述目标第一算力资源单元的大小的和、与所述目标算力资源的大小匹配;
基于所述目标显存资源,从显存资源池的至少一个第一显存资源单元中确定至少一个目标第一显存资源单元;其中,每一所述目标第一显存资源单元的大小的和、与所述目标显存资源的大小匹配;
将所述至少一个目标第一算力资源单元和所述至少一个目标第一显存资源单元作为所述目标数量个资源单元。
7.根据权利要求6所述的方法,其特征在于,
所述基于所述目标算力资源,从算力资源池的至少一个第一算力资源单元中确定至少一个目标第一算力资源单元,包括:基于所述算力资源池中的每一所述第一算力资源单元的状态,从每一所述第一算力资源单元中确定至少一个第二算力资源单元,并基于所述目标算力资源,从所述至少一个第二算力资源单元中确定所述至少一个目标第一算力资源单元;
所述基于所述目标显存资源,从显存资源池的至少一个第一显存资源单元中确定至少一个目标第一显存资源单元,包括:基于所述显存资源池中的每一所述第一显存资源单元的状态,从每一所述第一显存资源单元中确定至少一个第二显存资源单元;基于所述目标显存资源,从所述至少一个第二显存资源单元中确定所述至少一个目标第一显存资源单元。
8.根据权利要求6所述的方法,其特征在于,所述资源单元中包括算力资源单元和显存资源单元;所述方法还包括:
基于所述资源单元中的算力资源单元,对所述物理显卡中的图像处理器的总算力资源进行划分,得到至少一个第一算力资源单元,并基于每一所述第一算力资源单元构建所述算力资源池;
基于所述资源单元中的显存资源单元,对所述物理显卡的总显存资源进行划分,得到至少一个第一显存资源单元,并基于每一所述第一显存资源单元构建所述显存资源池。
9.根据权利要求6至8中任一项所述的方法,其特征在于,所述目标虚拟图形处理器设备中包括至少一个目标第一显存资源单元;
所述基于所述目标虚拟图形处理器设备运行目标虚拟机,包括:
在所述至少一个目标第一显存资源单元为连续的多个第一显存资源单元的情况下,将所述至少一个目标第一显存资源单元整体映射到所述目标虚拟机中,以基于所述目标虚拟图形处理器设备运行所述目标虚拟机;
在所述至少一个目标第一显存资源单元为不连续的多个第一显存资源单元的情况下,将所述至少一个目标第一显存资源单元分段映射到所述目标虚拟机中,以基于所述目标虚拟图形处理器设备运行所述目标虚拟机。
10.一种虚拟资源创建装置,其特征在于,所述装置包括:
确定模块,配置成基于虚拟资源创建请求,从多个资源配置选项中确定目标资源配置选项;其中,所述资源配置选项是基于位于物理显卡上、支持虚拟机实现图像处理功能的资源单元确定;
所述确定模块,配置成基于所述目标资源配置选项确定目标数量个所述资源单元;
处理模块,配置成基于所述目标数量个资源单元创建目标虚拟图形处理器设备,并基于所述目标虚拟图形处理器设备运行目标虚拟机;所述目标虚拟图形处理器设备的资源大小不同于至少一个已创建的虚拟图形处理器设备的资源大小。
11.一种电子设备,包括第一存储器和第一处理器,所述第一存储器存储有可在第一处理器上运行的计算机程序,其特征在于,所述第一处理器执行所述程序时实现权利要求1至9任一项所述的方法。
12.一种芯片,所述芯片包括第二存储器和第二处理器,所述第二存储器存储有可在第二处理器上运行的计算机程序,其特征在于,所述第二处理器执行所述程序时实现权利要求1至9任一项所述的方法。
13.一种存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311037854.2A CN116755843B (zh) | 2023-08-17 | 2023-08-17 | 虚拟资源创建方法及装置、电子设备、芯片、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311037854.2A CN116755843B (zh) | 2023-08-17 | 2023-08-17 | 虚拟资源创建方法及装置、电子设备、芯片、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116755843A CN116755843A (zh) | 2023-09-15 |
CN116755843B true CN116755843B (zh) | 2023-12-19 |
Family
ID=87948208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311037854.2A Active CN116755843B (zh) | 2023-08-17 | 2023-08-17 | 虚拟资源创建方法及装置、电子设备、芯片、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116755843B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021098182A1 (zh) * | 2019-11-20 | 2021-05-27 | 上海商汤智能科技有限公司 | 资源管理方法和装置、电子设备及存储介质 |
CN113672344A (zh) * | 2021-08-05 | 2021-11-19 | 浪潮云信息技术股份公司 | 一种基于OpenStack平台创建多规格vGPU虚拟机灵活分配的方法 |
CN114138405A (zh) * | 2021-10-31 | 2022-03-04 | 郑州云海信息技术有限公司 | 一种虚拟机创建方法、装置及电子设备和存储介质 |
CN115965517A (zh) * | 2023-01-09 | 2023-04-14 | 摩尔线程智能科技(北京)有限责任公司 | 图形处理器资源管理方法及装置、电子设备和存储介质 |
CN116089090A (zh) * | 2023-02-10 | 2023-05-09 | 济南浪潮数据技术有限公司 | 一种图形显示器的虚拟资源配置方法、装置、设备、介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10572292B2 (en) * | 2017-10-03 | 2020-02-25 | Vmware, Inc. | Platform independent GPU profiles for more efficient utilization of GPU resources |
-
2023
- 2023-08-17 CN CN202311037854.2A patent/CN116755843B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021098182A1 (zh) * | 2019-11-20 | 2021-05-27 | 上海商汤智能科技有限公司 | 资源管理方法和装置、电子设备及存储介质 |
CN113672344A (zh) * | 2021-08-05 | 2021-11-19 | 浪潮云信息技术股份公司 | 一种基于OpenStack平台创建多规格vGPU虚拟机灵活分配的方法 |
CN114138405A (zh) * | 2021-10-31 | 2022-03-04 | 郑州云海信息技术有限公司 | 一种虚拟机创建方法、装置及电子设备和存储介质 |
CN115965517A (zh) * | 2023-01-09 | 2023-04-14 | 摩尔线程智能科技(北京)有限责任公司 | 图形处理器资源管理方法及装置、电子设备和存储介质 |
CN116089090A (zh) * | 2023-02-10 | 2023-05-09 | 济南浪潮数据技术有限公司 | 一种图形显示器的虚拟资源配置方法、装置、设备、介质 |
Non-Patent Citations (1)
Title |
---|
桌面云系统在艺术设计专业实训室中的应用;赵传兴;;电脑知识与技术(23);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116755843A (zh) | 2023-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8615766B2 (en) | Hybrid operating system | |
CN107783818B (zh) | 深度学习任务处理方法、装置、设备及存储介质 | |
CN111158868B (zh) | 计算系统及用于操作计算系统的方法 | |
CN109960569B (zh) | 一种虚拟化处理方法及装置 | |
CN109766179B (zh) | 一种显存分配方法以及装置 | |
CN114281516A (zh) | 一种基于numa属性的资源分配方法及装置 | |
US9830078B2 (en) | System and method for pre-operating system memory map management to minimize operating system failures | |
CN117692322B (zh) | 网卡配置方法、装置、电子设备及存储介质 | |
US9158554B2 (en) | System and method for expediting virtual I/O server (VIOS) boot time in a virtual computing environment | |
CN116755843B (zh) | 虚拟资源创建方法及装置、电子设备、芯片、存储介质 | |
US11210758B2 (en) | System and method for UEFI advanced graphics utilizing a graphics processing unit | |
CN110231988B (zh) | 显存访问方法、装置及存储介质 | |
CN113268356B (zh) | 基于LINUX系统的多GPU板卡bounding的系统、方法及介质 | |
CN112817756A (zh) | 计算机可读取存储介质、内存管理单元的虚拟化方法和装置 | |
CN113950673A (zh) | 非易失性存储分区标识符 | |
CN110704163A (zh) | 一种服务器及其虚拟化存储方法和装置 | |
US11853799B2 (en) | Initialization data memory space allocation system | |
CN117742957B (zh) | 内存分配方法、装置、电子设备和存储介质 | |
CN113918284B (zh) | 云主机批量迁移的方法及装置、电子设备和存储介质 | |
CN110520839A (zh) | 系统芯片内存储介质空间应用方法、装置及无人机 | |
CN108073440B (zh) | 一种虚拟化环境下的显卡管理方法、装置及系统 | |
CN117311729A (zh) | 一种系统部署方法、装置、设备及机器可读存储介质 | |
CN117592133A (zh) | Vsm的密码部件隔离方法、系统、设备及存储介质 | |
WO2022233399A1 (en) | System and method of dynamically partitioning computers at runtime | |
CN112685341A (zh) | 一种存储系统适配器的配置方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |