CN115145730B - 运行监测方法、装置、电子设备和存储介质 - Google Patents

运行监测方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN115145730B
CN115145730B CN202210794854.6A CN202210794854A CN115145730B CN 115145730 B CN115145730 B CN 115145730B CN 202210794854 A CN202210794854 A CN 202210794854A CN 115145730 B CN115145730 B CN 115145730B
Authority
CN
China
Prior art keywords
task
gpu
utilization rate
sample
shared
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
CN202210794854.6A
Other languages
English (en)
Other versions
CN115145730A (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 CN202210794854.6A priority Critical patent/CN115145730B/zh
Publication of CN115145730A publication Critical patent/CN115145730A/zh
Application granted granted Critical
Publication of CN115145730B publication Critical patent/CN115145730B/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开了一种运行监测方法、装置、电子设备和存储介质,涉及计算机技术领域。具体实现方案为:通过监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到至少一个任务的实际吞吐量信息,从而根据至少一个任务的实际吞吐量信息,预测至少一个任务对共享GPU的利用率。由此,可实现在多个任务共享GPU的情况下,通过监测单位时间内各个任务输入到共享GPU的待处理数据量来得到各个任务的实际吞吐量,从而可以根据各个任务的实际吞吐量来预测每个任务对共享GPU的利用率,解决相关技术中在多个任务共享GPU的情况下只能得知多个任务叠加的GPU实时利用率的问题。

Description

运行监测方法、装置、电子设备和存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种运行监测方法、装置、电子设备和存储介质。
背景技术
GPU(graphics processing unit,图形处理器)是一种专门在个人电脑、工作站、汽车、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器。相关技术中,为了提高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是根据本申请第一实施例所提供的一种运行监控方法的流程示意图;
图2是根据本申请第二实施例所提供的一种运行监控方法的流程示意图;
图3是根据本申请第三实施例所提供的一种运行监控方法的流程示意图;
图4是根据本申请第四实施例所提供的一种运行监控方法的流程示意图;
图5是根据本申请第五实施例所提供的一种运行监控装置的结构示意图;
图6是根据本申请第六实施例所提供的一个电子设备的结构示意图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
相关技术中,为了提高GPU的利用率,会让多个任务共享同一个GPU,从而存在在多个任务共享GPU的情况下只能得知多个任务叠加的GPU实时利用率,而无法得知单个任务的GPU实时使用率的问题。
针对上述问题,本申请实施例提供了一种运行监测方法、装置、电子设备和存储介质,用以预测单个任务对共享GPU的利用率,解决相关技术中在多个任务共享GPU的情况下只能得知多个任务叠加的GPU实时利用率的问题。
下面参考附图描述本申请实施例的运行监测方法、装置、电子设备和存储介质。
图1是根据本申请第一实施例所提供的一种运行监控方法的流程示意图。
本申请实施例提供的运行监控方法,可以由运行监控装置执行。该运行监控装置可以为电子设备,也可以被配置在电子设备中,以实现根据至少一个任务的实际吞吐量信息,预测至少一个任务对共享GPU的利用率。本申请实施例以运行监控装置被配置在电子设备中为例进行说明。
其中,电子设备,可以是任意能够进行数据处理的静止或者移动计算设备,例如笔记本电脑、智能手机、可穿戴设备等移动计算设备,或者台式计算机等静止的计算设备,或者服务器,或者其它类型的计算设备等,本申请对此不作限制。
如图1所示,该运行监控方法可以包括以下步骤:
步骤101,监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到至少一个任务的实际吞吐量信息。
在本实施例中,任意一个任务的实际吞吐量信息可以理解为该任务在单位时间内向共享GPU传输的待处理数据的数量信息,从而可以通过监测单位时间内任意一个任务输入到共享GPU的待处理数据量来得到该任务的实际吞吐量信息。
在本实施例中,运行监控装置可以通过监测单位时间内至少一个任务输入到共享GPU的待处理数据量,来得到至少一个任务的实际吞吐量信息。其中,对单位时间的具体取值本实施例并没有作出限定,可选地,可以根据人工经验进行设定,例如,可以将单位时间设定为1小时,或者,也可以根据实际应用需求进行动态调整,本实施例中对此不作限制。
在本实施例中,任务数量可以为一个,也可以为多个,本实施例对此不作限制。可以理解的是,在任务数量为一个的情况下,监测到的单位时间内该任务输入到共享GPU的待处理数据量即为该任务的实际吞吐量信息。在任务数量为多个的情况下,可以通过在单位时间内对这多个任务输入到共享GPU的待处理数据量分别进行监测来得到这多个任务各自对应的实际吞吐量信息,也就是说,在任务数量为多个的情况下,可以得知每个任务的实际吞吐量信息。
需要说明的是,本实施例中的运行监控装置可以通过各种公开、合法、合规的方式监测单位时间内至少一个任务输入到共享GPU的待处理数据量,来得到至少一个任务的实际吞吐量信息。例如,运行监控装置可以在经过授权后,在线实时监测至少一个任务输入到共享GPU的待处理数据量,或者也可以在经过授权后利用其它装置来监测至少一个任务输入到共享GPU的待处理数据量,或者也可以通过其它公开、合法、合规的方式来监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到至少一个任务的实际吞吐量信息,本公开对此不作限制。
步骤102,根据至少一个任务的实际吞吐量信息,预测至少一个任务对共享GPU的利用率。
在本实施例中,运行监控装置可以基于至少一个任务的实际吞吐量信息去预测至少一个任务对共享GPU的利用率,从而得到各个任务对共享GPU的利用率。可以理解的是,共享GPU的利用率和任务的实际吞吐量信息之间存在着正相关的关系,从而可以利用任务的实际吞吐量信息来预测任务对共享GPU的利用率。
可以理解的是,在任务数量为一个的情况下,由于任务数量只有一个,从而共享GPU的利用率即为该任务对共享GPU的利用率。可选地,也可以根据该任务的实际吞吐量信息,预测该任务对共享GPU的利用率。而在任务数量为多个的情况下,由于可以得知每个任务的实际吞吐量信息,从而可以基于每个任务的实际吞吐量信息,预测对应任务对共享GPU的利用率。
在本实施例的一种可能的实现方式中,可以针对至少一个任务中的任意一个任务,根据该任务的实际吞吐量信息,采用训练好的预测模型对该任务对共享GPU的利用率进行预测,从而得到该任务对共享GPU的利用率。需要说明的是,训练好的预测模型已经学习到任务的实际吞吐量信息和任务对共享GPU的利用率之间的对应关系,因此可以基于任务的实际吞吐量信息预测任务对共享GPU的利用率。
本申请实施例提供的运行监控方法,通过监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到至少一个任务的实际吞吐量信息,从而根据至少一个任务的实际吞吐量信息,预测至少一个任务对共享GPU的利用率。由此,可实现在多个任务共享GPU的情况下,通过监测单位时间内各个任务输入到共享GPU的待处理数据量来得到各个任务的实际吞吐量,从而可以根据各个任务的实际吞吐量来预测每个任务对共享GPU的利用率,解决相关技术中在多个任务共享GPU的情况下只能得知多个任务叠加的GPU实时利用率的问题。
通过上述分析可知,本申请实施例中,可以根据至少一个任务的实际吞吐量信息,预测至少一个任务对共享GPU的利用率,为了清楚说明本申请是如何根据至少一个任务的实际吞吐量信息,预测至少一个任务对共享GPU的利用率的,本发明还提供了一种运行监控方法。
图2是根据本申请第二实施例所提供的一种运行监控方法的流程示意图。如图2所示,该运行监控方法可以包括以下步骤:
步骤201,监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到至少一个任务的实际吞吐量信息。
需要说明的是,本步骤的执行过程可以参见上一实施例中步骤101的执行过程,原理相同,在此不再赘述。
步骤202,针对至少一个任务中的目标任务,将目标任务的实际吞吐量信息,输入到第一预测模型中,以根据第一预测模型的输出,确定目标任务对共享GPU的利用率。
在本实施例中,运行监控装置可以先从至少一个任务中确定目标任务,从而针对至少一个任务中的目标任务,将目标任务的实际吞吐量信息,输入到第一预测模型中,以根据第一预测模型的输出,确定目标任务对共享GPU的利用率。需要说明的是,第一预测模型已经学习到任务的实际吞吐量信息和任务对共享GPU的利用率之间的对应关系,因此可以基于任务的实际吞吐量信息预测任务对共享GPU的利用率。
在本实施例中的一种可能的实现方式中,第一预测模型是采用第一训练样本训练得到。其中,第一训练样本包括多个样本吞吐量,并采用各样本吞吐量对应的样本利用率进行标注。其中,多个样本吞吐量是单个任务在非共享GPU上运行时,单个任务所采用的多个吞吐量;多个样本吞吐量对应的样本利用率,是单个任务采用多个样本吞吐量将待处理数据输入非共享GPU进行处理时,非共享GPU的利用率。
本申请实施例提供的运行监控方法,通过监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到至少一个任务的实际吞吐量信息,从而针对至少一个任务中的目标任务,将目标任务的实际吞吐量信息,输入到第一预测模型中,以根据第一预测模型的输出,确定目标任务对共享GPU的利用率。由此,通过采用第一预测模型根据目标任务的实际吞吐量信息来预测目标任务对共享GPU的利用率,可实现在多个任务共享GPU的情况下预测每个任务对共享GPU的利用率,解决相关技术中在多个任务共享GPU的情况下只能得知多个任务叠加的GPU实时利用率的问题。
上一实施例描述了一种根据至少一个任务的实际吞吐量信息预测至少一个任务对共享GPU的利用率的可能的实现方式,本申请实施例提供了另一种根据至少一个任务的实际吞吐量信息预测至少一个任务对共享GPU的利用率的可能的实现方式,图3是根据本申请第三实施例所提供的一种运行监控方法的流程示意图。如图3所示,该运行监控方法可以包括以下步骤:
步骤301,监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到至少一个任务的实际吞吐量信息。
需要说明的是,本步骤的执行过程可以参见上述实施例中步骤101的执行过程,原理相同,在此不再赘述。
步骤302,针对至少一个任务中的目标任务,将目标任务的任务标识和目标任务的实际吞吐量信息,输入到第二预测模型中,以根据第二预测模型的输出,确定目标任务对共享GPU的利用率。
在本实施例中,运行监控装置可以先从至少一个任务中确定目标任务,从而针对至少一个任务中的目标任务,将目标任务的任务标识和目标任务的实际吞吐量信息,输入到第二预测模型中,以根据第二预测模型的输出,确定目标任务对共享GPU的利用率。其中,任务标识用于指示任务类型。需要说明的是,第二预测模型已经学习到任务的实际吞吐量信息和任务对共享GPU的利用率之间的对应关系,因此可以基于任务的实际吞吐量信息预测任务对共享GPU的利用率。
可以理解的是,在多个任务共享GPU时,可能存在不同任务类型消耗资源不同的情况,从而在多个任务共享GPU且不同任务类型消耗资源不同的情况下,可以采用任务标识来指示任务类型,并将目标任务的任务标识和目标任务的实际吞吐量信息,输入到第二预测模型中,以根据第二预测模型的输出,确定目标任务对共享GPU的利用率。
在本实施例中的一种可能的实现方式中,第二预测模型是采用第二训练样本训练得到。其中,第二训练样本包括样本吞吐量和任务标识的组合,并采用样本吞吐量和任务标识的组合对应的样本利用率进行标注。其中,组合中的样本吞吐量是单个任务在非共享GPU上运行时,单个任务采用的多个吞吐量;组合中的任务标识是单个任务的任务标识;组合对应的样本利用率是单个任务采用组合中的样本吞吐量将待处理数据输入非共享GPU进行处理时,非共享GPU的利用率。
本申请实施例提供的运行监控方法,通过监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到至少一个任务的实际吞吐量信息,从而针对至少一个任务中的目标任务,将目标任务的任务标识和目标任务的实际吞吐量信息,输入到第二预测模型中,以根据第二预测模型的输出,确定目标任务对所述共享GPU的利用率。由此,通过采用第二预测模型根据目标任务的任务标识和目标任务的实际吞吐量信息来预测目标任务对共享GPU的利用率,可实现在多个任务共享GPU且不同任务类型消耗资源不同的情况下基于各个任务的任务标识和各个任务的实际吞吐量信息来预测每个任务对共享GPU的利用率,解决相关技术中在多个任务共享GPU的情况下只能得知多个任务叠加的GPU实时利用率的问题。
为了更加清楚地说明上述实施例,现举例进行说明。
图4是根据本申请第四实施例所提供的一种运行监控方法的流程示意图。如图4所示,该运行监控方法可以包括以下步骤:
步骤401,分别让多个任务在非共享GPU上运行。
在本实施例中,可以将多个任务在非共享GPU上运行,以便执行后续步骤。其中,非共享GPU的数量可以为一个或者多个,本实施例中对此不做限制。可以理解的是,当非共享GPU的数量为一个时,可以让多个任务按照设定次序单独在该非共享GPU上运行;当非共享GPU的数量为多个时,可以让多个任务与多个非共享GPU一一匹配,以使每个任务都可以在对应的一个非共享GPU上运行。其中,对设定次序本实施例并没有作出限定,可选地,可以根据人工经验进行设定,例如,可以将设定次序设定为各任务提出向非共享GPU输入数量请求的时间顺序,或者,也可以根据实际应用需求进行动态调整,本实施例中对此不作限制。
步骤402,监测单位时间内各任务输入到非共享GPU的待处理数据量和各任务对非共享GPU的利用率,以得到初始的各任务的实际吞吐量信息和初始的各任务对非共享GPU的利用率。
在本实施例中,针对运行在非共享GPU上的各任务,可以监测单位时间内各任务输入到非共享GPU的待处理数据量和各任务对非共享GPU的利用率,从而得到初始的各任务的实际吞吐量信息和初始的各任务对非共享GPU的利用率。
可以理解的是,当非共享GPU的数量为一个时,由于多个任务是按照设定次序单独在该非共享GPU上运行的,从而可以通过监测单位时间内各任务输入到该非共享GPU的待处理数据量和各任务对该非共享GPU的利用率来得到初始的各任务的实际吞吐量信息和初始的各任务对非共享GPU的利用率;当非共享GPU的数量为多个时,由于可以让多个任务与多个非共享GPU一一匹配,从而可以通过监测单位时间内各任务输入到对应的非共享GPU的待处理数据量和各任务对其对应的一个非共享GPU的利用率来得到初始的各任务的实际吞吐量信息和初始的各任务对非共享GPU的利用率。
步骤403,基于初始的各任务的实际吞吐量信息和初始的各任务对非共享GPU的利用率执行多轮更新。
在本实施例中,可以基于初始的各任务的实际吞吐量信息和初始的各任务对非共享GPU的利用率执行多轮更新。可选地,可以在初始的各任务的实际吞吐量信息按照设定步长进行增加或者减少,以得到新的各任务输入到非共享GPU的待处理数据量。其中,对设定步长的具体取值本实施例并没有作出限定,可选地,可以根据人工经验进行设定,例如,可以将设定步长设定为10,或者,也可以根据实际应用需求进行动态调整,本实施例中对此不作限制。
步骤404,每当执行一轮更新,监测单位时间内各任务输入到非共享GPU的待处理数据量和各任务对非共享GPU的利用率,以得到本轮更新后的各任务的实际吞吐量信息和本轮更新后的各任务对非共享GPU的利用率。
在本实施例中,每当执行一轮更新,需要重新监测一次单位时间内各任务输入到非共享GPU的待处理数据量和各任务对非共享GPU的利用率,以得到本轮更新后的各任务的实际吞吐量信息和本轮更新后的各任务对非共享GPU的利用率。
步骤405,根据各任务的实际吞吐量信息和各任务对非共享GPU的利用率,生成预测模型。
可以理解的是,当多轮更新执行完毕,可以得到多个各任务的实际吞吐量信息和各任务对非共享GPU的利用率,从而可以根据得到的多个各任务的实际吞吐量信息和各任务对非共享GPU的利用率,生成预测模型。需要说明的是,生成的预测模型已经学习到任务的实际吞吐量信息和任务对GPU的利用率之间的对应关系。
在本实施例的一种可能的实现方式中,可以将得到的多个各任务的实际吞吐量信息和各任务对非共享GPU的利用率用二元组数据进行表示,比如,假设任务的实际吞吐量信息用It表示,任务对非共享GPU的利用率用Ut表示,二元组数据即为<It,Ut>。从而可以采用机器学习算法或者深度学习网络对二元组数据进行线性回归,以生成预测模型。
步骤406,监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到至少一个任务的实际吞吐量信息。
需要说明的是,本步骤的执行过程可以参见上述实施例中步骤101的执行过程,原理相同,在此不再赘述。
步骤407,针对至少一个任务中的目标任务,将目标任务的实际吞吐量信息输入到预测模型中,以根据预测模型的输出,确定目标任务对共享GPU的利用率。
在本实施例中,可以先从至少一个任务中确定目标任务,从而针对至少一个任务中的目标任务,将目标任务的实际吞吐量信息输入到预测模型中,以根据预测模型的输出,确定目标任务对共享GPU的利用率。可以理解的是,由于生成的预测模型已经学习到任务的实际吞吐量信息和任务对GPU的利用率之间的对应关系,从而可以基于任务的实际吞吐量信息预测任务对共享GPU的利用率。
本申请实施例提供的运行监控方法,通过分别让多个任务在非共享GPU上运行,实现监测单位时间内各任务输入到非共享GPU的待处理数据量和各任务对非共享GPU的利用率,以得到初始的各任务的实际吞吐量信息和初始的各任务对非共享GPU的利用率,从而基于初始的各任务的实际吞吐量信息和初始的各任务对非共享GPU的利用率执行多轮更新,以及每当执行一轮更新,监测单位时间内各任务输入到非共享GPU的待处理数据量和各任务对非共享GPU的利用率,以得到本轮更新后的各任务的实际吞吐量信息和本轮更新后的各任务对非共享GPU的利用率,进而根据各任务的实际吞吐量信息和各任务对非共享GPU的利用率,生成预测模型,在监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到至少一个任务的实际吞吐量信息之后,针对至少一个任务中的目标任务,将目标任务的实际吞吐量信息输入到预测模型中,以根据预测模型的输出,确定目标任务对共享GPU的利用率。由此,通过在非共享GPU上记录各任务的的实际吞吐量信息和各任务对非共享GPU的利用率,以生成预测模型,从而在多个任务共享GPU的情况下采用预测模型基于各个任务的实际吞吐量信息来预测每个任务对共享GPU的利用率,解决相关技术中在多个任务共享GPU的情况下只能得知多个任务叠加的GPU实时利用率的问题。
为了实现上述实施例,本申请还提出一种运行监控装置。
图5是根据本申请第五实施例所提供的一种运行监控装置的结构示意图。
如图5所示,该运行监控装置包括:监测模块501和预测模块502。
监测模块501,用于监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到至少一个任务的实际吞吐量信息;
预测模块502,用于根据至少一个任务的实际吞吐量信息,预测至少一个任务对共享GPU的利用率。
进一步地,在本申请实施例的一种可能的实现方式中,预测模块502,还用于:
针对至少一个任务中的目标任务,将目标任务的实际吞吐量信息,输入到第一预测模型中,以根据第一预测模型的输出,确定目标任务对共享GPU的利用率。
进一步地,在本申请实施例的一种可能的实现方式中,第一预测模型是采用第一训练样本训练得到;
其中,第一训练样本包括多个样本吞吐量,并采用各样本吞吐量对应的样本利用率进行标注;
多个样本吞吐量,是单个任务在非共享GPU上运行时,单个任务所采用的多个吞吐量;
多个样本吞吐量对应的样本利用率,是单个任务采用多个样本吞吐量将待处理数据输入非共享GPU进行处理时,非共享GPU的利用率。
进一步地,在本申请实施例的一种可能的实现方式中,预测模块502,还用于:
针对至少一个任务中的目标任务,将目标任务的任务标识和目标任务的实际吞吐量信息,输入到第二预测模型中,以根据第二预测模型的输出,确定目标任务对共享GPU的利用率。
进一步地,在本申请实施例的一种可能的实现方式中,第二预测模型是采用第二训练样本训练得到;
其中,第二训练样本包括样本吞吐量和任务标识的组合,并采用组合对应的样本利用率进行标注;
组合中的样本吞吐量,是单个任务在非共享GPU上运行时,单个任务采用的多个吞吐量;
组合中的任务标识,是单个任务的任务标识;
组合对应的样本利用率,是单个任务采用多个样本吞吐量将待处理数据输入非共享GPU进行处理时,非共享GPU的利用率。
进一步地,在本申请实施例的一种可能的实现方式中,任务标识,用于指示任务类型。
本申请实施例提供的运行监控装置,通过监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到至少一个任务的实际吞吐量信息,从而根据至少一个任务的实际吞吐量信息,预测至少一个任务对共享GPU的利用率。由此,可实现在多个任务共享GPU的情况下,通过监测单位时间内各个任务输入到共享GPU的待处理数据量来得到各个任务的实际吞吐量,从而可以根据各个任务的实际吞吐量来预测每个任务对共享GPU的利用率,解决相关技术中在多个任务共享GPU的情况下只能得知多个任务叠加的GPU实时利用率的问题。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
图6是根据本申请第六实施例所提供的一个电子设备的结构示意图。可以理解的是,电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图6所示,该电子设备包括:一个或多个处理器601、存储器602,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图6中以一个处理器601为例。
存储器602即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的运行监控方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的运行监控方法。
存储器602作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的运行监控方法对应的程序指令/模块(例如,附图5所示的监测模块501和预测模块502)。处理器601通过运行存储在存储器602中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的运行监控方法。
存储器602可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据运行监控方法的电子设备的使用所创建的数据等。此外,存储器602可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器602可选包括相对于处理器601远程设置的存储器,这些远程存储器可以通过网络连接至运行监控方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
运行监控方法的电子设备还可以包括:输入装置603和输出装置604。处理器601、存储器602、输入装置603和输出装置604可以通过总线或者其他方式连接,图6中以通过总线连接为例。
输入装置603可接收输入的数字或字符信息,以及产生与运行监控方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置604可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,通过监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到至少一个任务的实际吞吐量信息,从而根据至少一个任务的实际吞吐量信息,预测至少一个任务对共享GPU的利用率。由此,可实现在多个任务共享GPU的情况下,通过监测单位时间内各个任务输入到共享GPU的待处理数据量来得到各个任务的实际吞吐量,从而可以根据各个任务的实际吞吐量来预测每个任务对共享GPU的利用率,解决相关技术中在多个任务共享GPU的情况下只能得知多个任务叠加的GPU实时利用率的问题。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (12)

1.一种运行监测方法,其特征在于,包括:
监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到所述至少一个任务的实际吞吐量信息;
针对所述至少一个任务中的目标任务,将所述目标任务的实际吞吐量信息,输入到训练好的预测模型中,以根据所述训练好的预测模型的输出,确定所述目标任务对所述共享GPU的利用率,其中,所述训练好的预测模型已经学习到所述任务的实际吞吐量信息和所述任务对所述共享GPU的利用率之间的对应关系。
2.根据权利要求1所述的方法,其特征在于,所述训练好的预测模型为第一预测模型,所述第一预测模型是采用第一训练样本训练得到;
其中,所述第一训练样本包括多个样本吞吐量,并采用各所述样本吞吐量对应的样本利用率进行标注;
所述多个样本吞吐量,是单个任务在非共享GPU上运行时,所述单个任务所采用的多个吞吐量;
所述多个样本吞吐量对应的样本利用率,是所述单个任务采用所述多个样本吞吐量将待处理数据输入所述非共享GPU进行处理时,所述非共享GPU的利用率。
3.根据权利要求1所述的方法,其特征在于,所述训练好的预测模型为第二预测模型,所述针对所述至少一个任务中的目标任务,将所述目标任务的实际吞吐量信息,输入到训练好的预测模型中,以根据所述训练好的预测模型的输出,确定所述目标任务对所述共享GPU的利用率,包括:
针对所述至少一个任务中的目标任务,将所述目标任务的任务标识和所述目标任务的实际吞吐量信息,输入到第二预测模型中,以根据所述第二预测模型的输出,确定所述目标任务对所述共享GPU的利用率。
4.根据权利要求3所述的方法,其特征在于,所述第二预测模型是采用第二训练样本训练得到;
其中,所述第二训练样本包括样本吞吐量和任务标识的组合,并采用所述组合对应的样本利用率进行标注;
所述组合中的样本吞吐量,是单个任务在非共享GPU上运行时,所述单个任务采用的多个吞吐量;
所述组合中的任务标识,是所述单个任务的任务标识;
所述组合对应的样本利用率,是所述单个任务采用所述组合中的样本吞吐量将待处理数据输入所述非共享GPU进行处理时,所述非共享GPU的利用率。
5.根据权利要求3或4所述的方法,其特征在于,所述任务标识,用于指示任务类型。
6.一种运行监测装置,其特征在于,包括:
监测模块,用于监测单位时间内至少一个任务输入到共享GPU的待处理数据量,以得到所述至少一个任务的实际吞吐量信息;
预测模块,用于针对所述至少一个任务中的目标任务,将所述目标任务的实际吞吐量信息,输入到训练好的预测模型中,以根据所述训练好的预测模型的输出,确定所述目标任务对所述共享GPU的利用率,其中,所述训练好的预测模型已经学习到所述任务的实际吞吐量信息和所述任务对所述共享GPU的利用率之间的对应关系。
7.根据权利要求6所述的装置,其特征在于,所述训练好的预测模型为第一预测模型,所述第一预测模型是采用第一训练样本训练得到;
其中,所述第一训练样本包括多个样本吞吐量,并采用各所述样本吞吐量对应的样本利用率进行标注;
所述多个样本吞吐量,是单个任务在非共享GPU上运行时,所述单个任务所采用的多个吞吐量;
所述多个样本吞吐量对应的样本利用率,是所述单个任务采用所述多个样本吞吐量将待处理数据输入所述非共享GPU进行处理时,所述非共享GPU的利用率。
8.根据权利要求6所述的装置,其特征在于,所述训练好的预测模型为第二预测模型,所述预测模块,还用于:
针对所述至少一个任务中的目标任务,将所述目标任务的任务标识和所述目标任务的实际吞吐量信息,输入到第二预测模型中,以根据所述第二预测模型的输出,确定所述目标任务对所述共享GPU的利用率。
9.根据权利要求8所述的装置,其特征在于,所述第二预测模型是采用第二训练样本训练得到;
其中,所述第二训练样本包括样本吞吐量和任务标识的组合,并采用所述组合对应的样本利用率进行标注;
所述组合中的样本吞吐量,是单个任务在非共享GPU上运行时,所述单个任务采用的多个吞吐量;
所述组合中的任务标识,是所述单个任务的任务标识;
所述组合对应的样本利用率,是所述单个任务采用所述组合中的样本吞吐量将待处理数据输入所述非共享GPU进行处理时,所述非共享GPU的利用率。
10.根据权利要求8或9所述的装置,其特征在于,所述任务标识,用于指示任务类型。
11.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的方法。
12.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-5中任一项所述的方法。
CN202210794854.6A 2022-07-05 2022-07-05 运行监测方法、装置、电子设备和存储介质 Active CN115145730B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210794854.6A CN115145730B (zh) 2022-07-05 2022-07-05 运行监测方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210794854.6A CN115145730B (zh) 2022-07-05 2022-07-05 运行监测方法、装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN115145730A CN115145730A (zh) 2022-10-04
CN115145730B true CN115145730B (zh) 2023-03-24

Family

ID=83413033

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210794854.6A Active CN115145730B (zh) 2022-07-05 2022-07-05 运行监测方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN115145730B (zh)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110191094A1 (en) * 2010-01-29 2011-08-04 John Michael Quernermoen System and method to evaluate and size relative system performance
CN105528249B (zh) * 2015-12-06 2019-04-05 北京天云融创软件技术有限公司 一种多用户共享gpu资源的调度方法
GB201711223D0 (en) * 2017-07-12 2017-08-23 Univ Leeds Innovations Ltd Data centre utilisation forecasting system and method
JP7331374B2 (ja) * 2019-02-15 2023-08-23 日本電信電話株式会社 リソース管理装置およびリソース管理方法
CN111651263B (zh) * 2020-02-12 2023-10-13 北京小米移动软件有限公司 移动终端的资源处理方法、装置、计算机设备及存储介质
CN112163676B (zh) * 2020-10-13 2024-04-05 北京百度网讯科技有限公司 多任务服务预测模型训练方法、装置、设备以及存储介质
CN112035266A (zh) * 2020-10-16 2020-12-04 腾讯科技(深圳)有限公司 资源分配方法、装置、设备及存储介质
CN113434303A (zh) * 2021-08-27 2021-09-24 湖北星地智链科技有限公司 批处理的遥感影像智能处理模型预测性能优化系统及方法

Also Published As

Publication number Publication date
CN115145730A (zh) 2022-10-04

Similar Documents

Publication Publication Date Title
CN111586128A (zh) 小程序数据的获取方法、装置、设备以及存储介质
CN110706147B (zh) 图像处理的环境确定方法、装置、电子设备和存储介质
CN111984476A (zh) 测试方法和装置
CN111913884A (zh) 分布式测试方法、装置、设备、系统和可读存储介质
CN111709252A (zh) 基于预训练的语义模型的模型改进方法及装置
CN111241810A (zh) 标点预测方法及装置
CN110852379A (zh) 训练样本生成方法、装置以及电子设备
CN112560499A (zh) 语义表示模型的预训练方法、装置、电子设备及存储介质
CN112346612A (zh) 页面显示方法和装置
CN111610972A (zh) 页面生成方法、装置、设备及存储介质
CN111563198A (zh) 一种物料召回方法、装置、设备及存储介质
CN114217996A (zh) 混音方法和装置
US20210125353A1 (en) Method and apparatus for detecting and tracking target, electronic device and storage media
CN111738325A (zh) 图像识别方法、装置、设备以及存储介质
CN110517079B (zh) 数据处理方法、装置、电子设备和存储介质
CN115145730B (zh) 运行监测方法、装置、电子设备和存储介质
CN111858030A (zh) 作业的资源处理方法、装置、电子设备及可读存储介质
CN111510376B (zh) 图像处理方法、装置及电子设备
CN111596897B (zh) 代码复用的处理方法、装置及电子设备
CN112346512A (zh) 时间同步方法和装置
CN113655906A (zh) 折叠屏控制方法和装置
CN111651229A (zh) 字体更换方法、装置及设备
CN111860572A (zh) 数据集蒸馏方法、装置、电子设备及存储介质
CN111522599A (zh) 用于发送信息的方法和装置
CN111783872A (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