CN115080253B - Gpu任务的分配方法、装置、电子设备和存储介质 - Google Patents

Gpu任务的分配方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN115080253B
CN115080253B CN202211013408.3A CN202211013408A CN115080253B CN 115080253 B CN115080253 B CN 115080253B CN 202211013408 A CN202211013408 A CN 202211013408A CN 115080253 B CN115080253 B CN 115080253B
Authority
CN
China
Prior art keywords
task
gpu
utilization rate
gpu utilization
cycle length
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
Application number
CN202211013408.3A
Other languages
English (en)
Other versions
CN115080253A (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.)
Xiaomi Automobile Technology Co Ltd
Original Assignee
Xiaomi Automobile 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 Xiaomi Automobile Technology Co Ltd filed Critical Xiaomi Automobile Technology Co Ltd
Priority to CN202211013408.3A priority Critical patent/CN115080253B/zh
Publication of CN115080253A publication Critical patent/CN115080253A/zh
Application granted granted Critical
Publication of CN115080253B publication Critical patent/CN115080253B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

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

Description

GPU任务的分配方法、装置、电子设备和存储介质
技术领域
本公开涉及计算机技术领域,具体涉及一种GPU任务的分配方法、装置、电子设备和存储介质。
背景技术
目前越来越多的人工智能AI在线服务(UAI-Inference)使用图形处理器(Graphics Processing Unit,GPU)资源来处理一些在线任务。
相关技术中,在将AI在线任务分配至GPU集群进行部署时,通常会选择尚未部署任务的空闲GPU资源,以避免引起GPU运载卡机的问题。但是,这样对GPU集群的规模要求高,增加了成本。
发明内容
本公开旨在至少在一定程度上解决相关技术中的技术问题之一。
本公开第一方面实施例提出的GPU任务的分配方法,包括:
确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线;
获取周期长度与所述第一周期长度相同的目标任务集合,以及所述目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线;
根据所述第一GPU利用率曲线和每个所述第二GPU利用率曲线,计算每个所述第二任务对应的第三GPU利用率曲线;
根据各个所述第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务;
将所述第一任务分配至所述目标任务当前所在的GPU中。
本公开第二方面实施例提出的GPU任务的分配装置,包括:
确定模块,用于确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线;
获取模块,用于获取周期长度与所述第一周期长度相同的目标任务集合,以及所述目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线;
计算模块,用于根据所述第一GPU利用率曲线和每个所述第二GPU利用率曲线,计算每个所述第二任务对应的第三GPU利用率曲线;
选取模块,用于根据各个所述第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务;
第一分配模块,用于将所述第一任务分配至所述目标任务当前所在的GPU中。
本公开第三方面实施例提出的电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本公开第一方面实施例提出的GPU任务的分配方法。
本公开第四方面实施例提出的非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本公开第一方面实施例提出的GPU任务的分配方法。
本公开第五方面实施例提出的计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,执行如本公开第一方面实施例提出的GPU任务的分配方法。
本公开实施例中,服务器首先确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线,之后获取周期长度与第一周期长度相同的目标任务集合,以及目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线,然后根据第一GPU利用率曲线和每个第二GPU利用率曲线,计算每个第二任务对应的第三GPU利用率曲线,之后根据各个第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务,最后将第一任务分配至目标任务当前所在的GPU中。由此,由于是将第一任务分配至目标任务当前所在的GPU中,使得当前分配的任务和目标任务共享一个GPU,从而在不影响GPU稳定工作的前提下,降低GPU的使用量,降低了企业的运营成本。可以利用周期性任务对GPU利用率周期性变化的特点,根据将待分配的第一任务和当前正在执行的第二任务分别对应的GPU利用率曲线,算出合并后的GPU利用率曲线,可以实现GPU利用率高峰和低谷互补,从而可以在保障GPU的稳定运行的前提下,降低GPU的使用量。
本公开附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。
附图说明
本公开上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是本公开一实施例提出的GPU任务的分配方法的流程示意图;
图2是本公开一实施例提出的GPU利用率曲线图;
图3是本公开另一实施例提出的GPU任务的分配方法的流程示意图;
图4是本公开另一实施例提出的GPU任务的分配方法的流程示意图;
图5是本公开一实施例提出的GPU任务的分配装置的结构示意图;
图6示出了适于用来实现本公开实施方式的示例性电子设备的框图。
具体实施方式
下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本公开,而不能理解为对本公开的限制。相反,本公开的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
图1是本公开一实施例提出的GPU任务的分配方法的流程示意图。
其中,需要说明的是,本实施例的GPU任务的分配方法可以由GPU任务的分配装置执行,该装置可以由软件和/或硬件的方式实现,该装置可以配置在电子设备中,电子设备可以包括但不限于终端、服务器端等。下面以服务器作为本公开的执行主体来对本公开提出的GPU任务的分配方法进行说明。
如图1所示,该GPU任务的分配方法,包括:
S101:确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线。
其中,第一任务可以为当前下发的需要利用GPU去完成的任务,且该第一任务对GPU资源的实时利用率(GPU-util)可以为周期性变化的。
本公开实施例中,第一任务可以为AI在线服务中的在线任务,其中,在线任务也即需要在线实时处理的任务。
其中,第一周期长度可以为第一任务对GPU资源的实时利用率的变化周期,比如可以为1小时、1天、1周,在此不做限定。
其中,GPU利用率曲线可以为任一任务对GPU资源的实时利用率随时间变化的曲线。
其中,第一GPU利用率曲线可以为单位周期内第一任务对GPU资源的实时利用率随时间变化的曲线。
如图2所示,图2示出了一种GPU利用率曲线图,图2中的GPU利用率随着时间呈现出以1天为周期的周期性变化,在07/22的00.00时刻到07/28的00.00时刻,一共出现了6个的完整的周期,单位周期为24小时。
具体来说,服务器响应于接收到当前下发的待分配的第一任务以及该第一任务对应的任务处理请求,可以获取到任务处理请求中与第一任务关联的GPU利用率曲线。需要说明的是,待分配的第一任务可以为预先经过GPU利用率的采样,之后被下发到服务器中,因而GPU利用率曲线为已知的周期性任务。
可选的,服务器可以对第一任务关联的GPU利用率曲线进行解析,以确定第一任务对应的第一周期长度及第一GPU利用率曲线。
举例来说,以图2所示的GPU利用率曲线作为第一任务关联的GPU利用率曲线,服务器可以对第一任务关联的GPU利用率曲线进行解析,从而可以得到第一任务对应的第一周期长度为24小时,并可以将任一单位周期对应的GPU利用率曲线作为第一GPU利用率曲线。比如,可以将07/22的00.00时刻到07/23的00.00时刻之间的GPU利用率曲线作为第一GPU利用率曲线。
上述示例仅为一种示意性说明,而不作为对本公开的限定。
S102:获取周期长度与第一周期长度相同的目标任务集合,以及目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线。
其中,第二任务可以为周期长度与第一周期长度相同的周期性任务,其可以为待通过筛选以与第一任务共享GPU的任务。
其中,目标任务集合可以为包含各个候选的第二任务。
在本公开实施例中,目标任务集合中包含的每个第二任务的周期长度,均与第一周期长度相同。
其中,第二GPU利用率曲线可以为单位周期内第二任务对GPU资源的实时利用率随时间变化的曲线。
可选的,服务器可以首先确定在线任务列表中各个在线任务的周期长度,然后从在线任务列表中获取与第一周期长度相同的各个在线任务,进而获取目标任务集合,并将目标任务集合中的各个在线任务确定为第二任务。
需要说明的是,第二任务的第二GPU利用率曲线可以与第二任务是预先关联存储的。
举例来说,若当前在线的各个任务为任务1、任务2、任务3、任务4、任务5,第一周期长度为T,其中,任务1、任务2、任务3、任务4、任务5分别对应的周期长度为T、1.5T、2T、T、T,因而可以将任务1、任务4、任务5组成的集合作为目标任务集合,并将任务1、任务4、任务5作为第二任务。
上述示例仅为一种示意性说明,而不作为对本公开的限定。
作为一种可能实现的方式,可以预先对使用GPU资源的在线任务进行采样,比如每5分钟采集一次在线任务的实时GPU利用率,从而可以得到每个在线任务的GPU利用率曲线,然后服务器可以对每个在线任务的GPU利用率曲线进行解析,从而可以得到每个在线任务的周期长度以及单位周期内的GPU利用率曲线。
需要说明的是,在获取第二任务在单位周期内的第二GPU利用率曲线时,需要将第二GPU利用率曲线进行时间对齐,比如第一GPU利用率曲线对应的单位周期长度为5小时,第一GPU利用率曲线为06:00到11:00之间的GPU利用率曲线,则需要从单位周期长度为5小时的在线任务对应的GPU利用率曲线中,获取06:00到11:00之间的GPU利用率曲线,并将该GPU利用率曲线作为第二GPU利用率曲线,将该在线任务作为第二任务。由此,可以使得之后可以将GPU利用率曲线中相同时刻的GPU利用率进行相加,为之后的计算提供了良好的数据支持。
进一步地,服务器还可以将每个在线任务对应的周期长度以及单位周期内的GPU利用率曲线进行关联存储。
进一步地,还可以将各个在线任务按照周期长度进行分类,比如按照小时、天、星期、月等周期分类,从而可以得到不同周期长度的在线任务集合。由此,服务器可以直接根据第一周期长度,获取与第一周期长度相同的在线任务集合,并将其作为目标任务集合。
需要说明的是,在一些情况下,服务器未获取到与第一周期长度相同的在线任务,因而可以将周期长度大于第一周期长度的在线任务作为第二任务,从而获得目标任务集合,且目标任务集合中各个第二任务对应的周期长度为相同的,也即是说,与第一周期长度之间的差值相同。
S103:根据第一GPU利用率曲线和每个第二GPU利用率曲线,计算每个第二任务对应的第三GPU利用率曲线。
其中,第三GPU利用率曲线可以为第一GPU利用率曲线和第二GPU利用率曲线叠加后所得到的GPU利用率曲线。
具体的,服务器可以将第一GPU利用率曲线和每个第二GPU利用率曲线进行叠加,从而可以得到叠加后的每个第二任务对应的第三GPU利用率曲线。
可以理解的是,由于第一GPU利用率曲线和第二GPU利用率曲线对应的单位周期为相同的,均为第一周期长度,因而可以直接相加,从而使得第三GPU利用率曲线对应的周期长度也为第一周期长度。
需要说明的是,在一些情况下,服务器未获取到与第一周期长度相同的在线任务。作为另一种实现方式,服务器可以选取周期长度大于第一周期长度的在线任务作为第二任务,并将第二GPU利用率曲线对应的单位周期长度确定为第二周期长度。
此时,服务器在将第一GPU利用率曲线和每个第二GPU利用率曲线进行叠加时,可以按照下面示例所述的方式进行处理:
若第一GPU利用率曲线对应的第一周期长度为A小时,第二GPU利用率曲线对应的第二周期长度为B小时(A<B),则可以计算第一周期长度和第二周期长度的最小公倍数A*B,在此将A*B记为N。
进而,可以将N作为第三GPU利用率曲线对应的单位周期长度。此时,可以将B个单位周期的第一GPU利用率曲线和A个单位周期的第二GPU利用率曲线进行叠加,从而得到单位周期长度为N的第三GPU利用率曲线。
举例来说,若第一周期长度为1小时,第二周期长度为3小时,则第一周期长度和第二周期长度的最小公倍数为3,可以将3个单位周期的第一GPU利用率曲线和1个单位周期的第二GPU利用率曲线进行叠加,从而得到第三GPU利用率曲线。
需要说明的是,若第一GPU利用率曲线和第二GPU利用率曲线对应的周期长度相同,均为第一周期长度,此时在将第一GPU利用率曲线和第二GPU利用率曲线相叠加时,需要首先将第一GPU利用率曲线和第二GPU利用率曲线的时刻对齐,然后相叠加,比如若第一GPU利用率曲线和第二GPU利用率曲线中均包含t1、t2、t3时刻,则在叠加时,需要将第一GPU利用率曲线中t1、t2、t3时刻的GPU利用率与第二GPU利用率曲线中t1、t2、t3时刻的GPU利用率相加。从而可以保障数据对齐,进而保障计算得到的第三GPU利用率曲线中各个时刻的利用率为同一时刻叠加得到的。
S104:根据各个第二任务对应的第三GPU利用率曲线,从各个第二任务中选取满足预设条件的目标任务。
其中,目标任务可以为各个第二任务中满足预设条件的一个任务,该目标任务用于和第一任务部署在同一个GPU中。
其中,预设条件可以为预先设置的筛选条件,通过判断各个第二任务是否满足预设条件,可以筛选出符合要求的目标任务。
作为一种可能实现的方式,服务器可以首先根据每个所述第二任务对应的第三GPU利用率曲线中各个时刻的GPU利用率,确定每个所述第二任务在所述各个时刻中的最大GPU利用率,以及每个所述第二任务对应的平均GPU利用率,然后在任一第二任务对应的最大GPU利用率小于预设阈值,且所述任一第二任务对应的平均GPU利用率为各个所述第二任务对应的平均GPU利用率中的最高值的情况下,确定所述任一第二任务为所述目标任务。
可以理解的是,也即是说,若任一第二任务对应的最大GPU利用率小于预设阈值,且所述任一第二任务对应的平均GPU利用率为各个所述第二任务对应的平均GPU利用率中的最高值的情况下,可以将该任一第二任务确定为满足预设条件的目标任务。
其中,预设阈值可以为最大GPU利用率的阈值,本公开中可选为100%,具体可以根据经验设定,在此不做限定。
其中,最大GPU利用率可以为任一第二任务对应的第三GPU利用率曲线中GPU利用率的最大值。
其中,平均GPU利用率可以为任一第二任务对应的第三GPU利用率曲线中各个时刻的GPU利用率的平均值。
举例来说,若当前目标任务集合中包含的各个第二任务分别为Q1、Q2、Q3、Q4,其中,Q1在第三GPU利用率曲线中各个时刻对应的GPU利用率分别为20%、40%、60%、65%、95%,因而可以确定Q1在各个时刻中的最大GPU利用率为95%,同理,可以确定Q2、Q3、Q4在第三GPU利用率曲线中各个时刻对应的最大GPU利用率。其中,预设阈值为100%,若Q2、Q3、Q4对应的最大GPU利用率分别为140%、160%、95%,则说明Q2和Q3的最大GPU利用率大于预设阈值,不符合预设条件。
进一步地,由于Q1和Q4的最大GPU利用率均为95%,此时可以计算Q1和Q4对应的平均GPU利用率。其中,Q1对应的平均GPU利用率可以为(20%+40%+60%+65%+95%)/5=56%,若Q4对应的平均GPU利用率为50%,此时由于56%>50%,因而可以将Q1作为目标任务,也即可以认为Q1为目标任务集合中满足预设条件的第二任务。
需要说明的是,上述举例仅为一种示意性说明,对本公开不构成限定。
通过上述方式选择满足预设条件的目标任务,其效果在于,可以优先把平均GPU利用率较高的GPU尽量用满,而平均GPU利用率较低的第二任务所在的GPU留给之后的新任务。从而,部署同样数目的新任务,需要启用新GPU 的概率会更低。
S105:将第一任务分配至目标任务当前所在的GPU中。
具体的,服务器可以将第一任务分配到目标任务当前所在的GPU中,从而可以使得第一任务可以和目标任务共享同一个GPU。
本公开实施例中,服务器首先确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线,之后获取周期长度与第一周期长度相同的目标任务集合,以及目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线,然后根据第一GPU利用率曲线和每个第二GPU利用率曲线,计算每个第二任务对应的第三GPU利用率曲线,之后根据各个第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务,最后将第一任务分配至目标任务当前所在的GPU中。由此,由于是将第一任务分配至目标任务当前所在的GPU中,使得当前分配的任务和目标任务共享一个GPU,从而在不影响GPU稳定工作的前提下,降低GPU的使用量,降低了企业的运营成本。可以利用周期性任务对GPU利用率周期性变化的特点,根据将待分配的第一任务和当前正在执行的第二任务分别对应的GPU利用率曲线,算出合并后的GPU利用率曲线,可以实现GPU利用率高峰和低谷互补,从而可以保障GPU的稳定运行的前提下,降低GPU的使用量。
图3是本公开另一实施例提出的GPU任务的分配方法的流程示意图。
如图3所示,该GPU任务的分配方法,包括:
S201:确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线。
需要说明的是,步骤S201的具体实现方式可以参照上述实施例,在此不进行赘述。
S202:根据第一周期长度,从各个候选任务集合中确定出目标任务集合。
其中,第一周期长度可以为第一任务对GPU资源的实时利用率的变化周期,比如可以为1小时、1天、1周,在此不做限定。
具体的,服务器可以将各个在线任务按照周期长度进行分类,比如按照小时、天、星期、月等周期分类,从而可以得到不同周期长度的候选任务集合。
可以理解的是,每个候选任务集合都对应有周期类型,也即对应的周期长度。由此,服务器可以直接根据第一周期长度,获取与第一周期长度相同的候选任务集合,并将其作为目标任务集合。
举例来说,若第一周期长度为24小时,当前的各个候选任务集合有S1、S2、S3、S4,其中,S1、S2、S3、S4分别对应的周期长度为24小时、25小时、一周、两周,则可以将S1作为目标任务集合。
可选的,该装置可以响应于各个候选任务集合对应的周期长度均与第一周期长度不同,将对应周期长度大于第一周期长度、且与第一周期长度间的差值最小的任一候选任务集合,确定为目标任务集合。
举例来说,若第一周期长度为24小时,当前的各个候选任务集合有S1、S2、S3、S4,其中,S1、S2、S3、S4分别对应的周期长度为8小时、12小时、86小时、25小时,由于S4对应的周期长度大于24小时,且25小时与24小时之间的差值,小于86小时与24小时的差值,则可以将S4作为目标任务集合。
需要说明的是,上述示例仅为一种示意性说明,对本公开不构成限定。
可以理解的是,若候选任务集合的周期长度与第一周期长度相同,此时候选任务集合为最佳的目标任务集合,若各个候选任务集合对应的周期长度均与第一周期长度不同,此时可以寻找周期长度较大的候选任务集合作为目标任务集合,从而之后将第一GPU利用率曲线和目标任务集合中各个第二任务的第二GPU利用率曲线进行相加时,可以更好的进行互补,对GPU的占用率更高。
举例来说,第一任务对应的2个单位周期内8个时刻(t1、t2、t3、t4、t5、t6、t7、t8)对应的GPU利用率分别为0.2、0.3、0.7、0.1、0.2、0.3、0.7、0.1。
其中,第二任务对应的周期长度为第一周期长度的2倍,第二任务在1个周期内相同的8个时刻(t1、t2、t3、t4、t5、t6、t7、t8)对应的GPU利用率分别为0.7、0.6、0.2、0.8、0.7、0.6、0.15、0.8,因而将第一任务对应的2个单位周期的第一GPU利用率曲线和第二任务在1个周期内的第二GPU利用率曲线中t1、t2、t3、t4、t5、t6、t7、t8时刻的GPU利用率相加时,可以得到这8个时刻的GPU利用率分别为0.9、0.9、0.9、0.9、0.9、0.9、0.85、0.9,因而可以看出此时整体的GPU利用率较高。
S203:将第一任务的标识与第一GPU利用率曲线关联存入目标任务集合。
需要说明的是,第一任务对应的标识可以为第一任务的编号、类型等等,在此不进行限定。
S204:获取目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线。
S205:根据第一GPU利用率曲线和每个第二GPU利用率曲线,计算每个第二任务对应的第三GPU利用率曲线。
S206:根据各个第二任务对应的第三GPU利用率曲线,从各个第二任务中选取满足预设条件的目标任务。
S207:将第一任务分配至目标任务当前所在的GPU中。
需要说明的是,步骤S204、S205、S206、S207的具体实现方式可以参照上述实施例,在此不进行赘述。
本公开实施例中,首先确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线,之后根据第一周期长度,从各个候选任务集合中确定出目标任务集合,然后将第一任务的标识与第一GPU利用率曲线关联存入目标任务集合,之后获取目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线,之后根据第一GPU利用率曲线和每个第二GPU利用率曲线,计算每个第二任务对应的第三GPU利用率曲线,之后根据各个第二任务对应的第三GPU利用率曲线,从各个第二任务中选取满足预设条件的目标任务,之后将第一任务分配至目标任务当前所在的GPU中。由此,服务器通过将第一任务的标识与第一GPU利用率曲线关联存入目标任务集合,可以使得之后可以便于之后对第一任务的再分配,由于是根据第一周期长度,从各个候选任务集合中确定出的目标任务集合,可以使得目标任务集合对应的周期长度可以与第一周期长度对应,从而便于之后将GPU利用率高峰和低谷进行互补,从而实现GPU共享,降低GPU使用量。
图4是本公开另一实施例提出的GPU任务的分配方法的流程示意图。
如图4所示,该GPU任务的分配方法,包括:
S301:确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线。
需要说明的是,步骤S301的具体实现方式可以参照上述实施例,在此不进行赘述。
S302:响应于未获取到目标任务集合,将第一任务分配在未部署任务的GPU中。
具体的,服务器可以在未获取到目标任务集合的情况下,将第一任务分配在空的GPU中,也即新的未部署任务的GPU中。
S303:创建与第一周期长度对应的候选任务集合,其中,候选任务集合中包含第一任务及第一GPU利用率曲线。
可以理解的是,若未获得与第一周期长度对应的候选任务集合,则服务器可以根据当前第一任务的第一周期长度,创建与第一周期长度对应的候选任务集合,并记录该第一任务对应的第一GPU利用率曲线。
本公开实施例中,首先确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线,之后响应于未获取到目标任务集合,将第一任务分配在未部署任务的GPU中,然后创建与第一周期长度对应的候选任务集合,其中,候选任务集合中包含第一任务及第一GPU利用率曲线。由此,可以在未获取到与第一任务的第一周期长度对应的候选任务集合时,创建新的候选任务集合,从而便于之后之后对新的待分配任务进行分配,从而可以在之后接收到下发的与该第一任务的第一周期长度对应任务时,以当前的第一任务作为候选任务。
图5是本公开一实施例提出的GPU任务的分配装置的结构示意图。
如图5所示,该GPU任务的分配装置500,包括:
确定模块510,用于确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线;
获取模块520,用于获取周期长度与所述第一周期长度相同的目标任务集合,以及所述目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线;
计算模块530,用于根据所述第一GPU利用率曲线和每个所述第二GPU利用率曲线,计算每个所述第二任务对应的第三GPU利用率曲线;
选取模块540,用于根据各个所述第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务;
第一分配模块550,用于将所述第一任务分配至所述目标任务当前所在的GPU中。
可选的,所述确定模块,具体用于:
对所述第一任务关联的GPU利用率曲线进行解析,以确定所述第一任务对应的第一周期长度及所述第一GPU利用率曲线。
可选的,所述确定模块,还包括:
确定单元,用于根据所述第一周期长度,从各个候选任务集合中确定出目标任务集合;
存储单元,用于将所述第一任务的标识与所述第一GPU利用率曲线关联存入所述目标任务集合。
可选的,所述确定单元,具体用于:
响应于各个候选任务集合对应的周期长度均与所述第一周期长度不同,
将对应周期长度大于所述第一周期长度、且与所述第一周期长度间的差值最小的任一候选任务集合,确定为目标任务集合。
可选的,所述选取模块,具体用于:
根据每个所述第二任务对应的第三GPU利用率曲线中各个时刻的GPU利用率,确定每个所述第二任务在所述各个时刻中的最大GPU利用率,以及每个所述第二任务对应的平均GPU利用率;
在任一第二任务对应的所述最大GPU利用率小于预设阈值,且所述任一第二任务对应的平均GPU利用率为各个所述第二任务对应的平均GPU利用率中的最高值的情况下,确定所述任一第二任务为所述目标任务。
可选的,所述装置,还包括:
第二分配模块,用于响应于未获取到所述目标任务集合,将所述第一任务分配在未部署任务的GPU中;
创建模块,用于创建与所述第一周期长度对应的候选任务集合,其中,所述候选任务集合中包含所述第一任务及所述第一GPU利用率曲线。
本公开实施例中,服务器首先确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线,之后获取周期长度与第一周期长度相同的目标任务集合,以及目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线,然后根据第一GPU利用率曲线和每个第二GPU利用率曲线,计算每个第二任务对应的第三GPU利用率曲线,之后根据各个第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务,最后将第一任务分配至目标任务当前所在的GPU中。由此,由于是将第一任务分配至目标任务当前所在的GPU中,使得当前分配的任务和目标任务共享一个GPU,从而在不影响GPU稳定工作的前提下,降低GPU的使用量,降低了企业的运营成本。可以利用周期性任务对GPU利用率周期性变化的特点,根据将待分配的第一任务和当前正在执行的第二任务分别对应的GPU利用率曲线,算出合并后的GPU利用率曲线,可以实现GPU利用率高峰和低谷互补,从而可以保障GPU的稳定运行的前提下,降低GPU的使用量。
图6示出了适于用来实现本公开实施方式的示例性电子设备的框图。图6显示的电子设备12仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,电子设备12以通用计算设备的形式表现。电子设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
电子设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器32。电子设备12可以进一步包括其他可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。
尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read OnlyMemory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其他光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本公开各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其他程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本公开所描述的实施例中的功能和/或方法。
电子设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得人体能与该电子设备12交互的设备通信,和/或与使得该电子设备12能与一个或多个其他计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,电子设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与电子设备12的其他模块通信。应当明白,尽管图中未示出,可以结合电子设备12使用其他硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及GPU任务的分配,例如实现前述实施例中提及的GPU任务的分配方法。
为了实现上述实施例,本公开还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本公开前述实施例提出的GPU任务的分配方法。
为了实现上述实施例,本公开还提出一种计算机程序产品,当计算机程序产品中的指令处理器执行时,执行如本公开前述实施例提出的GPU任务的分配方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
需要说明的是,在本公开的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本公开的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本公开的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本公开的实施例所属技术领域的技术人员所理解。
应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本公开各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定是指相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本公开的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本公开的限制,本领域的普通技术人员在本公开的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (12)

