CN115168016B - 任务调度方法及相关装置、芯片、器件和介质 - Google Patents

任务调度方法及相关装置、芯片、器件和介质 Download PDF

Info

Publication number
CN115168016B
CN115168016B CN202211091114.2A CN202211091114A CN115168016B CN 115168016 B CN115168016 B CN 115168016B CN 202211091114 A CN202211091114 A CN 202211091114A CN 115168016 B CN115168016 B CN 115168016B
Authority
CN
China
Prior art keywords
task
scheduling
sample
scheduled
data
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
CN202211091114.2A
Other languages
English (en)
Other versions
CN115168016A (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.)
Zhejiang Dahua Technology Co Ltd
Original Assignee
Zhejiang Dahua 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 Zhejiang Dahua Technology Co Ltd filed Critical Zhejiang Dahua Technology Co Ltd
Priority to CN202211091114.2A priority Critical patent/CN115168016B/zh
Publication of CN115168016A publication Critical patent/CN115168016A/zh
Application granted granted Critical
Publication of CN115168016B publication Critical patent/CN115168016B/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/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

Abstract

本申请公开了一种任务调度方法及相关装置、芯片、器件和介质,其中,任务调度方法包括:响应于为处理第一数据而生成待调度任务,获取第二数据所涉及的已调度任务的第一耗时,并获取截至当前关于任务处理的状态信息;基于第一耗时和第二耗时进行度量,得到反馈信息,其中,反馈信息表征对第二数据所执行任务调度的合理程度;基于状态信息和反馈信息进行预测,确定待调度任务的目标调度方式;其中,目标调度方式指示负责处理待调度任务的运算单元。上述方案,能够结合动态反馈来调整任务调度,大大降低了任务调度的随机性,相较于随机调度而言,能够大大提升任务调度效率。

Description

