GPU任务的分配方法、装置、电子设备和存储介质制造方法及图纸

技术编号:34987334 阅读:23 留言:0更新日期:2022-09-21 14:32
本公开提出一种GPU任务的分配方法、装置、电子设备和存储介质,涉及计算机领域,该方法包括:确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线;获取周期长度与第一周期长度相同的目标任务集合,以及目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线;根据第一GPU利用率曲线和每个第二GPU利用率曲线,计算每个第二任务对应的第三GPU利用率曲线;根据各个第二任务对应的第三GPU利用率曲线,从各个第二任务中选取满足预设条件的目标任务;将第一任务分配至目标任务当前所在的GPU中。由此,使得当前分配的任务和目标任务共享一个GPU,从而在不影响GPU稳定工作的前提下,降低GPU的使用量,降低了企业的运营成本。降低了企业的运营成本。降低了企业的运营成本。

【技术实现步骤摘要】
GPU任务的分配方法、装置、电子设备和存储介质


[0001]本公开涉及计算机
,具体涉及一种GPU任务的分配方法、装置、电子设备和存储介质。

技术介绍

[0002]目前越来越多的人工智能AI在线服务(UAI

Inference)使用图形处理器(Graphics Processing Unit,GPU)资源来处理一些在线任务。
[0003]相关技术中,在将AI在线任务分配至GPU集群进行部署时,通常会选择尚未部署任务的空闲GPU资源,以避免引起GPU运载卡机的问题。但是,这样对GPU集群的规模要求高,增加了成本。

技术实现思路

[0004]本公开旨在至少在一定程度上解决相关技术中的技术问题之一。
[0005]本公开第一方面实施例提出的GPU任务的分配方法,包括:确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线;获取周期长度与所述第一周期长度相同的目标任务集合,以及所述目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线;根据所述第一GPU利用率曲线和每个所述第二GPU利用率曲线,计算每个所述第二任务对应的第三GPU利用率曲线;根据各个所述第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务;将所述第一任务分配至所述目标任务当前所在的GPU中。
[0006]本公开第二方面实施例提出的GPU任务的分配装置,包括:确定模块,用于确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线;获取模块,用于获取周期长度与所述第一周期长度相同的目标任务集合,以及所述目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线;计算模块,用于根据所述第一GPU利用率曲线和每个所述第二GPU利用率曲线,计算每个所述第二任务对应的第三GPU利用率曲线;选取模块,用于根据各个所述第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务;第一分配模块,用于将所述第一任务分配至所述目标任务当前所在的GPU中。
[0007]本公开第三方面实施例提出的电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本公开第一方面实施例提出的GPU任务的分配方法。
[0008]本公开第四方面实施例提出的非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本公开第一方面实施例提出的GPU任务的分配方法。
[0009]本公开第五方面实施例提出的计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,执行如本公开第一方面实施例提出的GPU任务的分配方法。
[0010]本公开实施例中,服务器首先确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线,之后获取周期长度与第一周期长度相同的目标任务集合,以及目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线,然后根据第一GPU利用率曲线和每个第二GPU利用率曲线,计算每个第二任务对应的第三GPU利用率曲线,之后根据各个第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务,最后将第一任务分配至目标任务当前所在的GPU中。由此,由于是将第一任务分配至目标任务当前所在的GPU中,使得当前分配的任务和目标任务共享一个GPU,从而在不影响GPU稳定工作的前提下,降低GPU的使用量,降低了企业的运营成本。可以利用周期性任务对GPU利用率周期性变化的特点,根据将待分配的第一任务和当前正在执行的第二任务分别对应的GPU利用率曲线,算出合并后的GPU利用率曲线,可以实现GPU利用率高峰和低谷互补,从而可以在保障GPU的稳定运行的前提下,降低GPU的使用量。
[0011]本公开附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。
附图说明
[0012]本公开上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:图1是本公开一实施例提出的GPU任务的分配方法的流程示意图;图2是本公开一实施例提出的GPU利用率曲线图;图3是本公开另一实施例提出的GPU任务的分配方法的流程示意图;图4是本公开另一实施例提出的GPU任务的分配方法的流程示意图;图5是本公开一实施例提出的GPU任务的分配装置的结构示意图;图6示出了适于用来实现本公开实施方式的示例性电子设备的框图。
具体实施方式
[0013]下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本公开,而不能理解为对本公开的限制。相反,本公开的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
[0014]图1是本公开一实施例提出的GPU任务的分配方法的流程示意图。
[0015]其中,需要说明的是,本实施例的GPU任务的分配方法可以由GPU任务的分配装置执行,该装置可以由软件和/或硬件的方式实现,该装置可以配置在电子设备中,电子设备可以包括但不限于终端、服务器端等。下面以服务器作为本公开的执行主体来对本公开提出的GPU任务的分配方法进行说明。
[0016]如图1所示,该GPU任务的分配方法,包括:S101:确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线。
[0017]其中,第一任务可以为当前下发的需要利用GPU去完成的任务,且该第一任务对GPU资源的实时利用率(GPU

util)可以为周期性变化的。
[0018]本公开实施例中,第一任务可以为AI在线服务中的在线任务,其中,在线任务也即需要在线实时处理的任务。
[0019]其中,第一周期长度可以为第一任务对GPU资源的实时利用率的变化周期,比如可以为1小时、1天、1周,在此不做限定。
[0020]其中,GPU利用率曲线可以为任一任务对GPU资源的实时利用率随时间变化的曲线。
[0021]其中,第一GPU利用率曲线可以为单位周期内第一任务对GPU资源的实时利用率随时间变化的曲线。
[0022]如图2所示,图2示出了一种GPU利用率曲线图,图2中的GPU利用率随着时间呈现出以1天为周期的周期性变化,在07/22的00.00时刻到07/28的00.00时刻,一共出现了6个的完整的周期,单位周期为24小时。
[0023]具体来说,服务器响应于接收到当前下发的待分配的第一任务以及该第一任务对应的任务处理请求,可以获取到任务处理请求中与第一任务关联的GPU利用率曲线。需要说明的是,待分配的第一任务可以为预先经过GPU利用率的采样,之后被下发到服务器中,因而GPU利用率曲线为已知的周期性任务。
[0024]可选的,服务器可以对第一任务关联的GPU利用率本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种GPU任务的分配方法,其特征在于,包括:确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线;获取周期长度与所述第一周期长度相同的目标任务集合,以及所述目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线;根据所述第一GPU利用率曲线和每个所述第二GPU利用率曲线,计算每个所述第二任务对应的第三GPU利用率曲线;根据各个所述第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务;将所述第一任务分配至所述目标任务当前所在的GPU中。2.根据权利要求1所述的方法,其特征在于,所述确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线,包括:对所述第一任务关联的GPU利用率曲线进行解析,以确定所述第一任务对应的第一周期长度及所述第一GPU利用率曲线。3.如权利要求2所述的方法,其特征在于,在所述确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线之后,还包括:根据所述第一周期长度,从各个候选任务集合中确定出目标任务集合;将所述第一任务的标识与所述第一GPU利用率曲线关联存入所述目标任务集合。4.根据权利要求3所述的方法,其特征在于,所述根据所述第一周期长度,从各个候选任务集合中确定出目标任务集合,包括:响应于各个候选任务集合对应的周期长度均与所述第一周期长度不同,将对应周期长度大于所述第一周期长度、且与所述第一周期长度间的差值最小的任一候选任务集合,确定为目标任务集合。5.根据权利要求1所述的方法,其特征在于,所述根据各个所述第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务,包括:根据每个所述第二任务对应的第三GPU利用率曲线中各个时刻的GPU利用率,确定每个所述第二任务在所述各个时刻中的最大GPU利用率,以及每个所述第二任务对应的平均GPU利用率;在任一第二任务对应的所述最大GPU利用率小于预设阈值,且所述任一第二任务对应的平均GPU利用率为各个所述第二任务对应的平均GPU利用率中的最高值的情况下,确定所述任一第二任务为所述目标任务。6.根据权利要求1所述的方法,其特征在于,还包括:响应于未获取到所述目标任务集合,将所述第一任务分配在未部署任务的GPU中;创建与所述第一周期长度对应的候选任务集合,其中,所述候选任务集合中包含所述第一任务及所述第一GPU利用率曲线。7.一种GPU任务的分配装置,其特征在于,包括:确定模块,用于确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线;获取模块,用于获取周期长度与所述第一周期长度相同的目标任务集合,以及所述目标任务集合中每个第二任务在单位周期内的...

【专利技术属性】
技术研发人员:刘国明刘俊涛
申请(专利权)人:小米汽车科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1