1.一种GPU任务的分配方法,其特征在于,包括:
确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线;
获取周期长度与所述第一周期长度相同的目标任务集合,以及所述目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线,所述目标任务集合中包含的每个第二任务的周期长度均与所述第一周期长度相同;
根据所述第一GPU利用率曲线和每个所述第二GPU利用率曲线,计算每个所述第二任务对应的第三GPU利用率曲线;
根据各个所述第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务,所述目标任务用于和所述第一任务部署在同一个GPU中;
将所述第一任务分配至所述目标任务当前所在的GPU中;
所述获取所述目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线,包括:将所述目标任务集合中各第二任务对应的GPU利用率曲线与所述第一GPU利用率曲线进行时间对齐,获取所述每个第二任务在单位周期内的第二GPU利用率曲线;
所述根据各个所述第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务,包括:
根据每个所述第二任务对应的第三GPU利用率曲线中各个时刻的GPU利用率,确定每个所述第二任务在所述各个时刻中的最大GPU利用率,以及每个所述第二任务对应的平均GPU利用率;
在任一第二任务对应的所述最大GPU利用率小于预设阈值,且所述任一第二任务对应的平均GPU利用率为各个所述第二任务对应的平均GPU利用率中的最高值的情况下,确定所述任一第二任务为所述目标任务。
2.根据权利要求1所述的方法,其特征在于,所述确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线,包括:
对所述第一任务关联的GPU利用率曲线进行解析,以确定所述第一任务对应的第一周期长度及所述第一GPU利用率曲线。
3.如权利要求2所述的方法,其特征在于,在所述确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线之后,还包括:
根据所述第一周期长度,从各个候选任务集合中确定出目标任务集合;
将所述第一任务的标识与所述第一GPU利用率曲线关联存入所述目标任务集合。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一周期长度,从各个候选任务集合中确定出目标任务集合,包括:
响应于各个候选任务集合对应的周期长度均与所述第一周期长度不同,
将对应周期长度大于所述第一周期长度、且与所述第一周期长度间的差值最小的任一候选任务集合,确定为目标任务集合。
5.根据权利要求1所述的方法,其特征在于,还包括:
响应于未获取到所述目标任务集合,将所述第一任务分配在未部署任务的GPU中;
创建与所述第一周期长度对应的候选任务集合,其中,所述候选任务集合中包含所述第一任务及所述第一GPU利用率曲线。
6.一种GPU任务的分配装置,其特征在于,包括:
确定模块,用于确定待分配的第一任务对应的第一周期长度,以及单位周期内的第一GPU利用率曲线;
获取模块,用于获取周期长度与所述第一周期长度相同的目标任务集合,以及所述目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线,所述目标任务集合中包含的每个第二任务的周期长度均与所述第一周期长度相同;
计算模块,用于根据所述第一GPU利用率曲线和每个所述第二GPU利用率曲线,计算每个所述第二任务对应的第三GPU利用率曲线;
选取模块,用于根据各个所述第二任务对应的第三GPU利用率曲线,从各个所述第二任务中选取满足预设条件的目标任务,所述目标任务用于和所述第一任务部署在同一个GPU中;
第一分配模块,用于将所述第一任务分配至所述目标任务当前所在的GPU中;
所述获取所述目标任务集合中每个第二任务在单位周期内的第二GPU利用率曲线,包括:将所述目标任务集合中各第二任务对应的GPU利用率曲线与所述第一GPU利用率曲线进行时间对齐,获取所述每个第二任务在单位周期内的第二GPU利用率曲线;
所述选取模块,具体用于:
根据每个所述第二任务对应的第三GPU利用率曲线中各个时刻的GPU利用率,确定每个所述第二任务在所述各个时刻中的最大GPU利用率,以及每个所述第二任务对应的平均GPU利用率;
在任一第二任务对应的所述最大GPU利用率小于预设阈值,且所述任一第二任务对应的平均GPU利用率为各个所述第二任务对应的平均GPU利用率中的最高值的情况下,确定所述任一第二任务为所述目标任务。
7.根据权利要求6所述的装置,其特征在于,所述确定模块,具体用于:
对所述第一任务关联的GPU利用率曲线进行解析,以确定所述第一任务对应的第一周期长度及所述第一GPU利用率曲线。
8.如权利要求7所述的装置,其特征在于,所述确定模块,还包括:
确定单元,用于根据所述第一周期长度,从各个候选任务集合中确定出目标任务集合;
存储单元,用于将所述第一任务的标识与所述第一GPU利用率曲线关联存入所述目标任务集合。
9.根据权利要求8所述的装置,其特征在于,所述确定单元,具体用于:
响应于各个候选任务集合对应的周期长度均与所述第一周期长度不同,
将对应周期长度大于所述第一周期长度、且与所述第一周期长度间的差值最小的任一候选任务集合,确定为目标任务集合。
10.根据权利要求6所述的装置,其特征在于,还包括:
第二分配模块,用于响应于未获取到所述目标任务集合,将所述第一任务分配在未部署任务的GPU中;
创建模块,用于创建与所述第一周期长度对应的候选任务集合,其中,所述候选任务集合中包含所述第一任务及所述第一GPU利用率曲线。
11.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的方法。
12.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,其中,所述计算机指令用于使所述计算机执行权利要求1-5中任一项所述的方法。
CN202211013408.3A 2022-08-23 2022-08-23 Gpu任务的分配方法、装置、电子设备和存储介质 Active CN115080253B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211013408.3A CN115080253B (zh) 2022-08-23 2022-08-23 Gpu任务的分配方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211013408.3A CN115080253B (zh) 2022-08-23 2022-08-23 Gpu任务的分配方法、装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN115080253A CN115080253A (zh) 2022-09-20
CN115080253B true CN115080253B (zh) 2022-11-22

Family

ID=83244050

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211013408.3A Active CN115080253B (zh) 2022-08-23 2022-08-23 Gpu任务的分配方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN115080253B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116594782A (zh) * 2023-07-13 2023-08-15 中国石油天然气股份有限公司 基于智能运维系统的勘探数据中心的资源管理方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103226495A (zh) * 2013-04-28 2013-07-31 杭州华三通信技术有限公司 一种可倒换进程分配方法及设备
CN103842955A (zh) * 2013-11-28 2014-06-04 华为技术有限公司 一种业务流量控制方法、装置和系统
CN107562532A (zh) * 2017-07-13 2018-01-09 华为技术有限公司 一种预测设备集群的硬件资源利用率的方法及装置
CN114780240A (zh) * 2022-04-29 2022-07-22 苏州浪潮智能科技有限公司 一种基于gpu分时复用的工作流调度方法、设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11106505B2 (en) * 2019-04-09 2021-08-31 Vmware, Inc. System and method for managing workloads using superimposition of resource utilization metrics
CN111353584B (zh) * 2020-02-20 2023-04-07 中山大学 一种基于时间序列分析的深度学习训练任务行为预测方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103226495A (zh) * 2013-04-28 2013-07-31 杭州华三通信技术有限公司 一种可倒换进程分配方法及设备
CN103842955A (zh) * 2013-11-28 2014-06-04 华为技术有限公司 一种业务流量控制方法、装置和系统
CN107562532A (zh) * 2017-07-13 2018-01-09 华为技术有限公司 一种预测设备集群的硬件资源利用率的方法及装置
CN114780240A (zh) * 2022-04-29 2022-07-22 苏州浪潮智能科技有限公司 一种基于gpu分时复用的工作流调度方法、设备及存储介质

