CN105528249A - 一种多用户共享gpu资源的调度方法 - Google Patents

一种多用户共享gpu资源的调度方法 Download PDF

Info

Publication number
CN105528249A
CN105528249A CN201510884813.6A CN201510884813A CN105528249A CN 105528249 A CN105528249 A CN 105528249A CN 201510884813 A CN201510884813 A CN 201510884813A CN 105528249 A CN105528249 A CN 105528249A
Authority
CN
China
Prior art keywords
gpu
user
request
resource
administration module
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.)
Granted
Application number
CN201510884813.6A
Other languages
English (en)
Other versions
CN105528249B (zh
Inventor
孙明来
刘毅
贾琨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIJING SKYCLOUD RONGCHUANG SOFTWARE TECHNOLOGY Co Ltd
Original Assignee
BEIJING SKYCLOUD RONGCHUANG SOFTWARE TECHNOLOGY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BEIJING SKYCLOUD RONGCHUANG SOFTWARE TECHNOLOGY Co Ltd filed Critical BEIJING SKYCLOUD RONGCHUANG SOFTWARE TECHNOLOGY Co Ltd
Priority to CN201510884813.6A priority Critical patent/CN105528249B/zh
Publication of CN105528249A publication Critical patent/CN105528249A/zh
Application granted granted Critical
Publication of CN105528249B publication Critical patent/CN105528249B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种多用户共享GPU资源的调度方法,属于云计算和虚拟机技术领域,包括用户向管理模块提出请求的步骤;修改、撤销请求流程的步骤;开始GPU流程的步骤以及结束GPU流程的步骤;本发明能够在仅配置一个GPU虚拟化设备卡的情况下,更多的满足用户的需求,并且提高了GPU设备的利用率,有效的节约了资源。

Description

一种多用户共享GPU资源的调度方法
技术领域
本发明属于云计算和虚拟机技术领域,特别是涉及一种多用户共享GPU资源的调度方法。
背景技术
由于部分用户和应用的图像处理负载,使得部分的CPU能力用于处理图像数据,导致VM的CPU负载过高,进而影响VM的性能和Hypervisor的整体资源使用率。
因此,图形处理器单元(GPU)虚拟化技术应运而生。从GPU设备提供商和虚拟化厂商两方面都有相应的产品面世。目前NVIDIA已经生产出GRID系列产品,一个GPU设备卡,可同时提供多个用户使用。虚拟化厂商中,如VMware等也已经支持虚拟GPU的配置,管理以及直通VM技术。
虽然目前有支持虚拟化功能的GPU设备,并且可以给VM顺利配置虚拟CPU设备。但是由于虚拟化GPU成本过高,为每个VM配置虚拟GPU卡,将导致过高的VM成本,而会让用户选择使用物理设备。但是在使用VM的用户中,仅有部分用户对GPU有使用的需要,并且大部分都只是在部分时间段内进行使用,使用结束之后,便可以将GPU资源分配给其他VM使用。这样就需要一种多用户共享GPU资源的调度方法来对GPU资源进行管理,以便既满足用户的GPU使用需要,又最大化共享GPU资源。
发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种既满足用户的GPU使用需要,又最大化共享GPU资源的多用户共享GPU资源的调度方法。
为实现上述目的,本发明提供了一种多用户共享GPU资源的调度方法,包括用户向管理模块提出请求的步骤;修改、撤销请求流程的步骤;开始GPU流程的步骤以及结束GPU流程的步骤;
所述用户向管理模块提出请求按以下步骤进行:
步骤一、判断用户VM情况,并向管理模块提出请求:
当用户已有VM且有使用GPU资源的需要时,查询GPU资源;系统提供用户VM可用GPU资源预约表;用户从预约表中选择预约时段及能力,并向管理模块提出请求,然后执行步骤二;
如果是新使用,创建带GPU功能的VM或在已有的VM中增加GPU功能,并向管理模块提出请求,然后执行步骤二;
如果在预约的时间已满的时候,需要继续使用GPU功能,则为续约:向管理模块提出请求时需要指明需要GPU核数,如果是已有的VM,同时需要携带VM的标识信息;
步骤二:管理模块接收到请求后,对请求进行处理
A1:判断用户是续约请求、新建VM+GPU请求还是已有VM+GPU请求;
A2:检查用户的请求是否有效,包括用户的GPU使用额度,即同时能够申请使用的GPU核数限制;
A3:对用户的请求进行记录;如果用户需要续约,则直接进行续约,流程结束,否则开始GPU流程;
所述开始GPU流程按以下步骤进行:
管理模块定时检查系统中的GPU进行维护:
检查是否有将要开始的请求;如果有即将开始的请求,则检查系统中的资源是否满足;如果满足,则向Hypervisor发送请求;如果不满足,则将用户的GPU使用时间延后,并通知用户;
管理模块向Hypervisor发送请求;Hypervisor根据请求来进行操作:创建带GPU功能的VM或为已有的VM添加GPU设备;然后为VM配置GPU虚拟设备;
所述结束GPU流程按以下步骤进行:
管理模块定时检查系统中的GPU进行维护:
检查是否有将要到期的请求;如果有将要到期的请求,检查系统中是否有足够的资源允许用户续约;如果系统中有足够的资源允许用户继续使用,则先对资源进行预占,并提示用户,资源即将到期,是否进行续约;如果用户在到期前未进行续约,则将预占资源释放;如果系统中无足够的资源允许用户继续使用,则提示用户GPU应用将要到期,请及时存档;
管理模块向Hypervisor发送请求;Hypervisor根据请求来进行操作:
删除带GPU功能的VM;为已有的VM卸载GPU设备。
较佳的,如果用户的请求与系统资源发生冲突时,为用户提供推荐方案:
A1:当用户选择资源优先时,系统会优先推荐GPU资源满足用户的时段;当用户选择时间优先时,系统会优先推荐时间贴近用户请求的资源;
C2:当冲突发生,并且用户选择进行推荐时,系统根据用户的优先原则,对相应的资源进行预占,并发送邮件,通知用户初次请求冲突,是否选择推荐资源,并且提示该资源在规定时间内有效;
如果用户在规定时间内确认接受该推荐方案,则系统将该资源的预占状态更正为使用状态;
如果用户未在规定时间内确认该推荐方案,则系统将资源的预占释放。
较佳的,所述修改、撤销请求流程按以下步骤进行:当用户的GPU应用尚未开始或续约尚未开始时,用户向管理模块提出修改或撤销GPU请求;
管理模块接收到用户的请求后,将记录中用户的请求或续约记录请求进行修改或撤销。
本发明的有益效果是:本发明能够在仅配置一个GPU虚拟化设备卡的情况下,更多的满足用户的需求,并且提高了GPU设备的利用率,有效的节约了资源。
附图说明
图1是本发明调度结构图。
图2是本发明应用流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明:
如图1和图2所示,一种多用户共享GPU资源的调度方法,包括用户向管理模块提出请求的步骤;修改、撤销请求流程的步骤;开始GPU流程的步骤以及结束GPU流程的步骤。
一种多用户共享GPU资源的调度方法,包括:用户向管理模块提出请求的步骤;修改、撤销请求流程的步骤;开始GPU流程的步骤以及结束GPU流程的步骤;
所述用户向管理模块提出请求按以下步骤进行:
步骤一、判断用户VM情况,并向管理模块提出请求:
当用户已有VM且有使用GPU资源的需要时,查询VM的GPU预约资源表;系统提供用户VM可用GPU资源预约表;用户从预约表中选择预约时段及能力,并向管理模块提出请求,然后执行步骤二;如表1所示,用户根据GPU资源表,申请GPU资源。
VM标识 VM名称 GPU能力/核数 可用时段1 可用时段2 …… 可用时段n
表1.GPU资源表
如果是新使用,创建带GPU功能的VM或在已有的VM中增加GPU功能,并向管理模块提出请求,然后执行步骤二;
如果在预约的时间已满的时候,需要继续使用GPU功能,则为续约:向管理模块提出请求时需要指明需要GPU核数,如果是已有的VM,同时需要携带VM的标识信息;
步骤二:管理模块接收到请求后,对请求进行处理
A1:判断用户是续约请求、新建VM+GPU请求还是已有VM+GPU请求;
A2:检查用户的请求是否有效,包括用户的GPU使用额度,即同时能够申请使用的GPU核数限制;
A3:对用户的请求进行记录;如果用户需要续约,则直接进行续约,流程结束,否则开始GPU流程;
所述开始GPU流程按以下步骤进行:
管理模块定时检查系统中的GPU进行维护:
检查是否有将要开始的请求;如果有即将开始的请求,则检查系统中的资源是否满足;如果满足,则向Hypervisor发送请求;如果不满足,则将用户的GPU使用时间延后,并通知用户;
管理模块向Hypervisor发送请求;Hypervisor根据请求来进行操作:创建带GPU功能的VM或为已有的VM添加GPU设备;然后为VM配置GPU虚拟设备;
所述结束GPU流程按以下步骤进行:
管理模块定时检查系统中的GPU进行维护:
检查是否有将要到期的请求;如果有将要到期的请求,检查系统中是否有足够的资源允许用户续约;如果系统中有足够的资源允许用户继续使用,则先对资源进行预占,并提示用户,资源即将到期,是否进行续约;如果用户在到期前未进行续约,则将预占资源释放;如果系统中无足够的资源允许用户继续使用,则提示用户GPU应用将要到期,请及时存档;
管理模块向Hypervisor发送请求;Hypervisor根据请求来进行操作:
删除带GPU功能的VM;为已有的VM卸载GPU设备。
如果用户的请求与系统资源发生冲突时,为用户提供推荐方案:
A1:当用户选择资源优先时,系统会优先推荐GPU资源满足用户的时段;当用户选择时间优先时,系统会优先推荐时间贴近用户请求的资源;
C2:当冲突发生,并且用户选择进行推荐时,系统根据用户的优先原则,对相应的资源进行预占,并发送邮件,通知用户初次请求冲突,是否选择推荐资源,并且提示该资源在规定时间内有效;
如果用户在规定时间内确认接受该推荐方案,则系统将该资源的预占状态更正为使用状态;
如果用户未在规定时间内确认该推荐方案,则系统将资源的预占释放。当用户再次使用时,则需要再重新申请。
所述修改、撤销请求流程按以下步骤进行:当用户的GPU应用尚未开始或续约尚未开始时,用户向管理模块提出修改或撤销GPU请求;
管理模块接收到用户的请求后,将记录中用户的请求或续约记录请求进行修改或撤销。
当用户接收到系统的提示,管理模块定时检查系统中的GPU进行维护。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

Claims (3)

1.一种多用户共享GPU资源的调度方法,其特征在于包括:用户向管理模块提出请求的步骤;修改、撤销请求流程的步骤;开始GPU流程的步骤以及结束GPU流程的步骤;
所述用户向管理模块提出请求按以下步骤进行:
步骤一、判断用户VM情况,并向管理模块提出请求:
当用户已有VM且有使用GPU资源的需要时,查询GPU资源;系统提供用户VM可用GPU资源预约表;用户从预约表中选择预约时段及能力,并向管理模块提出请求,然后执行步骤二;
如果是新使用,创建带GPU功能的VM或在已有的VM中增加GPU功能,并向管理模块提出请求,然后执行步骤二;
如果在预约的时间已满的时候,需要继续使用GPU功能,则为续约:向管理模块提出请求时需要指明需要GPU核数,如果是已有的VM,同时需要携带VM的标识信息;
步骤二:管理模块接收到请求后,对请求进行处理
A1:判断用户是续约请求、新建VM+GPU请求还是已有VM+GPU请求;
A2:检查用户的请求是否有效,包括用户的GPU使用额度,即同时能够申请使用的GPU核数限制;
A3:对用户的请求进行记录;如果用户需要续约,则直接进行续约,流程结束,否则开始GPU流程;
所述开始GPU流程按以下步骤进行:
管理模块定时检查系统中的GPU进行维护:
检查是否有将要开始的请求;如果有即将开始的请求,则检查系统中的资源是否满足;如果满足,则向Hypervisor发送请求;如果不满足,则将用户的GPU使用时间延后,并通知用户;
管理模块向Hypervisor发送请求;Hypervisor根据请求来进行操作:创建带GPU功能的VM或为已有的VM添加GPU设备;然后为VM配置GPU虚拟设备;
所述结束GPU流程按以下步骤进行:
管理模块定时检查系统中的GPU进行维护:
检查是否有将要到期的请求;如果有将要到期的请求,检查系统中是否有足够的资源允许用户续约;如果系统中有足够的资源允许用户继续使用,则先对资源进行预占,并提示用户,资源即将到期,是否进行续约;如果用户在到期前未进行续约,则将预占资源释放;如果系统中无足够的资源允许用户继续使用,则提示用户GPU应用将要到期,请及时存档;
管理模块向Hypervisor发送请求;Hypervisor根据请求来进行操作:
删除带GPU功能的VM;为已有的VM卸载GPU设备。
2.如权利要求1所述的一种多用户共享GPU资源的调度方法,其特征是:如果用户的请求与系统资源发生冲突时,为用户提供推荐方案:
A1:当用户选择资源优先时,系统会优先推荐GPU资源满足用户的时段;当用户选择时间优先时,系统会优先推荐时间贴近用户请求的资源;
C2:当冲突发生,并且用户选择进行推荐时,系统根据用户的优先原则,对相应的资源进行预占,并发送邮件,通知用户初次请求冲突,是否选择推荐资源,并且提示该资源在规定时间内有效;
如果用户在规定时间内确认接受该推荐方案,则系统将该资源的预占状态更正为使用状态;
如果用户未在规定时间内确认该推荐方案,则系统将资源的预占释放。
3.如权利要求1所述的一种多用户共享GPU资源的调度方法,其特征是:
所述修改、撤销请求流程按以下步骤进行:当用户的GPU应用尚未开始或续约尚未开始时,用户向管理模块提出修改或撤销GPU请求;
管理模块接收到用户的请求后,将记录中用户的请求或续约记录请求进行修改或撤销。
CN201510884813.6A 2015-12-06 2015-12-06 一种多用户共享gpu资源的调度方法 Active CN105528249B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510884813.6A CN105528249B (zh) 2015-12-06 2015-12-06 一种多用户共享gpu资源的调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510884813.6A CN105528249B (zh) 2015-12-06 2015-12-06 一种多用户共享gpu资源的调度方法

Publications (2)

Publication Number Publication Date
CN105528249A true CN105528249A (zh) 2016-04-27
CN105528249B CN105528249B (zh) 2019-04-05

Family

ID=55770494

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510884813.6A Active CN105528249B (zh) 2015-12-06 2015-12-06 一种多用户共享gpu资源的调度方法

Country Status (1)

Country Link
CN (1) CN105528249B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804199A (zh) * 2017-05-05 2018-11-13 龙芯中科技术有限公司 图形处理器虚拟化方法及装置
CN111736992A (zh) * 2020-06-12 2020-10-02 中国银行股份有限公司 机器学习平台的gpu资源的管理方法及装置
CN115145730A (zh) * 2022-07-05 2022-10-04 小米汽车科技有限公司 运行监测方法、装置、电子设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102096600A (zh) * 2009-12-14 2011-06-15 株式会社日立制作所 信息处理装置、资源调度方法、资源调度程序
CN102650950A (zh) * 2012-04-10 2012-08-29 南京航空航天大学 一种支持多gpu虚拟化的平台架构及其工作方法
CN104252375A (zh) * 2013-06-25 2014-12-31 国际商业机器公司 用于位于不同主机的多个虚拟机共享USB Key的方法和系统
US20150067672A1 (en) * 2013-09-05 2015-03-05 Nvidia Corporation Simultaneous utilization of a first graphics processing unit (gpu) and a second gpu of a computing platform through a virtual machine (vm) in a shared mode and a dedicated mode respectively
CN104660711A (zh) * 2015-03-13 2015-05-27 华存数据信息技术有限公司 一种基于图形处理器虚拟化的远程可视化应用方法
CN104737129A (zh) * 2012-08-23 2015-06-24 思杰系统有限公司 用于对来宾虚拟机的硬件资源进行虚拟化的专用虚拟机

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102096600A (zh) * 2009-12-14 2011-06-15 株式会社日立制作所 信息处理装置、资源调度方法、资源调度程序
CN102650950A (zh) * 2012-04-10 2012-08-29 南京航空航天大学 一种支持多gpu虚拟化的平台架构及其工作方法
CN104737129A (zh) * 2012-08-23 2015-06-24 思杰系统有限公司 用于对来宾虚拟机的硬件资源进行虚拟化的专用虚拟机
CN104252375A (zh) * 2013-06-25 2014-12-31 国际商业机器公司 用于位于不同主机的多个虚拟机共享USB Key的方法和系统
US20150067672A1 (en) * 2013-09-05 2015-03-05 Nvidia Corporation Simultaneous utilization of a first graphics processing unit (gpu) and a second gpu of a computing platform through a virtual machine (vm) in a shared mode and a dedicated mode respectively
CN104660711A (zh) * 2015-03-13 2015-05-27 华存数据信息技术有限公司 一种基于图形处理器虚拟化的远程可视化应用方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804199A (zh) * 2017-05-05 2018-11-13 龙芯中科技术有限公司 图形处理器虚拟化方法及装置
CN111736992A (zh) * 2020-06-12 2020-10-02 中国银行股份有限公司 机器学习平台的gpu资源的管理方法及装置
CN111736992B (zh) * 2020-06-12 2024-02-23 中国银行股份有限公司 机器学习平台的gpu资源的管理方法及装置
CN115145730A (zh) * 2022-07-05 2022-10-04 小米汽车科技有限公司 运行监测方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN105528249B (zh) 2019-04-05

Similar Documents

Publication Publication Date Title
Park et al. Locality-aware dynamic VM reconfiguration on MapReduce clouds
TW201837733A (zh) 一種區塊鏈共識方法、設備及系統
JP2015524976A (ja) 中央処理装置のリソース割当方法及び計算ノード
CN105242957A (zh) 一种云计算系统调配gpu资源到虚拟机的方法及系统
CN105052074A (zh) 用于提供虚拟化直径网络架构以及用于将业务量路由至动态实例化的直径资源实例的方法、系统和计算机可读介质
US20120117242A1 (en) Service linkage system and information processing system
JP6599439B2 (ja) ワークフロー実行におけるシステムリソースの平等シェアリング
CN105528249A (zh) 一种多用户共享gpu资源的调度方法
CN105589750A (zh) 一种cpu资源调度方法和服务器
CN113821308B (zh) 片上系统、虚拟机任务处理方法及设备、存储介质
CN109743202B (zh) 数据的管理方法、装置、设备及可读存储介质
CN108111337B (zh) 分布式系统仲裁主节点的方法及设备
CN110162397B (zh) 资源分配方法、装置及系统
CN111178686A (zh) 一种网约车的分配方法、装置、电子设备及存储介质
CN110998530A (zh) 一种虚拟机资源分配系统、方法及计算机程序
WO2017075796A1 (zh) 网络功能虚拟化nfv网络中分配虚拟资源的方法和装置
CN106331192B (zh) 网络协议ip地址分配方法及装置
WO2020108337A1 (zh) 一种cpu资源调度方法及电子设备
CN114116173A (zh) 动态调整任务分配的方法、装置和系统
CN113032093A (zh) 分布式计算方法、装置及平台
CN105653347A (zh) 一种服务器、资源管理方法及虚拟机管理器
JP2013140596A (ja) メニーコアシステムのためのオペレーティングシステム動的再構成装置及び方法
CN113032092B (zh) 分布式计算方法、装置及平台
JP6461224B2 (ja) 中央処理装置のリソース割当方法及び計算ノード
WO2016145728A1 (zh) 在多系统中分配多核中央处理器的方法、装置及终端

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant