CN115934347A - 一种任务调度方法、装置及电子设备 - Google Patents
一种任务调度方法、装置及电子设备 Download PDFInfo
- Publication number
- CN115934347A CN115934347A CN202211690313.5A CN202211690313A CN115934347A CN 115934347 A CN115934347 A CN 115934347A CN 202211690313 A CN202211690313 A CN 202211690313A CN 115934347 A CN115934347 A CN 115934347A
- Authority
- CN
- China
- Prior art keywords
- target
- computing
- task
- resource consumption
- terminal
- 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.)
- Pending
Links
Images
Classifications
-
- 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
Abstract
本申请实施例提供一种任务调度方法、装置及电子设备。在本实施例中,通过将目标计算任务的资源消耗理论值和各计算终端的当前可用计算资源输入到在计算终端的各计算资源相互干扰情况下训练出的的目标估计模型中,确定出各计算终端执行目标计算任务时的实际资源消耗,并基于各计算终端执行目标计算任务时的实际资源消耗,调度至少一个计算终端来执行目标计算任务,避免了计算终端执行计算任务的实际资源消耗和资源消耗理论值之间较大偏差而影响计算任务的执行;利用目标估计模型对目标计算任务的资源消耗理论值进行修正,得到目标计算任务的实际资源消耗,提高了任务调度时使用的资源消耗的准确度,保证计算终端可以正常处理分配的计算任务。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及一种任务调度方法、装置及电子设备。
背景技术
所谓任务调度,指的是将接收到的各计算任务(例如,人脸检测、文件读写等等)分配到计算集群中的各计算终端上运行。目前,常规的任务调度方法是基于资源消耗理论值实现的,该资源消耗理论值通常是将计算任务运行到空载的计算终端(没有运行任何计算任务的计算终端)得到的,其具体比如为中央处理器CPU、图像处理器GPU等资源的消耗值。
但是,实际应用中,各个计算终端并非空载,当调度具有不同负载水平的计算终端执行计算任务时,计算终端的实际资源消耗和上述资源消耗理论值之间有较大偏差,会影响计算任务的执行。
发明内容
有鉴于此,本申请实施例提供一种任务调度方法、装置及电子设备,以避免计算终端执行计算任务的实际资源消耗和已得到的资源消耗理论值之间较大偏差而影响计算任务的执行。
根据本申请实施例的第一方面,提供一种任务调度方法,该方法应用于调度管理设备,该方法包括:
获得目标计算任务的资源消耗理论值、以及集群中各计算终端的当前可用计算资源;其中,所述目标计算任务的资源消耗理论值是指空载的指定终端上运行所述目标计算任务消耗的计算资源;
利用已训练好的目标估计模型并基于所述资源消耗理论值和各计算终端的当前可用计算资源,确定所述集群中各计算终端执行所述目标计算任务时的目标资源消耗信息;所述目标资源消耗信息至少包括:目标资源消耗值;所述目标估计模型是在计算终端的各计算资源相互干扰情况下训练出的;
基于所述集群中各计算终端执行所述目标计算任务时的目标资源消耗信息,调度至少一个计算终端来执行所述目标计算任务。
根据本申请实施例的第二方面,提供一种任务调度装置,该装置应用于调度管理设备,该装置包括:
获得模块,用于获得目标计算任务的资源消耗理论值、以及集群中各计算终端的当前可用计算资源;其中,所述目标计算任务的资源消耗理论值是指空载的指定终端上运行所述目标计算任务消耗的计算资源;
目标资源消耗信息确定模块,用于利用已训练好的目标估计模型并基于所述资源消耗理论值和各计算终端的当前可用计算资源,确定所述集群中各计算终端执行所述目标计算任务时的目标资源消耗信息;所述目标资源消耗信息至少包括:目标资源消耗值;所述目标估计模型是在计算终端的各计算资源相互干扰情况下训练出的;
调度模块,用于基于所述集群中各计算终端执行所述目标计算任务时的目标资源消耗信息,调度至少一个计算终端来执行所述目标计算任务。
根据本申请实施例的第三方面,提供一种电子设备,电子设备包括:处理器和存储器;
其中,所述存储器,用于存储机器可执行指令;
所述处理器,用于读取并执行所述存储器存储的机器可执行指令,以实现如第一方面所述的方法。
本申请实施例提供的技术方案可以包括以下有益效果:
本申请实施例中,通过将目标计算任务的资源消耗理论值和各计算终端的当前可用计算资源输入到在计算终端的各计算资源相互干扰情况下训练出的的目标估计模型中,确定出各计算终端执行目标计算任务时的实际资源消耗,并基于各计算终端执行目标计算任务时的实际资源消耗,调度至少一个计算终端来执行目标计算任务,避免了计算终端执行计算任务的实际资源消耗和已得到的资源消耗理论值之间较大偏差而影响计算任务的执行;
进一步地,利用目标估计模型以及各计算终端的计算资源对目标计算任务的资源消耗理论值进行修正,得到目标计算任务的实际资源消耗,提高了任务调度时使用的资源消耗的准确度,提高调度精度,保证计算终端可以正常处理分配的计算任务。
附图说明
图1是本申请实施例提供的方法流程图。
图2是本申请实施例提供的目标估计模型训练的流程图。
图3为本申请实施例提供的任务调度的框架图。
图4是本申请实施例提供的装置图。
图5是本申请实施例装置硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
为了使本领域技术人员更好地理解本申请实施例提供的技术方案,并使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中技术方案作进一步详细的说明。
下面对本申请实施例提供的方法进行描述:
参见图1,图1为本申请实施例提供的方法流程图。该方法应用于调度管理设备,作为一个实施例,这里的调度管理设备比如为集群中的任一用于执行调度管理任务的计算终端或者独立于集群中的计算终端的终端等,本实施例并不具体限定。
在本实施例中,该调度管理设备与集群中的各个计算终端通信连接。
如图1所示,该流程可包括以下步骤:
S110:获得目标计算任务的资源消耗理论值、以及集群中各计算终端的当前可用计算资源。
示例性地,在本实施例中,目标计算任务指的是一个在计算终端上运行的软件实体,会占用该计算终端一定的计算资源,该目标计算任务可以有很多种,例如,图像处理任务、音频处理任务、视频处理任务、雷达数据处理任务等,当然还可以为具体的数学数据处理任务,例如,矩阵乘任务等,本申请实施例并不具体限定。
这里,图像处理任务例如可以包括:人脸检测任务、违章抓拍任务等;音频计算任务可以包括:语音增强任务、语音识别任务等;雷达数据处理任务可以包括:速度检测任务、三维重建任务等。
需要说明的是,上述目标计算任务还可以为上述多个计算任务的结合,本申请实施例并不具体限定。
示例性地,在本实施例中,上述计算终端包括中央处理器CPU,还包括:图像处理器GPU、数字信号处理器DSP、神经网络处理单元NPU中的至少一个,用于执行不同的目标计算任务。
在本实施例中,目标计算任务的资源消耗理论值是指空载的指定终端上运行目标计算任务消耗的计算资源,这里,计算资源可以包括:CPU资源、GPU资源、NPU资源、DSP资源、内存资源、存储资源以及IO通信资源等等,本申请实施例并不具体限定。
在本实施例中,指定终端可以为集群中的任一空载的计算终端,也可以为独立于集群中的计算终端的一个空载终端,本申请实施例并不具体限定。
这里,空载的指定终端指的是没有运行任何计算任务的终端。
示例性地,在本实施例中,在执行本步骤S110之前,在空载的指定终端上运行该目标计算任务,得到目标计算任务的资源消耗理论值。
示例性地,在本实施例中,集群中各计算终端的当前可用计算资源可以是各计算终端定时向调度管理设备发送的,也可以是各计算终端在接收到调度管理设备发送的当前可用计算资源请求消息时向调度管理设备发送的,本申请实施例并不具体限定。
S120:利用已训练好的目标估计模型并基于资源消耗理论值和各计算终端的当前可用计算资源,确定集群中各计算终端执行目标计算任务时的目标资源消耗信息。
示例性地,在本实施例中,目标估计模型是在计算终端的各计算资源相互干扰情况下训练出的,由于在目标估计模型的训练阶段就考虑了各种资源的不同组合的情况,不需要在确定目标计算任务的实际资源消耗的时候再统计任务负载和计算终端资源的变化关系,能够保证对任意任务所需资源估计的准确性。至于如何训练该目标估计模型,图2所示实施例进行了举例描述,这里暂不赘述。
示例性地,在本实施例中,目标资源消耗信息至少包括:目标资源消耗值,这里,目标资源消耗值是在考虑了计算终端的各计算资源相互干扰情况下得到的较为准确的资源消耗值。
在本实施例中,本步骤S120中,利用已训练好的目标估计模型并基于资源消耗理论值和各计算终端的当前可用计算资源,确定集群中各计算终端执行目标计算任务时的目标资源消耗信息,具体可以为:针对集群中每一计算终端,将该计算终端的当前可用计算资源和资源消耗理论值输入到已训练好的目标估计模型中,以由目标估计模型输出该计算终端执行目标计算任务时的目标资源消耗信息。
S130:基于集群中各计算终端执行目标计算任务时的目标资源消耗信息,调度至少一个计算终端来执行目标计算任务。
示例性地,在本实施例中,基于集群中各计算终端执行目标计算任务时的目标资源消耗信息,调度至少一个计算终端来执行目标计算任务具体可以为:依据各计算终端执行目标计算任务时的目标资源消耗信息对各计算终端进行优先级排序,根据优先级排序结果调度至少一个计算终端来执行目标计算任务。
在本实施例中,依据各计算终端执行目标计算任务时的目标资源消耗信息对各计算终端进行优先级排序具体可以为:目标资源消耗信息越小,该目标资源消耗信息对应的计算终端的优先级越高。
基于上述排序的描述,在本实施例中,根据优先级排序结果调度至少一个计算终端来执行目标计算任务具体可以为:当优先级排序结果中存在目标资源消耗小于其对应的当前可用的计算资源的计算终端时,将优先级排序结果中目标资源消耗大于或等于其对应的当前可用的计算资源的计算终端删除,然后将排序最高的计算终端作为执行目标计算任务的计算终端;当排序结果中目标资源消耗均大于或等于其对应的当前可用的计算资源时,将该目标计算任务分为N个子计算任务,按照排序结果选择N个计算终端来分别执行上述N个子计算任务。
至此,完成图1所示流程。
通过图1流程可以看出,本申请实施例中,通过将目标计算任务的资源消耗理论值和各计算终端的当前可用计算资源输入到在计算终端的各计算资源相互干扰情况下训练出的的目标估计模型中,确定出各计算终端执行目标计算任务时的实际资源消耗,并基于各计算终端执行目标计算任务时的实际资源消耗,调度至少一个计算终端来执行目标计算任务,避免了计算终端执行计算任务的实际资源消耗和已得到的资源消耗理论值之间较大偏差而影响计算任务的执行;
进一步地,利用目标估计模型以及各计算终端的计算资源对目标计算任务的资源消耗理论值进行修正,得到目标计算任务的实际资源消耗,提高了任务调度时使用的资源消耗的准确度,提高调度精度,保证计算终端可以正常处理分配的计算任务。
进一步地,本申请实施例通过神经网络(目标估计模型)对计算资源间干扰以及各计算资源增加与资源消耗信息的增长呈非线性的特性进行建模,每个集群的各个资源特性是固定的,只需要针对每个集群训练出一个模型即可,此外,本申请实施例的方案可以应用到任何需要对给定任务的理论资源和性能估计进行校准的场景或应用。
作为本申请实施例一个可选实施方式,上述将该计算终端的当前可用计算资源和资源消耗理论值输入到已训练好的目标估计模型中,包括:
将已获得的性能估计理论值、该计算终端的当前可用计算资源和资源消耗理论值输入到已训练好的目标估计模型,以由目标估计模型输出该计算终端执行目标计算任务时的目标资源消耗信息。
示例性地,在本实施例中,目标资源消耗信息除了包括目标资源消耗值之外,还可以包括:目标性能估计值,这里,目标性能估计值是在考虑了计算终端的各计算资源相互干扰情况下得到的较为准确的性能估计值。
在本实施例中,性能估计理论值是基于在空载的指定终端上运行目标计算任务的执行情况确定的,这里,性能估计可以包括:目标计算任务在计算终端的CPU上运行的时间、目标计算任务在GPU上运行的时间、计算任务运行引起的能耗等等,本申请实施例并不具体限定。
在本实施例中,在执行本步骤之前,在空载的指定终端上运行该目标计算任务,得到目标计算任务的性能估计理论值。
参见图2,图2为本申请实施例提供的目标估计模型训练的流程图。如图2所示,该流程可包括如下步骤:
S210:将已获得的模拟任务的模拟资源消耗理论值、模拟性能估计理论值以及训练终端被配置的运行模拟任务的模拟计算资源输入到待训练的当前估计模型中,以由当前估计模型输出训练终端运行模拟任务的候选资源消耗信息。
示例性地,在本实施例中,模拟任务不是实际的计算任务,而且设置的模拟计算任务,这里,设置模拟任务指的是设置模拟任务的模拟资源消耗理论值、模拟性能估计理论值。
示例性地,在本实施例中,训练终端可以为集群中的任一计算终端,也可以为独立于集群中的所有计算终端的一终端,本申请实施例并不具体限定。
在本实施例中,模拟计算资源也是训练终端被配置的运行模拟任务的模拟计算资源。
需要说明的是,在本实施例中,模拟任务可以设置多个,对于每个模拟任务,其对应的训练终端被配置的运行模拟任务的模拟计算资源可以为多个。
在本实施例中,上述候选资源消耗至少包括候选资源消耗值和候选性能估计值,本步骤中,将已获得的模拟任务的模拟资源消耗理论值、模拟性能估计理论值以及训练终端被配置的运行模拟任务的模拟计算资源输入到待训练的当前估计模型中,以由当前估计模型输出训练终端运行模拟任务的候选资源消耗信息。
S220:依据候选资源消耗信息、已获得的训练终端运行模拟任务的实际资源消耗以及实际性能,确定损失值;依据损失值,确定当前估计模型是否满足设定训练完成要求,如果是,确定当前估计模型为目标估计模型,如果否,调整当前估计模型对应的模型参数,将调整后的当前估计模型更新为当前估计模型继续迭代训练。
示例性地,在本实施例中,实际资源消耗以及实际性能是在计算资源为模拟计算资源的训练终端中执行模拟任务得到的。
示例性地,在本实施例中,损失值可以为均方损失值,当然,也可以为其他损失值,本申请实施例并不具体限定。
在本实施例中,依据候选资源消耗信息、已获得的训练终端运行模拟任务的实际资源消耗以及实际性能,确定损失值可以为将候选资源消耗信息、实际资源消耗以及实际性能输入到损失值对应的损失函数中,得到损失值。
示例性地,在本实施例中,设定训练完成要求可以仅为损失值小于或等于预设损失值阈值。这里,预设损失值阈值可以根据实际需要设定,本申请实施例对此不作具体限定。
当然,在本实施例中,设定训练完成要求除了损失值小于或等于预设损失值阈值外,还可以包括其他完成要求。这里,其他完成要求例如可以为,迭代次数大于或等于预设迭代次数阈值。本申请实施例对其他完成要求不作具体限定。
示例性地,在本实施例中,本步骤S220中,当当前估计模型满足设定训练完成要求时,确定当前估计模型为目标估计模型;当当前估计模型不满足设定训练完成要求时,基于损失值、利用常规的梯度反传方法调整当前估计模型对应的模型参数(例如,当前估计模型中每层网络的权重),将调整后的当前估计模型更新为当前估计模型继续迭代训练,直至当前估计模型满足设定训练完成需求,得到目标估计模型。
至此,完成图2所示流程。
本申请实施例通过模拟任务对计算平台产生不同的负载,可以保证目标估计模型的训练数据的数量以及多样化,克服了实际计算任务数量少了缺陷,提升目标估计模型的精度和泛化能力。
作为本申请实施例一个可选实施方式,上述基于各计算终端执行目标计算任务时的目标资源消耗信息,调度至少一个计算终端来执行目标计算任务,包括:
首先,依据各计算终端执行目标计算任务时的目标资源消耗信息,对各计算终端进行优先级排序。
示例性地,在本实施例中,依据各计算终端执行目标计算任务时的目标资源消耗信息,对各计算终端进行优先级排序具体可以为:目标资源消耗值和/或目标性能估计值越小,优先级越高。
作为本申请一个实施例,可以为目标资源消耗值和目标性能估计值分别设置一个预设阈值,例如,分别为A和B,其中,A和B均小于1,然后根据目标资源消耗值和目标性能估计值以及其对应的预设阈值的加权平均结果(即A*目标资源消耗值+B*目标性能估计值)对各计算终端进行优先级排序,加权平均结果越小,其对应的计算终端的优先级排序结果越高。
其次,依据优先级排序结果,调度集群中至少一个计算终端来执行目标计算任务。
示例性地,在本实施例中,依据优先级排序结果,调度集群中至少一个计算终端来执行目标计算任务具体可以为:当优先级排序结果中存在目标资源消耗小于其对应的当前可用的计算资源的计算终端时,将优先级排序结果中目标资源消耗大于或等于其对应的当前可用的计算资源的计算终端删除,然后将排序最高的计算终端作为执行目标计算任务的计算终端;当排序结果中目标资源消耗均大于或等于其对应的当前可用的计算资源时,将该目标计算任务分为N个子计算任务,按照排序结果选择N个计算终端来分别执行上述N个子计算任务。
参见图3,图3为本申请实施例提供的任务调度的框架图。如图3所示,在本实施例中,将任务调度过程分为线下和线上两个阶段。线下的过程主要是通过任务模拟器来产生大量不同资源需求的任务以及通过负载模拟器产生计算终端中各计算资源的负载情况。结合运行后采集到的实际资源消耗值和性能指进而为后续的训练目标估计模型产生大量模拟数据。线上该目标估计模型能够根据计算平台上每种资源的实际负载值以及资源消耗理论值来推算出任务实际运行后所需的资源量以及任务本身的性能表现。任务调度不再是依靠理论上资源消耗,而是根据推算出的实际消耗和性能数据来进行调度。
与前述方法的实施例相对应,本说明书还提供了装置及其所应用的终端的实施例。
如图4所示,图4是本申请实施例提供的一种任务调度装置的框图,该装置应用于调度管理设备,上述任务调度装置包括:
获得模块,用于获得目标计算任务的资源消耗理论值、以及集群中各计算终端的当前可用计算资源;其中,目标计算任务的资源消耗理论值是指空载的指定终端上运行目标计算任务消耗的计算资源;
目标资源消耗信息确定模块,用于利用已训练好的目标估计模型并基于资源消耗理论值和各计算终端的当前可用计算资源,确定集群中各计算终端执行目标计算任务时的目标资源消耗信息;目标资源消耗信息至少包括:目标资源消耗值;目标估计模型是在计算终端的各计算资源相互干扰情况下训练出的;
调度模块,用于基于集群中各计算终端执行目标计算任务时的目标资源消耗信息,调度至少一个计算终端来执行目标计算任务。
作为本申请实施例一个可选实施方式,上述目标资源消耗信息确定模块具体用于:
针对集群中每一计算终端,将该计算终端的当前可用计算资源和资源消耗理论值输入到已训练好的目标估计模型中,以由目标估计模型输出该计算终端执行目标计算任务时的目标资源消耗信息。
作为本申请实施例一个可选实施方式,上述将该计算终端的当前可用计算资源和资源消耗理论值输入到已训练好的目标估计模型中,包括:
将已获得的性能估计理论值、该计算终端的当前可用计算资源和资源消耗理论值输入到已训练好的目标估计模型,以由目标估计模型输出该计算终端执行目标计算任务时的目标资源消耗信息;目标资源消耗还包括:目标性能估计值;
其中,性能估计理论值是基于在空载的指定终端上运行目标计算任务的执行情况确定的。
作为本申请实施例一个可选实施方式,该任务调度装置还包括:
候选资源消耗信息输出模块,用于将已获得的模拟任务的模拟资源消耗理论值、模拟性能估计理论值以及训练终端被配置的运行模拟任务的模拟计算资源输入到待训练的当前估计模型中,以由当前估计模型输出训练终端运行模拟任务的候选资源消耗信息;候选资源消耗至少包括候选资源消耗值和候选性能估计值;
训练模块,用于依据候选资源消耗信息、已获得的训练终端运行模拟任务的实际资源消耗以及实际性能,确定损失值;依据损失值,确定当前估计模型是否满足设定训练完成要求,如果是,确定当前估计模型为目标估计模型,如果否,调整当前估计模型对应的模型参数,将调整后的当前估计模型更新为当前估计模型继续迭代训练。
作为本申请实施例一个可选实施方式,上述调度模块具体用于:依据各计算终端执行目标计算任务时的目标资源消耗信息,对各计算终端进行优先级排序;目标资源消耗值和/或目标性能估计值越小,优先级越高;
依据优先级排序结果,调度集群中至少一个计算终端来执行目标计算任务。
作为本申请实施例一个可选实施方式,上述目标计算任务至少包括中的至少一种:图像处理任务、音频处理任务、视频处理任务、雷达数据处理任务。
作为本申请实施例一个可选实施方式,上述计算终端包括:图像处理器GPU、数字信号处理器DSP、神经网络处理单元NPU中的至少一个。
作为本申请实施例一个可选实施方式,上述目标估计模型是在计算终端的各计算资源相互干扰以及各计算资源的增长与资源消耗信息的增长呈非线性的情况下训练出的。
至此,完成图4所示装置的描述。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
对应地,本申请实施例还提供了图4所示装置的硬件结构图,具体如图5所示,该电子设备可以为上述实施方法的设备。如图5所示,该硬件结构包括:处理器和存储器。
其中,所述存储器,用于存储机器可执行指令;
所述处理器,用于读取并执行所述存储器存储的机器可执行指令,以实现如上所示的所对应的任务调度的方法实施例。
作为一个实施例,存储器可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,存储器可以是:易失存储器、非易失性存储器或者类似的存储介质。具体地,存储器可以是RAM(Radom Access Memory,随机存取存储器)、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、DVD等),或者类似的存储介质,或者它们的组合。
至此,完成图5所示电子设备的描述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域技术人员在考虑说明书及实践这里申请的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。
Claims (10)
1.一种任务调度方法,其特征在于,该方法应用于调度管理设备,该方法包括:
获得目标计算任务的资源消耗理论值、以及集群中各计算终端的当前可用计算资源;其中,所述目标计算任务的资源消耗理论值是指空载的指定终端上运行所述目标计算任务消耗的计算资源;
利用已训练好的目标估计模型并基于所述资源消耗理论值和各计算终端的当前可用计算资源,确定所述集群中各计算终端执行所述目标计算任务时的目标资源消耗信息;所述目标资源消耗信息至少包括:目标资源消耗值;所述目标估计模型是在计算终端的各计算资源相互干扰情况下训练出的;
基于所述集群中各计算终端执行所述目标计算任务时的目标资源消耗信息,调度至少一个计算终端来执行所述目标计算任务。
2.根据权利要求1所述的方法,其特征在于,所述利用已训练好的目标估计模型并基于所述资源消耗理论值和各计算终端的当前可用计算资源,确定各计算终端执行所述目标计算任务时的目标资源消耗信息,包括:
针对所述集群中每一计算终端,将该计算终端的当前可用计算资源和所述资源消耗理论值输入到已训练好的目标估计模型中,以由所述目标估计模型输出该计算终端执行所述目标计算任务时的目标资源消耗信息。
3.根据权利要求2所述的方法,其特征在于,将该计算终端的当前可用计算资源和所述资源消耗理论值输入到已训练好的目标估计模型中,包括:
将已获得的性能估计理论值、该计算终端的当前可用计算资源和所述资源消耗理论值输入到已训练好的目标估计模型,以由目标估计模型输出该计算终端执行所述目标计算任务时的目标资源消耗信息;所述目标资源消耗还包括:目标性能估计值;
其中,所述性能估计理论值是基于在所述空载的指定终端上运行所述目标计算任务的执行情况确定的。
4.根据权利要求1至3任一所述的方法,其特征在于,所述目标估计模型通过如下步骤训练得到:
将已获得的模拟任务的模拟资源消耗理论值、模拟性能估计理论值以及训练终端被配置的运行所述模拟任务的模拟计算资源输入到待训练的当前估计模型中,以由所述当前估计模型输出所述训练终端运行所述模拟任务的候选资源消耗信息;所述候选资源消耗至少包括候选资源消耗值和候选性能估计值;
依据所述候选资源消耗信息、已获得的所述训练终端运行所述模拟任务的实际资源消耗以及实际性能,确定损失值;依据所述损失值,确定当前估计模型是否满足设定训练完成要求,如果是,确定当前估计模型为所述目标估计模型,如果否,调整当前估计模型对应的模型参数,将调整后的当前估计模型更新为当前估计模型继续迭代训练。
5.根据权利要求1或3所述的方法,其特征在于,所述基于所述各计算终端执行所述目标计算任务时的目标资源消耗信息,调度至少一个计算终端来执行所述目标计算任务,包括:
依据各计算终端执行所述目标计算任务时的目标资源消耗信息,对各计算终端进行优先级排序;目标资源消耗值和/或目标性能估计值越小,优先级越高;
依据优先级排序结果,调度所述集群中至少一个计算终端来执行所述目标计算任务。
6.根据权利要求1所述的方法,其特征在于,所述目标计算任务至少包括如下任务中的至少一种:图像处理任务、音频处理任务、视频处理任务、雷达数据处理任务。
7.根据权利要求1所述的方法,其特征在于,所述计算终端包括:图像处理器GPU、数字信号处理器DSP、神经网络处理单元NPU中的至少一个。
8.根据权利要求1所述的方法,其特征在于,所述目标估计模型是在计算终端的各计算资源相互干扰以及所述各计算资源的增长与资源消耗信息的增长呈非线性的情况下训练出的。
9.一种任务调度装置,其特征在于,该装置应用于调度管理设备,该装置包括:
获得模块,用于获得目标计算任务的资源消耗理论值、以及集群中各计算终端的当前可用计算资源;其中,所述目标计算任务的资源消耗理论值是指空载的指定终端上运行所述目标计算任务消耗的计算资源;
目标资源消耗信息确定模块,用于利用已训练好的目标估计模型并基于所述资源消耗理论值和各计算终端的当前可用计算资源,确定所述集群中各计算终端执行所述目标计算任务时的目标资源消耗信息;所述目标资源消耗信息至少包括:目标资源消耗值;所述目标估计模型是在计算终端的各计算资源相互干扰情况下训练出的;
调度模块,用于基于所述集群中各计算终端执行所述目标计算任务时的目标资源消耗信息,调度至少一个计算终端来执行所述目标计算任务。
10.一种电子设备,其特征在于,电子设备包括:处理器和存储器;
其中,所述存储器,用于存储机器可执行指令;
所述处理器,用于读取并执行所述存储器存储的机器可执行指令,以实现如权利要求1至8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211690313.5A CN115934347A (zh) | 2022-12-27 | 2022-12-27 | 一种任务调度方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211690313.5A CN115934347A (zh) | 2022-12-27 | 2022-12-27 | 一种任务调度方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115934347A true CN115934347A (zh) | 2023-04-07 |
Family
ID=86652411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211690313.5A Pending CN115934347A (zh) | 2022-12-27 | 2022-12-27 | 一种任务调度方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115934347A (zh) |
-
2022
- 2022-12-27 CN CN202211690313.5A patent/CN115934347A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022037337A1 (zh) | 机器学习模型的分布式训练方法、装置以及计算机设备 | |
KR102170105B1 (ko) | 신경 네트워크 구조의 생성 방법 및 장치, 전자 기기, 저장 매체 | |
CN112199190B (zh) | 内存分配方法、装置、存储介质及电子设备 | |
CN110795246A (zh) | 资源利用率的预测方法及装置 | |
CN110826708B (zh) | 一种用多核处理器实现神经网络模型拆分方法及相关产品 | |
CN111143039B (zh) | 一种虚拟机的调度方法、装置及计算机存储介质 | |
CN109657794B (zh) | 一种基于指令队列的分布式深度神经网络性能建模方法 | |
CN114936085A (zh) | 基于深度学习算法的etl调度方法及装置 | |
CN116467061B (zh) | 一种任务执行的方法、装置、存储介质及电子设备 | |
CN113821332B (zh) | 自动机器学习系统效能调优方法、装置、设备及介质 | |
CN116047934A (zh) | 一种无人机集群的实时仿真方法、系统以及电子设备 | |
US20220026862A1 (en) | Determination of task automation using an artificial intelligence model | |
CN116560968A (zh) | 一种基于机器学习的仿真计算时间预测方法、系统及设备 | |
CN115484266B (zh) | 一种基于负载均衡的数据分发处理方法、系统及云平台 | |
CN115934347A (zh) | 一种任务调度方法、装置及电子设备 | |
CN113779116B (zh) | 对象排序方法、相关设备及介质 | |
CN115827225A (zh) | 异构运算的分配方法、模型训练方法、装置、芯片、设备及介质 | |
CN115373836A (zh) | 计算网络、算力度量方法、调度装置及相关产品 | |
CN114676272A (zh) | 多媒体资源的信息处理方法、装置、设备及存储介质 | |
CN114021031A (zh) | 理财产品信息推送方法及装置 | |
CN114298329A (zh) | 一种模型训练方法、装置、设备及存储介质 | |
CN114757244A (zh) | 模型训练方法、装置、存储介质及设备 | |
CN116820730B (zh) | 多引擎计算系统的任务调度方法、装置及存储介质 | |
CN110888715B (zh) | 一种虚拟化计算方法 | |
CN111274109B (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 |