Also Published As

Publication number Publication date
CN115080253A (zh) 2022-09-20

Similar Documents

Publication Publication Date Title
CN107295090B (zh) 一种资源调度的方法和装置
US20140282520A1 (en) Provisioning virtual machines on a physical infrastructure
CN110196767A (zh) 服务资源控制方法、装置、设备和存储介质
CN112463375B (zh) 一种数据处理的方法和装置
WO2019170011A1 (zh) 任务分配方法及装置、分布式存储系统
US12026536B2 (en) Rightsizing virtual machine deployments in a cloud computing environment
CN115080253B (zh) Gpu任务的分配方法、装置、电子设备和存储介质
CN114385353A (zh) 资源调度方法及装置、电子设备、存储介质
CN108415765B (zh) 任务调度方法、装置及智能终端
CN112311590A (zh) 云服务的租赁优化方法、装置、设备和介质
CN114844791B (zh) 基于大数据的云服务自动管理分配方法、系统及存储介质
CN115421930A (zh) 任务处理方法、系统、装置、设备及计算机可读存储介质
CN111381957A (zh) 面向分布式平台的服务实例精细化调度方法及系统
CN117311999B (zh) 一种服务集群的资源调度方法、存储介质及电子设备
CN114153609A (zh) 资源控制方法及装置、电子设备、计算机可读存储介质
CN110659125A (zh) 一种分析任务执行方法、装置、系统及电子设备
CN117435337A (zh) 资源配置方法、装置、电子设备及存储介质
CN112463361A (zh) 一种分布式计算的弹性资源分配的方法和设备
WO2023142824A1 (zh) Gpu资源利用率的监控方法、装置、计算机设备及介质
CN116739279A (zh) 任务分配方法、装置、计算机设备及介质
CN117033170A (zh) 测试任务分配方法、装置、设备、存储介质和程序产品
CN111198756A (zh) 一种kubernetes集群的应用调度方法及装置
CN112883239B (zh) 一种资源分配方法、装置、计算机设备及存储介质
CN111475277A (zh) 一种资源分配方法、系统、设备及机器可读存储介质
CN114090201A (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