任务调度方法及相关装置、芯片、器件和介质
技术领域
本申请涉及数据处理技术领域,特别是涉及一种任务调度方法及相关装置、芯片、器件和介质。
背景技术
目前,在图像、语音等数据处理领域,通常使用多种类别算子对数据进行处理,以得到结果。例如,对图像数据采用目标检测、目标跟踪等不同类别算子进行处理,或者,对语音数据采用语音识别、语义理解等不同类别算子进行处理。
在采用某种算子对数据进行处理时,通常需生成对应类别的任务,并将该任务调度至运算单元,由运算单元处理该任务。然而,现有的任务调度方式具有较大的随机性,导致不同运算单元的占用存在较大差别,由此可能导致任务等待,甚至等待过长,从而降低任务调度效率。有鉴于此,如何提升任务调度效率,成为亟待解决的问题。
发明内容
本申请主要解决的技术问题是提供一种任务调度方法及相关装置、芯片、器件和介质,能够提升任务调度效率。
为了解决上述问题,本申请第一方面提供了一种任务调度方法,包括:响应于为处理第一数据而生成待调度任务,获取第二数据所涉及的已调度任务的第一耗时,并获取截至当前关于任务处理的状态信息;其中,第二数据先于第一数据进行任务生成及调度,状态信息包括各个运算单元的占用情况和待调度任务之前各类已调度任务的第二耗时;基于第一耗时和第二耗时进行度量,得到反馈信息,其中,反馈信息表征对第二数据所执行任务调度的合理程度;基于状态信息和反馈信息进行预测,确定待调度任务的目标调度方式;其中,目标调度方式指示负责处理待调度任务的运算单元。
为了解决上述问题,本申请第二方面提供了一种任务调度装置,包括:获取模块、度量模块和预测模块,获取模块用于响应于为处理第一数据而生成待调度任务,获取第二数据所涉及的已调度任务的第一耗时,并获取截至当前关于任务处理的状态信息;其中,第二数据先于第一数据进行任务生成及调度,状态信息包括各个运算单元的占用情况和待调度任务之前各类已调度任务的第二耗时;度量模块用于基于第一耗时和第二耗时进行度量,得到反馈信息,其中,反馈信息表征对第二数据所执行任务调度的合理程度;预测模块用于基于状态信息和反馈信息进行调度预测,确定待调度任务的调度方式;其中,调度方式指示负责处理待调度任务的运算单元。
为了解决上述问题,本申请第三方面提供了一种芯片,包括存储器、控制器以及若干运算单元,存储器和若干运算单元分别与控制器耦接,运算单元用于执行运算任务,存储器存储有程序指令,处理器用于执行程序指令以实现上述第一方面中的任务调度方法。
为了解决上述问题,本申请第四方面提供了一种信息采集器件,包括摄像头和上述第三方面中的芯片,摄像头与芯片耦接,摄像头用于拍摄图像数据,芯片用于对图像数据进行任务生成、调度及处理。
为了解决上述问题,本申请第五方面提供了一种计算机可读存储介质,存储有能够被处理器运行的程序指令,程序指令用于上述第一方面中的任务调度方法。
上述方案,响应于为处理第一数据而生成待调度任务,获取第二数据所涉及的已调度任务的第一耗时,并获取截至当前关于任务处理的状态信息,且第二数据先于第一数据进行任务生成及调度,状态信息包括各个运算单元的占用情况和待调度任务之前各类已调度任务的第二耗时,基于此再基于第一耗时和第二耗时进行度量,得到反馈信息,且反馈信息表征对第二数据所执行任务调度的合理程度,从而基于状态信息和反馈信息进行预测,确定待调度任务的目标调度方式,且目标调度方式指示负责处理待调度任务的运算单元,由于在任务调度过程中一方面参考任务处理的状态信息,从而能够在任务调度时充分掌握运算单元的占用情况和各类已调度任务的耗时情况,另一方面同时参考反馈信息,从而能够在任务调度时还进一步掌握之前在对第二数据进行任务调度的合理程度,故此结合上述两者进行调度预测,有助于通过任务调度、处理等全流程中的动态反馈来调整任务调度方式,进而能够提升任务调度的自适应性,故有助于提升任务调度效率,特别是相较于随机调度而言,由于结合动态反馈来调整任务调度方式大大降低了任务调度的随机性,故相较于随机调度而言,能够大大提升任务调度效率。
附图说明
图1是本申请任务调度方法一实施例的流程示意图;
图2是训练任务调度预测模型一实施例的流程示意图;
图3是获取训练样本一实施例的流程示意图;
图4是本申请任务调度装置一实施例的框架示意图;
图5是本申请芯片一实施例的框架示意图;
图6是本申请信息采集器件一实施例的框架示意图;
图7是本申请计算机可读存储介质一实施例的框架示意图。
具体实施方式
下面结合说明书附图,对本申请实施例的方案进行详细说明。
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本申请。
本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。
请参阅图1,图1是本申请任务调度方法一实施例的流程示意图。具体而言,可以包括如下步骤:
步骤S11:响应于为处理第一数据而生成待调度任务,获取第二数据所涉及的已调度任务的第一耗时,并获取截至当前关于任务处理的状态信息。
本公开实施例中,第二数据先于第一数据进行任务生成及调度。示例性地,以图像数据处理领域为例,在诸如道路交通图像处理、体育运动图像处理、包裹安检图像处理等场景中,通常需要对连续拍摄的视频帧进行处理(如,目标检测、目标跟踪等),如在需对视频帧i进行处理时,可以为处理视频帧i生成对视频帧i进行目标检测的任务,并调度给运算单元执行该任务,以及为处理视频帧i生成对视频帧i进行目标跟踪的任务,并调度给运算单元执行该任务,为了便于描述,可以将上述对视频帧i进行目标检测的任务记为detection(i),并将上述对视频帧i进行目标跟踪的任务记为track(i)。之后,即可继续对视频帧i+1进行处理,与前述类似地,可以生成对视频帧i+1进行目标检测的任务detection(i+1),并调度给运算单元执行该任务,以及为视频帧i+1进行目标跟踪的任务track(i+1),并调度给运算单元执行该任务,则在此情形中,在响应于为视频帧i+1生成待调度任务detection(i+1)时,可以将视频帧i+1视为第一数据,并将视频帧i视为第二数据。也就是说,第二数据具体可以为第一数据的前一数据。当然,上述举例仅仅是图像数据处理领域中出现的一种情况,在其他数据处理领域可以以此类推。示例性地,如语音数据处理领域,通常需要对连续采集的语音帧进行处理(如,语音识别、语义理解等),从而生成并调度相应类别的任务,具体可以参阅前述图像数据处理领域的相关举例,在此不再赘述。
需要说明的是,本申请公开实施例中所涉及的任务,可以指定与任务类别对应的神经网络,也可以指定与任务类别对应的算子函数。仍以图像数据处理为例,如对于目标检测类的任务,可以指定诸如YOLO、Faster RCNN等神经网络,或者,对于目标分割类的任务,可以指定诸如U-Net等神经网络,如对于边缘提取类的任务,可以指定诸如Canny、sobel等算子。其他情况可以以此类推,在此不再一一举例。此外,本公开实施例中所涉及的数据,也不局限于前述图像数据和语音数据,还可以包括但不限于:通信频谱数据、篇章文本数据、运动轨迹数据、服务日志数据等,在此不做限定。进一步地,本公开实施例中所涉及的所有数据,也局限于一种,可以包含多种数据。例如,在视频会议场景,既涉及到图像数据,也涉及到语音数据。
在一个实施场景中,可以根据数据类型以及数据处理的最终目的,确定数据处理过程中涉及到的任务类别,并为各种任务类别分别指定对应的神经网络或算子函数。以语音数据处理领域为例,若数据处理的最终目的是提取出语音交互,则可以确定处理过程中涉及到的任务类别至少包括:语音识别和语义理解(即先执行语音识别,得到识别文本,再对识别文本执行语义理解,得到理解结果,如意图等),并可以为语音识别类的任务指定如Listen-Attend-Spell(即LAS)等神经网络,并可以为语义理解类的任务指定如长短期记忆网络等神经网络。其他情况可以以此类推,在此不再一一举例。
在一个实施场景中,在获取到新数据之后,即可将新数据作为第一数据,并基于第一数据在数据处理过程中涉及到的任务类别,依次生成并调度各种任务类别的待调度任务。以图像数据处理领域为例,在获取到新视频帧i+2时,可以生成目标检测类的待调度任务detection(i+2),并通过本申请公开实施例中步骤对其进行调度,再生成目标跟踪类的待调度任务track(i+2),并通过本申请公开实施例中步骤对其进行调度。其他情况可以以此类推,在此不再一一举例。
需要说明的是,如无特别说明,本公开实施例中状态信息表征截止当前关于任务处理的状态情况。示例性地,截至当前具体可以表征:截至在为处理第一数据而生成待调度任务的时刻,即状态信息具体可以为截至该时刻关于任务处理的状态情况。此外,“任务处理”所指的任务具体可以包括待调度任务之前的各个已调度任务。
本公开实施例中,状态信息可以包括各个运算单元的占用情况。示例性地,状态信息具体可以包括各个运算单元的利用率。为了便于描述,可以表示为U{u1,u2,…,un},其中,ui表示第i个运算单元的利用率。
在一个实施场景中,上述占用情况具体表示的是,生成待调度任务并准备对该待调度任务进行调度时,各个运算单元的占用情况。
在一个实施场景中,上述运算单元具体指的是指定为执行与数据处理相关的运算任务的运算单元。在实际应用过程中,某些运算单元可能并非指定为执行与数据处理相关的运算任务,如某些运算单元可能指定为备份,则为了进一步提升任务调度的精度,状态信息应不包含诸如此类与数据处理无关的运算单元的占用情况。
在一个实施场景中,数据处理可以运行于芯片,且芯片可以包括控制器以及多个运算单元,控制器可以执行本公开实施例中步骤,以将待调度任务调度到运算单元进行执行。此外,运算单元的种类可以包括但不限于:CPU、GPU、NPU等,即运算单元可以为CPU的硬件核,也可以为GPU的硬件核,还可以为NPU的硬件核,在此不做限定。芯片的具体框架,可以参阅下述相关公开实施例,在此暂不赘述。
在一个实施场景中,区别于前述方式,也可以预先在软件层面将计算资源进行划分,得到若干运算单元。示例性地,如CPU核心数为10,GPU核心数为1000,NPU核心数为10,则可以对上述计算资源进行划分,每个运算单元包括1个CPU核心、100个GPU核心和1个NPU核心。其他情况可以以此类推,在此不再一一举例。当然,对计算资源的划分方式也不限于平均划分,各个运算单元的计算资源也可以不平衡,在此不做限定。
本公开实施例中,状态信息还可以包括待调度任务之前各类已调度任务的第二耗时。示例性地,状态信息具体可以包括待调度任务之前各类已调度任务的平均耗时,也就是说,对于每类已调度任务,可以对该类已调度任务的处理耗时取均值,作为该类已调度任务的第二耗时。仍以图像数据处理领域为例,在生成目标检测类的待调度任务detection(i+2)时,可以获取在此之前目标检测类的已调度任务的平均耗时,作为目标检测类的已调度任务的第二耗时,并可以获取在此之前目标跟踪类任务的平均耗时,作为目标跟踪类的已调度任务的第二耗时。其他情况可以以此类推,在此不再一一举例。为了便于描述,可以记为T{t1,t2,…,tm},其中,ti表示第i类已调度任务的第二耗时。进一步地,为了便于描述,状态信息S可以表示为:
S=(U,T)……(1)
在一个实施场景中,与前述占用情况类似地,上述第二耗时具体表示的是,生成待调度任务并准备对该待调度任务进行调度时,待调度任务之前各类已调度任务的第二耗时。
在一个实施场景中,与前述占用情况类似地,上述第一耗时具体表示的是,生成待调度任务并准备对该待调度任务进行调度时,第二数据所涉及的已调度任务的第一耗时,具体可以为第二数据所涉及的已调度任务的处理耗时。仍以以图像数据处理领域为例,在生成目标检测类的待调度任务detection(i+2)时,可以获取已调度任务detection(i+1)的第一耗时以及已调度任务track(i+1)的第一耗时。其他情况可以以此类推,在此不再一一举例。
步骤S12:基于第一耗时和第二耗时进行度量,得到反馈信息。
本公开实施例中,反馈信息表征对第二数据所执行任务调度的合理程度。示例性地,反馈信息可以包含一个数值,该数值可以反映合理程度,如该数值越大,合理程度越高,反之该数值越小,合理程度越低。具体地,可以基于第二数据所涉及的已调度任务的第一耗时进行度量,得到第一时长,并基于待调度任务之前各类已调度任务的第二耗时进行度量,得到第二时长。在此基础上,再基于第一时长和第二时长进行分析,得到反馈信息。需要说明的是,上述第一时长可以反映针对第二数据进行任务调度的调度效果,上述第二时长可以反映截止当前所有已调度任务整体的调度效果。进一步地,上述第一时长越短,说明针对第二数据进行任务调度的调度效果越好,反之,上述第一时长越长,说明针对第二数据进行任务调度的调度效果越差;类似地,上述第二时长越短,说明截止当前所有已调度任务整体的调度效果越好,反之,上述第二时长越长,说明截止当前所有已调度任务整体的调度效果越差。上述方式,基于第二数据所涉及的已调度任务的第一耗时进行度量,得到第一时长,并基于待调度任务之前各类已调度任务的第二耗时进行度量,得到第二时长,从而基于第一时长和第二时长进行分析,得到反馈信息,即在任务调度之前,先结合待调度任务之前所有已调度任务整体的调度效果和针对第二数据进行任务调度的调度效果,来评价对第二数据执行任务调度的合理程度,从而能够提升评价的准确性,进而能够为后续实现自适应任务调度提供准确数据支撑,以尽可能地提升任务调度效率。
在一个实施场景中,反馈信息具体可以包括:第二时长减去第一时长所得到的时长差值,从而以此来表征对第二数据所执行任务调度的合理程度。示例性地,在时长差值等于0时,可以认为对第二数据进行任务调度的调度效果,持平于截止当前所有已调度任务整体的调度效果,即对第二数据进行任务调度基本合理;或者,在时长差值大于0时,可以认为对第二数据进行任务调度的调度效果,优于截止当前所有已调度任务整体的调度效果,即对第二数据进行任务调度相较于前述第一中情况更为合理,且时长差值越大于0,表征其合理程度越高;或者,在时长差值小于0时,可以认为对第二数据进行任务调度的调度效果,劣于截止当前所有已调度任务整体的调度效果,即对第二数据进行任务调度相较于前述第一种情况更不合理,且时长差值越小于0,表征其合理程度越低。需要说明的是,整体来说,时长差值越大,表明反馈信息给对待调度任务进行任务调度越为正向的反馈,而时长差值越小,表明反馈信息给对待调度任务进行任务调度越为负向的反馈。上述方式,反馈信息包括第二时长减去第一时长所得到的时长差值,故仅需简单运算即可得到反馈信息,从而能够尽可能降低任务调度的复杂度,进而能够有助于进一步提升任务调度效率。
在一个实施场景中,第一时长可以基于对第二数据所涉及已调度任务的第一耗时取均值得到,类似地,第二时长可以基于对待调度任务之前各类已调度任务的第二耗时取均值得到。示例性地,待调度任务之前各类已调度任务的第二耗时可以表示为T{t1,t2,…,tm},则时长差值可以表示为:
R=(Σiti)/m-RT……(2)
上述公式(2)中,ti表示第i类已调度任务的第二耗时,i的取值范围为1至m,m表示已调度任务的类别总数,(Σiti)/m表示第二时长,RT表示的第一时长。上述方式,第一时长基于对第二数据所涉及已调度任务的第一耗时取均值得到,第二时长基于对待调度任务之前各类已调度任务的第二耗时取均值得到,故仅需简单运算即可得到第一时长和第二时长,从而能够尽可能降低任务调度的复杂度,进而能够有助于进一步提升任务调度效率。
在一个实施场景中,区别于前述通过取均值的方式,分别得到第一时长和第二时长,第一时长还可以基于第二数据所涉及已调度任务的第一耗时进行加权处理得到,第二时长基于对待调度任务之前各类已调度任务的第二耗时进行加权处理得到,且执行加权处理的权重与已调度任务的任务类别相关。需要说明的是,可以预先对各种任务类别分别赋予相应的权重,权重的具体大小在此不做限定。示例性地,仍以图像数据处理领域为例,可以为目标检测和目标跟踪赋予相同的权重,如目标检测和目标跟踪均赋予权重0.5;或者,也可以相较于目标检测为目标跟踪赋予更大的权重,如目标跟踪赋予权重0.6且目标检测赋予权重0.4;或者,还可以相较于目标跟踪为目标检测赋予更大的权重,如目标检测赋予权重0.6且目标跟踪赋予权重0.4,在此不做限定。上述方式,第一时长基于第二数据所涉及已调度任务的第一耗时进行加权处理得到,第二时长基于对待调度任务之前各类已调度任务的第二耗时进行加权处理得到,且执行加权处理的权重与已调度任务的任务类别相关,一方面仅需简单运算即可得到第一时长和第二时长,另一方面还能够在度量第一时长和第二时长过程中对不同任务类别的已调度任务有侧重地参考其处理耗时,从而能够在尽可能降低任务调度的复杂度的同时,还能够进一步提升任务调度的合理性,进而能够有助于提升任务调度效率。
步骤S13:基于状态信息和反馈信息进行预测,确定待调度任务的目标调度方式。
本公开实施例中,目标调度方式指示负责处理待调度任务的运算单元。示例性地,指定为执行与数据处理相关的运算任务的运算单元总计有k个,则若经预测确定其中第i个运算单元负责处理待调度任务,则目标调度方式可以记为ak,其他情况可以以此类推,在此不再一一举例。
在一个实施场景中,为了提升调度预测的效率,可以预先训练一个任务调度预测模型,任务调度预测模型可以包括但不限于卷积神经网络等,在此对任务调度预测模型的网络结构不做限定。在此基础上,可以将状态信息S和反馈信息R输入任务调度预测模型,得到待调度任务的目标调度方式A。任务调度预测模型的训练过程,可以参阅下述相关公开实施例,在此暂不赘述。
在另一个实施场景中,区别于前述预测方式,为了在提升调度预测效率的同时,提升调度预测的泛化性,即既能够面对简单场景进行调度预测,也能够面对复杂场景进行调度预测,任务调度预测模型还可以包括多个调度预测网络,且多个调度预测网络的复杂度不同,如多个调度预测网络的网络层数可以不同,且复杂度越高的调度预测网络,其网络层数越多,反之,复杂度越低的调度预测网络,其网络层数越少。需要说明的是,不同复杂度的调度预测网络所适用的场景也不尽相同,如复杂度越高的调度预测网络能够适用于更为复杂的场景,而复杂度越低的调度预测网络能够适用于更为简单的场景。在此基础上,可以基于多个调度预测网络分别对状态信息和反馈信息进行预测,得到各个调度预测网络分别输出的候选调度方式,且候选调度方式指示暂定处理待调度任务的运算单元,从而可以进一步基于各个调度预测网络分别输出的候选调度方式进行决策,得到目标调度方式。也就是说,可以将状态信息S和反馈信息R作为整体分别输入各个调度预测网络进行预测,从而得到各个调度预测网络分别输出的候选调度方式,即多个调度预测网络相互独立且并行,再基于这些候选调度方式进一步进行决策,即可得到目标调度方式。上述方式,基于多个调度预测网络分别对状态信息和反馈信息进行预测,得到各个调度预测网络分别输出的候选调度方式,且多个调度预测网络的复杂度不同,候选调度方式指示暂定处理待调度任务的运算单元,基于此再基于各个调度预测网络分别输出的候选调度方式进行决策,得到目标调度方式,从而通过不同复杂度的调度预测网络分别预测得到候选调度方式,并进一步进行决策得到目标调度方式,能够有助于提升任务调度预测模型的泛化能力。
在一个具体的实施场景中,上述简单场景和复杂场景,可以是基于指定为执行与数据处理相关的运算任务的运算单元总数来衡量的,即运算单元的总数越多,任务调度场景可以视为越复杂,反之,运算单元的总数越少,任务调度场景可以视为越简单;或者,上述简单场景和复杂场景,也可以是基于为处理每个数据而需生成的待调度任务总数来衡量的,即为处理每个数据而需生成的待调度任务的总数越多,任务调度场景可以视为越复杂,反之,为处理每个数据而需生成的待调度任务的总数越少,任务调度场景可以视为越简单。需要说明的是,上述举例仅仅是衡量简单场景和复杂场景的其中几种可能方式,并不因此而限定衡量简单场景和复杂场景的具体方式。
在一个具体的实施场景中,调度预测网络可以包括但不限于卷积神经网络等,在此对调度预测网络的网络结构在此不做限定。
在一个具体的实施场景中,任务调度预测模型具体所含调度预测网络的个数也不做限定,如任务调度预测模型可以包括两个调度预测网络、三个调度预测网络、四个调度预测网络等,在此不做限定。
在一个具体的实施场景中,为了进一步提升任务调度预测模型的泛化能力,任务调度预测模型还可以进一步包括分别与各个调度预测网络连接的调度决策网络,各个调度预测网络相互独立且并行,且各个调度预测网络分别用于对状态信息和反馈信息进行预测,以分别得到候选调度方式,调度决策网络用于对各个调度预测网络分别输出的候选调度方式进行决策,得到目标调度方式。需要说明的是,调度决策网络可以包括但不限于卷积神经网络等,在此对调度决策网络的网络结构不做限定。示例性地,调度决策网络可以包括三层神经网络。为了便于描述,可以将上述多个调度预测网络的输出记为O2{o21,o22,…,o2p},其中,o2i表示第i个调度预测网络的输出结果,即第i个调度预测网络输出的候选调度方式,上述多个调度预测网络的输出O2可以输入调度决策网络,得到目标调度方式。上述方式,任务调度预测模型包括多个调度预测网络,及分别与各个调度预测网络连接的调度决策网络,多个调度预测网络独立且并行,且各个调度预测网络分别用于对状态信息和反馈信息进行预测,以分别得到候选调度方式,调度决策网络用于对各个调度预测网络分别输出的候选调度方式进行决策,得到目标调度方式,有助于进一步提升任务调度预测网络的泛化能力。
需要说明的是,为了便于在海量数据时,提升数据处理以及任务调度的效率,作为一种可能的实施方式,可以预先设置AI开放平台,AI开放平台可以集成有至少一个算法方案,不同算法方案用于解决不同问题(或实现不同功能),每个算法方案可以由若干算子组合而成。在此基础上,当AI开放平台接收到新数据时,可以将该新数据作为第一数据,并基于需要解决的问题(或需要实现的功能),调用对应的算法方案,以及根据调用的算法方案内各个算子,分别为第一数据生成对应的待调度任务,并通过本公开实施例中步骤分别对待调度任务进行调度。示例性地,AI开放平台可以集成有用于轨迹提取的算法方案和用于语音交互的算法方案,且用于轨迹提取的算法方案可以由用于实现目标检测的算子和用于实现目标跟踪的算子组成,而用于语音交互的算法方案可以由用于实现语音识别的算子和用于语义理解的算子组成。在此基础上,当接收到新的图像数据时,可以将该新的图像数据作为第一数据,并基于需要解决的问题为“轨迹提取”,从而调用用于轨迹提取的算法方案,由于该算法方案由用于实现目标检测的算子和用于实现目标跟踪的算子组成,故可以为第一数据生成类别为“目标检测”的待调度任务,并通过本公开实施例中步骤对该待调度任务进行调度,以及为第一数据生成类别为“目标跟踪”的待调度任务,并通过本公开实施例中步骤对该待调度任务进行调度。其他情况可以以此类推,在此不再一一举例。此外,AI开放平台具体可以运行于管理服务器,用户可以访问管理服务器以在AI开放平台进行配置,如在AI开放平台配置算法方案。进一步地,AI开放平台还可以与信息采集设备通信连接,以获取待处理数据,并为待处理数据生成待调度任务,以通过本公开实施例中步骤对待调度任务进行调度,从而实现对待处理数据进行处理,信息采集设备可以包括但不限于:摄像机、麦克风等,在此不做限定。此外,AI开放平台还可以进一步与运算服务器通信连接,且运算服务器可以包含但不限于:CPU、GPU、NPU等,并预先将运算服务器的计算资源划分为若干运算单元,或者预先将各个运算服务器分别作为独立的运算单元,以通过本公开实施例中步骤将待调度任务调度到运算服务器。当然,AI开放平台也可以未连接运算服务器,如前所述,AI开放平台可以运行于管理服务器,管理服务器可以内置有包含但不限于:CPU、GPU、NPU等,并预先将管理服务器的计算资源划分为若干运算单元,以通过本公开实施例中步骤将待调度任务调度到运算服务器。
上述方案,响应于为处理第一数据而生成待调度任务,获取第二数据所涉及的已调度任务的第一耗时,并获取截至当前关于任务处理的状态信息,且第二数据先于第一数据进行任务生成及调度,状态信息包括各个运算单元的占用情况和待调度任务之前各类已调度任务的第二耗时,基于此再基于第一耗时和第二耗时进行度量,得到反馈信息,且反馈信息表征对第二数据所执行任务调度的合理程度,从而基于状态信息和反馈信息进行预测,确定待调度任务的目标调度方式,且目标调度方式指示负责处理待调度任务的运算单元,由于在任务调度过程中一方面参考任务处理的状态信息,从而能够在任务调度时充分掌握运算单元的占用情况和各类已调度任务的耗时情况,另一方面同时参考反馈信息,从而能够在任务调度时还进一步掌握之前在对第二数据进行任务调度的合理程度,故此结合上述两者进行调度预测,有助于通过任务调度、处理等全流程中的动态反馈来调整任务调度方式,进而能够提升任务调度的自适应性,故有助于提升任务调度效率,特别是相较于随机调度而言,由于结合动态反馈来调整任务调度方式大大降低了任务调度的随机性,故相较于随机调度而言,能够大大提升任务调度效率。
请参阅图2,图2是训练任务调度预测模型一实施例的流程示意图。需要说明的是,在任务调度预测模型如前述公开实施例中第一实施方式所述并不包含多个调度预测网络的情况下,对于该调度预测模型可以通过下述流程进行训练,或者在任务调度预测模型如前述公开实施例所述包含多个调度预测网络的情况下,对于每个调度预测网络均可以通过下述流程进行训练。具体而言,可以包括如下步骤:
步骤S21:基于任务调度预测模型对样本状态信息和第一样本反馈信息进行预测,得到样本待调度任务的预测调度方式。
具体地,在训练任务调度预测模型之前,可以先收集若干训练样本,训练样本具体可以包括:在为第一样本数据生成样本待调度任务时任务处理的样本状态信息、表征第二样本数据所执行任务调度合理程度的第一样本反馈信息、样本调度方式,且第二样本数据先于第一样本数据进行任务生成及调度。关于第一样本数据、第二样本数据、样本状态信息、第一样本反馈信息、样本调度方式的具体含义,可以分别参阅前述公开实施中第一数据、第二数据、状态信息、反馈信息、调度方式的相关描述,在此不再赘述。此外,训练样本对应的第二样本反馈信息应满足预设要求,且第二样本反馈信息表征对样本待调度任务执行样本调度方式的合理程度。也就是说,在样本收集阶段,样本待调度任务可以采用任一样本调度方式进行调度,且在分别采用各种样本调度方式对样本待调度任务之后,均可以得到对应的第二样本反馈信息,第二样本反馈信息表征对样本待调度任务采用该样本调度方式的合理程度,仅有当其满足预设要求时,才选择作为训练样本。上述方式,目标调度方式基于任务调度预测模型对状态信息和反馈信息进行预测得到,任务调度预测模型基于若干训练样本训练得到,训练样本包括:在为第一样本数据生成样本待调度任务时任务处理的样本状态信息、表征第二样本数据所执行任务调度合理程度的第一样本反馈信息、样本调度方式,且第二样本数据先于第一样本数据进行任务生成及调度,且训练样本对应的第二样本反馈信息满足预设要求,第二样本反馈信息表征对样本待调度任务执行样本调度方式的合理程度,故能够通过预设要求的筛选机制筛选出样本调度方式较为合理的训练样本,从而能够有助于提升任务调度预测模型的准确性。
为了便于理解,请结合参阅图3,图3是获取训练样本一实施例的流程示意图。如图3所示,具体可以包括如下步骤:
步骤S31:响应于为处理第一样本数据而生成样本待调度任务,获取第二样本数据所涉及的样本已调度任务的第一样本耗时,并获取样本状态信息。
本公开实施例中,样本状态信息包括各个运算单元的占用情况和样本待调度任务之前各类样本已调度任务的第二样本耗时,具体可以参阅前述公开实施例中步骤S11相关描述,在此不再赘述。
步骤S32:基于第一样本耗时和第二样本耗时进行度量,得到第一样本反馈信息。
具体可以参阅前述公开实施例中步骤S12相关描述,在此不再赘述。
步骤S33:响应于已采用样本调度方式对样本待调度任务进行调度,获取执行样本待调度任务的第三样本耗时,并重新获取各类样本已调度任务的第四样本耗时,以及基于第三样本耗时和第四样本耗时进行度量,得到第二样本反馈信息。
具体地,在已采用某种样本调度方式对样本待调度任务进行调度之后,该样本调度方式所指定的运算单元即可对样本待调度任务进行处理,之后即可获取样本待调度任务的第三样本耗时,并可重新获取各类样本已调度任务的第四样本耗时。在此基础上,与前述公开实施例中获取反馈信息类似地,可以基于第三样本耗时进行度量,得到第一样本时长,并基于重新获取到的各类样本已调度任务的第四样本耗时进行度量,得到第二样本时长,具体度量方式可以参阅前述第一时长和第二时长的相关描述,在此不再赘述。基于此,再基于第一样本时长和第二样本时长进行分析,得到第二样本反馈信息,如与前述公开实施例中反馈信息类似地,可以第二样本反馈信息具体可以包括第二样本时长减去第一样本时长的样本时长差值。也就是说,样本时长差值越大,表明该种样本调度方式越合理,反之,样本时长差值越小,表明该种样本调度方式越不合理。此外,在实际应用过程中,可以搭建符合样本状态信息的若干工作环境,并在每个工作环境下分别采用不同样本调度方式对样本待调度任务进行调度,从而可以得到每种样本调度方式分别对应的第二样本反馈信息。
步骤S34:基于第二样本反馈信息满足预设要求,将样本状态信息、第一样本反馈信息和样本调度方式组合为训练样本。
具体地,如前所述,第二样本反馈信息可以包括样本时长差值,且样本时长差值越大,表明样本调度方式越合理,反之,样本时长差值越小,表明样本调度方式越不合理。基于此,预设要求可以设置为包括:样本时长差值不低于预设容忍时长。也就是说,当某种样本调度方式对应的第二样本反馈信息中样本时长差值不低于预设容忍时长时,即表明在样本状态信息所表征的工作环境下,采用该种样本调度方式对样本待调度任务进行调度其合理程度较高,反之,当某种样本调度方式对应的第二样本反馈信息中样本时长差值低于预设容忍时长时,即表明在样本状态信息所表征的工作环境下,采用该种样本调度方式对样本待调度任务进行调度其合理程度较低。在此基础上,若某种样本调度方式对应的第二样本反馈信息中样本时长差值不低于预设容忍时长,即可将样本状态信息、第一样本反馈信息和该种样本调度方式组合为训练样本。此外,预设容忍时长可以根据实际需要进行设置,如可以设置为0,也可以设置为大于0的数值,如可以设置为1、1.5、2、2.5等,在此不做限定,或者还可以设置为小于0的数值,当然,若预设容忍时长设置为小于0的数值,则不宜过小,如可以设置为大于-1为宜,如可以设置为-0.95、-0.85等,在此不做限定。上述方式,通过将预设要求设置为包括:样本时长差值不低于预设容忍时长,能够在训练样本收集阶段,尽可能地收集到对训练任务调度预测模型更为有益的训练样本,使得任务调度预测模型在基于训练样本进行训练之后,能够尽可能地提升其自适应能力。
需要说明的是,经上述步骤即可收集到满足训练需要的训练样本,此时即可将训练样本中样本状态信息和第一样本反馈信息输入任务调度预测模型,得到样本待调度任务的预测调度方式。本公开实施例中,预测调度方式指示经预测负责处理样本待调度任务的运算单元。此外,在任务调度预测模型如前述公开实施例中第一实施方式所述并不包含多个调度预测网络的情况下,可以得到一个预测调度方式,或者在任务调度预测模型如前述公开实施例所述包含多个调度预测网络的情况下,可以得到多个预测调度方式,即任务调度预测模型中每个调度预测网络均可以输出一个预测调度方式。
步骤S22:在样本状态信息所表征的工作环境下,基于第一样本反馈信息,获取采用不同调度方式分别对样本待调度任务进行调度的最大奖励信息,并获取采用预测调度方式对样本待调度任务进行调度的奖励信息。
具体地,可以参考强化学习的技术细节,利用状态信息S、反馈信息R和调度方式A与奖励信息之间的函数映射关系,将样本状态信息、第一样本反馈信息和预测调度方式输入该函数映射关系,得到采用预测调度方式对样本待调度任务进行调度的奖励信息V,并采用该函数映射关系,同时获取在相同样本状态信息和第一样本反馈信息下,采用不同调度方式分别对样本待调度任务进行调度的奖励信息,并取其中最大奖励信息maxV。需要说明的是,获取上述函数映射关系的具体过程,可以参阅强化学习的技术细节,在此不再赘述。
步骤S23:基于第一样本反馈信息、最大奖励信息和奖励信息,得到预测损失。
本公开实施例中,最大奖励信息与折扣系数之积、奖励信息两者之间的差距,与预测损失正相关。需要说明的是,折扣系数可以根据实际应用需要进行设置,具体可以设置为正数,如可以设置为0.5、1、1.5、2等,在此不做限定。示例性地,预测损失F可以表示为:
F=(R+γmaxV-V)2……(3)
上述公式(3)中,R表示第一样本反馈信息,γ表示折扣系数,maxV表示最大奖励信息,即在样本状态信息所表征的工作下采用不同调度方式的最大奖励信息,V表示在样本状态信息所表征的工作环境下采用预测调度方式的奖励信息。当然,公式(2)所示的仅仅为实际应用过程中,预测损失其中一种可能的计算方式,并不因此而限定预测损失具体如何计算,如还可以对最大奖励信息与奖励信息做差,再与第一样本反馈信息求和,并对最终结果取绝对值,作为预测损失。本公开实施例对预测损失的具体计算方式,不做限定。
步骤S24:基于预测损失,调整任务调度预测模型的网络参数。
在一个实施场景中,如前所述,在任务调度预测模型如前述公开实施例中第一实施方式所述并不包含多个调度预测网络的情况下,通过上述方式可以计算得到预测损失,则可以直接基于该预测损失,调整任务调度预测模型的网络参数。需要说明的是,网络参数的调整过程,可以参阅梯度下降等优化方式的技术细节,在此不再赘述。
在另一个实施场景中,在任务调度预测模型如前述公开实施例所述包含多个调度预测网络的情况下,每个调度预测网络均可以输出对应的预测调度方式,并计算得到与各个调度预测网络分别对应的预测损失,从而对各个调度预测网络来说,均可以基于其对应的预测损失,调整其网络参数。需要说明的是,与前述方式类似地,网络参数的调整过程,可以参阅梯度下降等优化方式的技术细节,在此不再赘述。此外,如前所述,在任务调度预测模型如前述公开实施例所述包含多个调度预测网络的情况下,任务调度预测模型还可以进一步包括分别与各个调度预测网络连接的调度决策网络。进一步地,在上述多个调度预测网络训练收敛之后,可以继续获取上述各个调度预测网络对训练样本进行预测分别输出的预测调度方式,并基于调度决策网络对上述各个调度预测网络分别输出的预测调度方式进行决策,得到最终调度方式。也就是说,可以将上述各个调度预测网络对训练样本进行预测分别输出的预测调度方式,输入至调度决策网络,得到最终调度方式。示例性地,与前述预测损失的计算方式类似地,可以在样本状态信息所表征的工作环境下,基于第一样本反馈信息,获取采用不同调度方式分别对样本待调度任务进行调度的最大奖励信息,并获取采用最终调度方式对样本待调度任务进行调度的奖励信息,从而可以基于第一样本反馈信息、最大奖励信息和奖励信息,得到决策损失,从而可以决策损失,调整调度决策网络的网络参数。当然,上述关于决策损失的计算方式,仅仅是实际应用过程中一种可能的实施方式,并不因此而限定决策损失具体的计算方式。
上述方案,基于任务调度预测模型对样本状态信息和第一样本反馈信息进行预测,得到样本待调度任务的预测调度方式,且预测调度方式指示经预测负责处理样本待调度任务的运算单元,再在样本状态信息所表征的工作环境下,基于第一样本反馈信息,获取采用不同调度方式分别对样本待调度任务进行调度的最大奖励信息,并获取采用预测调度方式对样本待调度任务进行调度的奖励信息,从而基于第一样本反馈信息、最大奖励信息和奖励信息,得到预测损失,且最大奖励信息与折扣系数之积、奖励信息两者之间的差距,与预测损失正相关,基于预测损失,调整任务调度预测模型的网络参数,故在模型训练过程中通过最小化预测损失,能够迫使采用预测调度方式的奖励信息尽可能地接近最大奖励信息,进而能够迫使任务调度预测模型能够学习到基于状态信息和反馈信息自适应地预测到奖励信息尽可能大的调度方式,故有助于提升任务调度预测模型的自适应能力。
请参阅图4,图4是本申请任务调度装置40一实施例的框架示意图。任务调度装置40包括:获取模块41、度量模块42和预测模块43,获取模块41用于响应于为处理第一数据而生成待调度任务,获取第二数据所涉及的已调度任务的第一耗时,并获取截至当前关于任务处理的状态信息;其中,第二数据先于第一数据进行任务生成及调度,状态信息包括各个运算单元的占用情况和待调度任务之前各类已调度任务的第二耗时;度量模块42用于基于第一耗时和第二耗时进行度量,得到反馈信息,其中,反馈信息表征对第二数据所执行任务调度的合理程度;预测模块43用于基于状态信息和反馈信息进行调度预测,确定待调度任务的调度方式;其中,调度方式指示负责处理待调度任务的运算单元。
上述方案,由于在任务调度过程中一方面参考任务处理的状态信息,从而能够在任务调度时充分掌握运算单元的占用情况和各类已调度任务的耗时情况,另一方面同时参考反馈信息,从而能够在任务调度时还进一步掌握之前在对第二数据进行任务调度的合理程度,故此结合上述两者进行调度预测,有助于通过任务调度、处理等全流程中的动态反馈来调整任务调度方式,进而能够提升任务调度的自适应性,故有助于提升任务调度效率,特别是相较于随机调度而言,由于结合动态反馈来调整任务调度方式大大降低了任务调度的随机性,故相较于随机调度而言,能够大大提升任务调度效率。
在一些公开实施例中,度量模块42包括第一度量子模块,用于基于第二数据所涉及的已调度任务的第一耗时进行度量,得到第一时长;度量模块42包括第二度量子模块,用于基于待调度任务之前各类已调度任务的第二耗时进行度量,得到第二时长;度量模块42包括时长分析子模块,用于基于第一时长和第二时长进行分析,得到反馈信息。
在一些公开实施例中,第一时长基于对第二数据所涉及已调度任务的第一耗时取均值得到,第二时长基于对待调度任务之前各类已调度任务的第二耗时取均值得到;或者,第一时长基于第二数据所涉及已调度任务的第一耗时进行加权处理得到,第二时长基于对待调度任务之前各类已调度任务的第二耗时进行加权处理得到,且执行加权处理的权重与已调度任务的任务类别相关。
在一些公开实施例中,反馈信息包括:第二时长减去第一时长所得到的时长差值。
在一些公开实施例中,预测模块43包括调度预测子模块,用于基于多个调度预测网络分别对状态信息和反馈信息进行预测,得到各个调度预测网络分别输出的候选调度方式;其中,多个调度预测网络的复杂度不同,且候选调度方式指示暂定处理待调度任务的运算单元;预测模块43包括调度决策子模块,用于基于各个调度预测网络分别输出的候选调度方式进行决策,得到目标调度方式。
在一些公开实施例中,目标调度方式基于任务调度预测模型预测得到,任务调度预测模型包括多个调度预测网络,及分别与各个调度预测网络连接的调度决策网络,多个调度预测网络独立且并行;其中,各个调度预测网络分别用于对状态信息和反馈信息进行预测,以分别得到候选调度方式,调度决策网络用于对各个调度预测网络分别输出的候选调度方式进行决策,得到目标调度方式。
在一些公开实施例中,目标调度方式基于任务调度预测模型对状态信息和反馈信息进行预测得到,任务调度预测模型基于若干训练样本训练得到,训练样本包括:在为第一样本数据生成样本待调度任务时任务处理的样本状态信息、表征第二样本数据所执行任务调度合理程度的第一样本反馈信息、样本调度方式;其中,第二样本数据先于第一样本数据进行任务生成及调度,且训练样本对应的第二样本反馈信息满足预设要求,第二样本反馈信息表征对样本待调度任务执行样本调度方式的合理程度。
在一些公开实施例中,任务调度装置40包括样本获取模块,用于响应于为处理第一样本数据而生成样本待调度任务,获取第二样本数据所涉及的样本已调度任务的第一样本耗时,并获取样本状态信息;其中,样本状态信息包括各个运算单元的占用情况和样本待调度任务之前各类样本已调度任务的第二样本耗时;任务调度装置40包括样本度量模块,用于基于第一样本耗时和第二样本耗时进行度量,得到第一样本反馈信息;任务调度装置40包括样本反馈模块,用于响应于已采用样本调度方式对样本待调度任务进行调度,获取执行样本待调度任务的第三样本耗时,并重新获取各类样本已调度任务的第四样本耗时,以及基于第三样本耗时和第四样本耗时进行度量,得到第二样本反馈信息;任务调度装置40包括样本组合模块,用于基于第二样本反馈信息满足预设要求,将样本状态信息、第一样本反馈信息和样本调度方式组合为训练样本。
在一些公开实施例中,第一样本反馈信息包括:第二样本时长减去第一样本时长的样本时长差值,第一样本时长基于第一样本耗时度量得到,第二样本时长基于第二样本耗时度量得到,且预设要求包括:样本时长差值不低于预设容忍时长。
在一些公开实施例中,任务调度装置40包括样本预测模块,用于基于调度预测模对样本状态信息和第一样本反馈信息进行预测,得到样本待调度任务的预测调度方式;其中,预测调度方式指示经预测负责处理样本待调度任务的运算单元;任务调度装置40包括奖励获取模块,用于在样本状态信息所表征的工作环境下,基于第一样本反馈信息,获取采用不同调度方式分别对样本待调度任务进行调度的最大奖励信息,并获取采用预测调度方式对样本待调度任务进行调度的奖励信息;任务调度装置40包括损失度量模块,用于基于第一样本反馈信息、最大奖励信息和奖励信息,得到预测损失;其中,最大奖励信息与折扣系数之积、奖励信息两者之间的差距,与预测损失正相关;任务调度装置40包括参数调整模块,用于基于预测损失,调整调度预测模型的网络参数。
请参阅图5,图5是本申请芯片50一实施例的框架示意图。芯片50包括存储器51、控制器52以及若干运算单元53,存储器51和若干运算单元53分别与控制器52耦接,运算单元53用于执行运算任务,存储器51存储有程序指令,控制器52用于执行程序指令以实现上述方法公开实施例中步骤。需要说明的是,本公开实施例中,对芯片50所采用的指令集(如,精简指令集、复杂指令集等),以及芯片50的芯片架构(如,ARM架构、X86架构等)不做具体限定。此外,如图5所示,存储器51、控制器52以及若干运算单元53可以通过总线实现耦接。
具体而言,控制器52用于控制其自身以及存储器51、运算单元53以实现上述任一方法实施例中的步骤。控制器52可能是一种集成电路芯片,具有信号的处理能力。控制器52还可以包括但不限于:数字信号处理器(Digital Signal Processor, DSP)、专用集成电路(Application Specific Integrated Circuit, ASIC)、现场可编程门阵列(Field-Programmable Gate Array, FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
上述方案,由于在任务调度过程中一方面参考任务处理的状态信息,从而能够在任务调度时充分掌握运算单元的占用情况和各类已调度任务的耗时情况,另一方面同时参考反馈信息,从而能够在任务调度时还进一步掌握之前在对第二数据进行任务调度的合理程度,故此结合上述两者进行调度预测,有助于通过任务调度、处理等全流程中的动态反馈来调整任务调度方式,进而能够提升任务调度的自适应性,故有助于提升任务调度效率,特别是相较于随机调度而言,由于结合动态反馈来调整任务调度方式大大降低了任务调度的随机性,故相较于随机调度而言,能够大大提升任务调度效率。
请参阅图6,图6是本申请信息采集器件60一实施例的框架示意图。信息采集器件60包括摄像头61和上述公开实施例中的芯片62,摄像头61与芯片62耦接,摄像头61用于拍摄图像数据,芯片62用于对图像数据进行任务生成、调度及处理。需要说明的是,信息采集器件60可以包括但不限于:智能手机、平板电脑、车载设备、会议终端等,在此不做限定。在一个实施场景中,信息采集器件60还可以进一步包括麦克风63,麦克风63与芯片62耦接,麦克风63用于拾取语音数据,芯片62还用于对语音数据进行任务生成、调度及处理。此外,对图像数据或语音数据进行任务生成、调度及处理的具体过程,可以参阅前述公开实施例,在此不再赘述。
上述方案,由于在任务调度过程中一方面参考任务处理的状态信息,从而能够在任务调度时充分掌握运算单元的占用情况和各类已调度任务的耗时情况,另一方面同时参考反馈信息,从而能够在任务调度时还进一步掌握之前在对第二数据进行任务调度的合理程度,故此结合上述两者进行调度预测,有助于通过任务调度、处理等全流程中的动态反馈来调整任务调度方式,进而能够提升任务调度的自适应性,故有助于提升任务调度效率,特别是相较于随机调度而言,由于结合动态反馈来调整任务调度方式大大降低了任务调度的随机性,故相较于随机调度而言,能够大大提升任务调度效率。
请参阅图7,图7为本申请计算机可读存储介质70一实施例的框架示意图。计算机可读存储介质70存储有能够被处理器运行的程序指令71,程序指令71用于实现上述任一方法实施例中的步骤。
上述方案,由于在任务调度过程中一方面参考任务处理的状态信息,从而能够在任务调度时充分掌握运算单元的占用情况和各类已调度任务的耗时情况,另一方面同时参考反馈信息,从而能够在任务调度时还进一步掌握之前在对第二数据进行任务调度的合理程度,故此结合上述两者进行调度预测,有助于通过任务调度、处理等全流程中的动态反馈来调整任务调度方式,进而能够提升任务调度的自适应性,故有助于提升任务调度效率,特别是相较于随机调度而言,由于结合动态反馈来调整任务调度方式大大降低了任务调度的随机性,故相较于随机调度而言,能够大大提升任务调度效率。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
若本申请技术方案涉及个人信息,应用本申请技术方案的产品在处理个人信息前,已明确告知个人信息处理规则,并取得个人自主同意。若本申请技术方案涉及敏感个人信息,应用本申请技术方案的产品在处理敏感个人信息前,已取得个人单独同意,并且同时满足“明示同意”的要求。例如,在摄像头等个人信息采集装置处,设置明确显著的标识告知已进入个人信息采集范围,将会对个人信息进行采集,若个人自愿进入采集范围即视为同意对其个人信息进行采集;或者在个人信息处理的装置上,利用明显的标识/信息告知个人信息处理规则的情况下,通过弹窗信息或请个人自行上传其个人信息等方式获得个人授权;其中,个人信息处理规则可包括个人信息处理者、个人信息处理目的、处理方式以及处理的个人信息种类等信息。

Claims (13)

1.一种任务调度方法,其特征在于,包括:
响应于为处理第一数据而生成待调度任务,获取第二数据所涉及的已调度任务的第一耗时,并获取截至当前关于任务处理的状态信息;其中,所述第二数据为先于所述第一数据进行任务生成及调度的一帧数据,所述状态信息包括各个运算单元的占用情况和所述待调度任务之前各类已调度任务的第二耗时,且所述第一耗时为所述第二数据所涉及的已调度任务的处理耗时,所述第二耗时为所述待调度任务之前同类所述已调度任务的处理耗时的均值;
基于所述第二数据所涉及的已调度任务的第一耗时进行度量,得到第一时长,并基于所述待调度任务之前各类已调度任务的第二耗时进行度量,得到第二时长,以及基于所述第一时长和所述第二时长进行分析,得到反馈信息;其中,所述反馈信息表征对所述第二数据所执行任务调度的合理程度,且所述反馈信息包括所述第二时长减去所述第一时长所得到的时长差值;
基于所述状态信息和所述反馈信息进行预测,确定所述待调度任务的目标调度方式;其中,所述目标调度方式指示负责处理所述待调度任务的运算单元。
2.根据权利要求1所述的方法,其特征在于,所述第一时长基于对所述第二数据所涉及已调度任务的第一耗时取均值得到,所述第二时长基于对所述待调度任务之前各类已调度任务的第二耗时取均值得到;
或者,所述第一时长基于所述第二数据所涉及已调度任务的第一耗时进行加权处理得到,所述第二时长基于对所述待调度任务之前各类已调度任务的第二耗时进行加权处理得到,且执行所述加权处理的权重与所述已调度任务的任务类别相关。
3.根据权利要求1所述的方法,其特征在于,所述基于所述状态信息和所述反馈信息进行预测,确定所述待调度任务的目标调度方式,包括:
基于多个调度预测网络分别对所述状态信息和所述反馈信息进行预测,得到各个所述调度预测网络分别输出的候选调度方式;其中,所述多个调度预测网络的复杂度不同,且所述候选调度方式指示暂定处理所述待调度任务的运算单元;
基于各个所述调度预测网络分别输出的候选调度方式进行决策,得到所述目标调度方式。
4.根据权利要求3所述的方法,其特征在于,所述目标调度方式基于任务调度预测模型预测得到,所述任务调度预测模型包括所述多个调度预测网络,及分别与各个所述调度预测网络连接的调度决策网络,所述多个调度预测网络独立且并行;
其中,各个所述调度预测网络分别用于对所述状态信息和所述反馈信息进行预测,以分别得到候选调度方式,所述调度决策网络用于对各个所述调度预测网络分别输出的候选调度方式进行决策,得到所述目标调度方式。
5.根据权利要求1所述的方法,其特征在于,所述目标调度方式基于任务调度预测模型对所述状态信息和所述反馈信息进行预测得到,所述任务调度预测模型基于若干训练样本训练得到,所述训练样本包括:在为第一样本数据生成样本待调度任务时任务处理的样本状态信息、表征第二样本数据所执行任务调度合理程度的第一样本反馈信息、样本调度方式;
其中,所述第二样本数据先于所述第一样本数据进行任务生成及调度,且所述训练样本对应的第二样本反馈信息满足预设要求,所述第二样本反馈信息表征对所述样本待调度任务执行所述样本调度方式的合理程度。
6.根据权利要求5所述的方法,其特征在于,所述训练样本的获取步骤包括:
响应于为处理所述第一样本数据而生成所述样本待调度任务,获取所述第二样本数据所涉及的样本已调度任务的第一样本耗时,并获取所述样本状态信息;其中,所述样本状态信息包括各个运算单元的占用情况和所述样本待调度任务之前各类样本已调度任务的第二样本耗时;
基于所述第一样本耗时和所述第二样本耗时进行度量,得到所述第一样本反馈信息;
响应于已采用所述样本调度方式对所述样本待调度任务进行调度,获取执行所述样本待调度任务的第三样本耗时,并重新获取各类样本已调度任务的第四样本耗时,以及基于所述第三样本耗时和所述第四样本耗时进行度量,得到所述第二样本反馈信息;
基于所述第二样本反馈信息满足所述预设要求,将所述样本状态信息、所述第一样本反馈信息和所述样本调度方式组合为所述训练样本。
7.根据权利要求6所述的方法,其特征在于,所述第一样本反馈信息包括:第二样本时长减去第一样本时长的样本时长差值,所述第一样本时长基于所述第一样本耗时度量得到,所述第二样本时长基于所述第二样本耗时度量得到,且所述预设要求包括:所述样本时长差值不低于预设容忍时长。
8.根据权利要求5所述的方法,其特征在于,所述任务调度预测模型的训练步骤包括:
基于所述任务调度预测模型对所述样本状态信息和所述第一样本反馈信息进行预测,得到所述样本待调度任务的预测调度方式;其中,所述预测调度方式指示预测负责处理所述样本待调度任务的运算单元;
在所述样本状态信息所表征的工作环境下,基于所述第一样本反馈信息,获取采用不同调度方式分别对所述样本待调度任务进行调度的最大奖励信息,并获取采用所述预测调度方式对所述样本待调度任务进行调度的奖励信息;
基于所述第一样本反馈信息、所述最大奖励信息和所述奖励信息,得到预测损失;其中,所述最大奖励信息与折扣系数之积、所述奖励信息两者之间的差距,与所述预测损失正相关;
基于所述预测损失,调整所述任务调度预测模型的网络参数。
9.一种任务调度装置,其特征在于,包括:
获取模块,用于响应于为处理第一数据而生成待调度任务,获取第二数据所涉及的已调度任务的第一耗时,并获取截至当前关于任务处理的状态信息;其中,所述第二数据为先于所述第一数据进行任务生成及调度的一帧数据,所述状态信息包括各个运算单元的占用情况和所述待调度任务之前各类已调度任务的第二耗时,且所述第一耗时为所述第二数据所涉及的已调度任务的处理耗时,所述第二耗时为所述待调度任务之前同类所述已调度任务的处理耗时的均值;
度量模块,用于基于所述第一耗时和所述第二耗时进行度量,得到反馈信息;其中,所述反馈信息表征对所述第二数据所执行任务调度的合理程度;
预测模块,用于基于所述状态信息和所述反馈信息进行调度预测,确定所述待调度任务的调度方式;其中,所述调度方式指示负责处理所述待调度任务的运算单元;
其中,所述度量模块包括第一度量子模块,用于基于所述第二数据所涉及的已调度任务的第一耗时进行度量,得到第一时长,所述度量模块包括第二度量子模块,用于基于所述待调度任务之前各类已调度任务的第二耗时进行度量,得到第二时长,所述度量模块包括时长分析子模块,用于基于所述第一时长和所述第二时长进行分析,得到所述反馈信息,且所述反馈信息包括所述第二时长减去所述第一时长所得到的时长差值。
10.一种芯片,其特征在于,包括存储器、控制器以及若干运算单元,所述存储器和所述若干运算单元分别与所述控制器耦接,所述运算单元用于执行运算任务,所述存储器存储有程序指令,所述控制器用于执行所述程序指令以实现权利要求1至8任一项所述的任务调度方法。
11.一种信息采集器件,其特征在于,包括摄像头和如权利要求10所述的芯片,所述摄像头与所述芯片耦接,所述摄像头用于拍摄图像数据,所述芯片用于对所述图像数据进行任务生成、调度及处理。
12.根据权利要求11所述的信息采集器件,其特征在于,所述信息采集器件还包括麦克风,所述麦克风与所述芯片耦接,所述麦克风用于拾取语音数据,所述芯片还用于对所述语音数据进行任务生成、调度及处理。
13.一种计算机可读存储介质,其特征在于,存储有能够被处理器运行的程序指令,所述程序指令用于实现权利要求1至8任一项所述的任务调度方法。
CN202211091114.2A 2022-09-07 2022-09-07 任务调度方法及相关装置、芯片、器件和介质 Active CN115168016B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211091114.2A CN115168016B (zh) 2022-09-07 2022-09-07 任务调度方法及相关装置、芯片、器件和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211091114.2A CN115168016B (zh) 2022-09-07 2022-09-07 任务调度方法及相关装置、芯片、器件和介质

Publications (2)

Publication Number Publication Date
CN115168016A CN115168016A (zh) 2022-10-11
CN115168016B true CN115168016B (zh) 2022-12-06

Family

ID=83481426

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211091114.2A Active CN115168016B (zh) 2022-09-07 2022-09-07 任务调度方法及相关装置、芯片、器件和介质

Country Status (1)

Country Link
CN (1) CN115168016B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013154365A1 (ko) * 2012-04-12 2013-10-17 삼성전자 주식회사 단말기에서 태스크 스케줄링을 수행하는 방법 및 장치
WO2022087415A1 (en) * 2020-10-22 2022-04-28 Arizona Board Of Regents On Behalf Of Arizona State University Runtime task scheduling using imitation learning for heterogeneous many-core systems

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8146090B2 (en) * 2005-09-29 2012-03-27 Rockstar Bidco, LP Time-value curves to provide dynamic QoS for time sensitive file transfer
CN106610867B (zh) * 2016-12-21 2020-01-17 成都理工大学 一种片上网络任务调度方法及装置
CN109032769B (zh) * 2017-06-08 2020-09-11 中国移动通信集团浙江有限公司 一种基于容器的持续集成ci任务处理方法及装置
EP3525563A1 (en) * 2018-02-07 2019-08-14 ABB Schweiz AG Method and system for controlling power consumption of a data center based on load allocation and temperature measurements
CN111026523A (zh) * 2018-10-10 2020-04-17 上海寒武纪信息科技有限公司 任务调度控制方法、任务调度器及任务处理装置
US10613899B1 (en) * 2018-11-09 2020-04-07 Servicenow, Inc. Lock scheduling using machine learning
US20200249998A1 (en) * 2019-02-01 2020-08-06 Alibaba Group Holding Limited Scheduling computation graph heterogeneous computer system
CN110543352B (zh) * 2019-08-16 2022-06-07 浙江大华技术股份有限公司 调度系统的任务分配方法及其相关的装置
CN110659134A (zh) * 2019-09-04 2020-01-07 腾讯云计算(北京)有限责任公司 一种应用于人工智能平台的数据处理方法及装置
CN111475298B (zh) * 2020-04-03 2023-05-02 北京字节跳动网络技术有限公司 任务处理方法、装置、设备及存储介质
CN111597028B (zh) * 2020-05-19 2023-08-25 北京百度网讯科技有限公司 用于任务调度的方法和装置
WO2022141300A1 (zh) * 2020-12-30 2022-07-07 华为技术有限公司 一种任务调度方法及装置
CN112286672B (zh) * 2020-12-30 2021-05-07 南京智闪萤科技有限公司 用于调度任务的方法、计算设备和计算机存储介质
CN113886080A (zh) * 2021-09-29 2022-01-04 苏州浪潮智能科技有限公司 高性能集群任务调度方法、装置、电子设备及存储介质
CN114462780A (zh) * 2021-12-28 2022-05-10 华盟科技咨询(深圳)有限公司 一种机器人调度的方法、装置、计算机设备及存储介质
CN114416313A (zh) * 2022-01-05 2022-04-29 腾讯科技(深圳)有限公司 基于资源预测模型的任务调度方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013154365A1 (ko) * 2012-04-12 2013-10-17 삼성전자 주식회사 단말기에서 태스크 스케줄링을 수행하는 방법 및 장치
WO2022087415A1 (en) * 2020-10-22 2022-04-28 Arizona Board Of Regents On Behalf Of Arizona State University Runtime task scheduling using imitation learning for heterogeneous many-core systems

Also Published As

Publication number Publication date
CN115168016A (zh) 2022-10-11

Similar Documents

Publication Publication Date Title
CN108805048B (zh) 一种人脸识别模型的调整方法、装置和存储介质
US11875558B2 (en) Methods and apparatus to generate temporal representations for action recognition systems
CN112631415B (zh) Cpu频率调整方法、装置、电子设备及存储介质
CN110245579B (zh) 人流密度预测方法及装置、计算机设备及可读介质
CN111031346A (zh) 一种增强视频画质的方法和装置
CN113688933A (zh) 分类网络的训练方法及分类方法和装置、电子设备
CN110096617B (zh) 视频分类方法、装置、电子设备及计算机可读存储介质
CN110956202A (zh) 基于分布式学习的图像训练方法、系统、介质及智能设备
CN110879981A (zh) 人脸关键点质量评估方法、装置、计算机设备及存储介质
CN111638958A (zh) 云主机负载处理方法、装置、控制设备及存储介质
US20240153044A1 (en) Circuit for executing stateful neural network
CN111860568B (zh) 数据样本的均衡分布方法、装置及存储介质
CN112163468A (zh) 基于多线程的图像处理方法及装置
CN110532837B (zh) 一种物品取放过程中的图像数据处理方法和家电设备
CN113066092A (zh) 视频对象分割方法、装置及计算机设备
CN111080746A (zh) 图像处理方法、装置、电子设备和存储介质
CN117406844B (zh) 一种基于神经网络的显卡风扇控制方法及相关装置
CN113902944A (zh) 模型的训练及场景识别方法、装置、设备及介质
CN107728772B (zh) 应用程序的处理方法、装置、存储介质及电子设备
CN115168016B (zh) 任务调度方法及相关装置、芯片、器件和介质
CN112906883A (zh) 用于深度神经网络的混合精度量化策略确定方法和系统
CN116363542A (zh) 到离岗事件检测方法、装置、设备及计算机可读存储介质
Lee et al. REINDEAR: REINforcement learning agent for Dynamic system control in Edge-Assisted Augmented Reality service
CN112732519A (zh) 一种事件监控方法及装置
CN111309706A (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