CN111767134A - 一种多任务动态资源调度方法 - Google Patents
一种多任务动态资源调度方法 Download PDFInfo
- Publication number
- CN111767134A CN111767134A CN202010419223.7A CN202010419223A CN111767134A CN 111767134 A CN111767134 A CN 111767134A CN 202010419223 A CN202010419223 A CN 202010419223A CN 111767134 A CN111767134 A CN 111767134A
- Authority
- CN
- China
- Prior art keywords
- task
- priority
- candidate
- resources
- running
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000004891 communication Methods 0.000 claims description 10
- 238000002955 isolation Methods 0.000 abstract description 4
- 230000007246 mechanism Effects 0.000 abstract description 4
- 238000004364 calculation method Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000001105 regulatory effect Effects 0.000 description 3
- 238000013468 resource allocation Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种多任务动态资源调度方法,当接收到新任务时在所有运行任务中选取新任务对应的候选任务,并且各运行任务对应的优先级基于各运行任务的已运行时长确定的;根据新任务对应的***分配资源,确定各候选任务对应的调整资源;根据各候选任务的调整资源对各候选任务对应的分配资源进行调整,将调整得到的***资源分配给新任务。本实施例利用容器化资源隔离方式,实现了基于任务已执行时长的动态资源调度机制,这样无须***任务运行所需要的时间,根据任务已执行时间,给不同任务设置动态优先级,优先级高的任务分配较多资源,反之减少分配的资源,使得在减少短任务完成时间的前提下,保证长任务的完成,提高整体的资源使用率。
Description
技术领域
本发明涉及数据处理技术领域,特别涉及一种多任务动态资源调度方法。
背景技术
大数据处理平台中的一个计算需求普遍会被分解为多个计算任务,多个计算任务的结果共同组成最终的处理结果。对不同计算任务在时间和资源两种维度上的调度方式,决定了计算需求的完成时间和整个大数据处理平台的资源使用效率。目标为了满足计算需求在时间调度的需求,目前普遍采用对任务时长进行预测的方法,这样基于预测任务长短的调度算法虽然能保证短任务的完成时间,但是其依赖对任务的***,预测准备度不能保证,从而会导致时间调度算法的失效;另外,基于预测的算法本身实现复杂,带来较大的开销。
因而现有技术还有待改进和提高。
发明内容
本发明要解决的技术问题在于,针对现有技术的不足,提供一种多任务动态资源调度方法。
为了解决上述技术问题,本发明所采用的技术方案如下:
一种多任务动态资源调度方法,所述方法包括:
当接收到新任务时,在所有运行任务中选取新任务对应的候选任务,其中,所述候选任务对应的优先级处于预设优先级区间,各运行任务对应的优先级为基于各运行任务的已运行时长确定的;
根据所述新任务对应的***分配资源,确定各候选任务各自对应的调整资源;
根据各候选任务各自对应的调整资源分别对各候选任务对应的分配资源进行调整,并将调整得到的***资源分配给所述新任务。
在一个实现方式中,所述当接收到新任务时,根据该新任务对应的所有候选任务具体包括:
当接收到新任务时,获取***的空闲资源;
若空闲资源未满足所述***分配资源,则根据该新任务对应的所有候选任务;
若空闲资源满足所述***分配资源,则基于空闲资源为所述新任务分配资源。
在一个实现方式中,所述预设优先级区间的下限值对应的优先级低于预设最高优先级,并且上限值对应的优先级等于预设最低优先级。
在一个实现方式中,所述根据所述新任务对应的***分配资源,确定各候选任务各自对应的调整资源具体包括:
根据所述新任务对应的***分配资源,确定预设优先级区间中各候选优先级对应的候选资源;
对于每个候选优先级,根据该候选优先级对应的候选资源,确定该候选优先级对应的各候选任务对应的调整资源。
在一个实现方式中,对于每个候选优先级,该候选优先级对应的候选资源等于目标值与所述***分配资源的乘积,其中,所述目标值为该候选等级与预设优先级区间中各候选优先级的和的比值。
在一个实现方式中,所述新任务对应的优先级为最高优先级。
在一个实现方式中,所述方法还包括:
每间隔预设时间,获取每个对照优先级对应的所有运行任务,其中,所述对照优先级为所有优先级中除最低优先级外的其它优先级;
对于每个对照优先级,将该对照优先级对应的各运行任务对应的优先级降一级。
在一个实现方式中,所述方法还包括:
对于最低优先级,保持最低优先级对应的各运行任务对应的优先级不变。
一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上任一所述的多任务动态资源调度方法中的步骤。
一种服务端,其包括:处理器、存储器及通信总线;所述存储器上存储有可被所述处理器执行的计算机可读程序;
所述通信总线实现处理器和存储器之间的连接通信;
所述处理器执行所述计算机可读程序时实现如上任一所述的多任务动态资源调度方法中的步骤。
有益效果:与现有技术相比,本发明提供了一种多任务动态资源调度方法,当接收到新任务时在所有运行任务中选取新任务对应的候选任务,并且各运行任务对应的优先级基于各运行任务的已运行时长确定的;根据所述新任务对应的***分配资源,确定各候选任务各自对应的调整资源;根据各候选任务对应的调整资源分别对各候选任务对应的分配资源进行调整,并将调整得到的***资源分配给所述新任务利用容器化资源隔离方式,实现了基于任务已执行时长的动态资源调度机制,这样无须***任务运行所需要的时间,根据任务已执行时间,给不同任务设置动态优先级,优先级高的任务分配较多资源,反之减少分配的资源,使得在减少短任务完成时间的前提下,保证长任务的完成,提高整体的资源使用率。
附图说明
图1为本发明提供的多任务动态资源调度方法的流程图。
图2为本发明提供的多任务动态资源调度方法中流程示意图。
图3为本发明提供的多任务动态资源调度方法中优先级与已运行时长的对应关系示意图。
图4为本发明提供的服务端的结构原理图。
具体实施方式
本发明提供一种多任务动态资源调度方法,为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
发明人经过研究发现,大数据处理平台中的计算需求普遍会被分解为多个计算任务,多个计算任务的结果共同组成最终的处理结果。由此,对不同计算任务在时间和资源两种维度上的调度方式,决定了计算需求的完成时间和整个大数据处理平台的资源使用效率。其中,在时间调度方面,大部分任务调度算法会***某个任务的完成时间,完成时间较长的为长任务,完成时间较短的为短任务,尽可能同时减少短任务和长任务的完成时间。所以,这带来了对大数据处理中多任务的调度需求:单位时间调度的任务数量大,并且短任务相比长任务更快地获得调度,调度算法开销尽量地小。
为了满足对大数据处理中多任务的调度需求,为了先执行短任务,保证短任务的完成时间,目前普遍方法有采用对任务时长进行预测的方法,以及最少服务优先(LAS)算法。其中,对任务时长进行预测的方法主要是基于预测任务长短的调度算法虽然能保证短任务的完成时间,但是其依赖对任务的***,预测准备度不能保证,一旦预测不准确,往往会导致时间调度算法的失效;另外,基于预测的算法本身实现复杂,带来较大的开销。
最少服务优先(LAS)算法为新来任务获取的资源最少,其优先级最高,优先调度新来的任务。LAS无须预测任务的完成时间,默认最新来的任务优先级最高,优先调度;当资源不够时,停止运行完成时间最长的任务,将资源让给新任务。LAS算法能较好地保证短任务完成时间,且无须事先预测任务完成时间。LAS算法的问题是:其没有对分配的资源进行调度,每个任务在执行过程中都分配固定的资源,无法保证长任务的资源使用。
此外,在资源调度方面,需要给不同任务分配特定的计算和存储资源,保证任务的执行。容器是一种轻量级的资源隔离机制,在容器内运行的程序只能使用分配好的优先资源。容器化运行任务的方式即在将任务放在容器内执行,整个任务的执行周期都在容器内,使用分配好的计算和存储资源。容器化运行方式,让给不同任务分配特定资源成为可能,而且还可根据运行情况,动态调整分配的资源。但是目前基于容器的资源调度方法,也都是基于对任务完成时间的预测,提高了调度的复杂度和失效风险,而且没有根据任务运行的实时状态,弹性调整分配资源,资源利用率较低。
为了解决上述问题,在本发明实施例中,当接收到新任务时,在所有运行任务中选取新任务对应的候选任务,其中,所述候选任务对应的优先级处于预设优先级区间,各运行任务对应的优先级基于各运行任务的已运行时长确定的;根据所述新任务对应的***分配资源,确定各候选任务各自对应的调整资源;根据各候选任务各自对应的调整资源分别对各候选任务对应的分配资源进行调整,并将调整得到的***资源分配给所述新任务。可见,本发明实施例中,利用容器化资源隔离方式,实现了基于任务已执行时长的动态资源调度机制,这样无须***任务运行所需要的时间,根据任务已执行时间,给不同任务设置动态优先级,优先级高的任务分配较多资源,反之减少分配的资源,使得在减少短任务完成时间的前提下,保证长任务的完成,提高整体的资源使用率。
本实施例提供的多任务动态资源调度方法可以由多任务动态资源调度来执行,所述装置可以由软件实现,应用于诸如服务端、PC机或个人数字助理等之类的安装有操作***的智能终端上。参见图1和图2所示,本实施例提供的多任务动态资源调度方法具体包括:
S10、当接收到新任务时,在所有运行任务中选取新任务对应的候选任务。
具体地,所述新任务为未分配***资源的任务,所述运行任务为已分配***资源并运行在***中的任务,所述候选任务为运行任务的中部分任务,并且所述候选任务对应的优先级包含于预设优先级区间。例如,所述预设优先级区间为3-8,运行任务A对应的优先级为2,运行任务B对应的优先级为4,那么运行任务B为新任务对应的候选任务,运行任务A不为新任务对应的候选任务。
进一步,如图3所示,每个运行任务均预先配置有优先级,各运行任务对应的优先级为根据其对应的已运行时长确定,并且每个运行任务对应的优先级会根据该运行任务的运行时长的变化而变化。由此,对于每个新任务,该新任务还未在***中运行,新任务的已运行时间为0,从而将新任务对应的优先级设置为最高优先级。此外,所述优选级与已运行时长的对应关系为:优先级随着运行时长的增加而降低。也就是说,运行任务对应的运行时长越长,运行任务对应的优先级越低。例如,运行任务A和运行任务B,运行任务A的运行时长为1小时,运行任务B的运行时长为3小时,那么运行任务B对应的优先级低于运行任务A对应的优先级。
进一步,所述优先级表示运行任务的优选运行程度,并且运行任务的优先级越高,说明该运行任务的优先运行程度越高;反之,运行任务的优先级越低,说明该运行任务的优选运行程度越低。在本实施例的一个实现方式中,所述优先级可以通过优先等级的方式来边,并且优先级与优先等级成反向关系,即运行任务的优先级越大,该运行任务对应的优先等级越低;反之,运行任务的优先级越小,该运行任务对应的优先等级越高。在一个具体实现方式中,所述优先等级可以分为8级,分别记为1级、2级、3级、4级、5级、6级、7级以及8级,其中,8个优先等级对应的优先级,随着优先等级的增加而降低,以使得1级对应的优先级最高,8级对应的优先级最低。此外,所述预设优先级区间根据预设优先等级设置,其中,所述预设优先级区间的上限值和下限值均为预设优先等级中的一个优先等级,并且所述预设优先级区间的下限值对应的优先级低于预设最高优先级,并且上限值对应的优先级等于预设最低优先级。例如,所述预设优先级区间的下限值对应的优先级低于第三优先级对应的优先等级,并且上限值为预设最低优先级对应的优先等级,即预设优先级区间为[3,8]。
进一步,在本实施的一个实现方式中,所述优先级根据已运行时长动态调节,该动态调节过程可以为:
A10、每间隔预设时间,获取每个对照优先级对应的所有运行任务,其中,所述对照优先级为所有优先级中除最低优先级外的其它优先级;
A20、对于每个对照优先级,将该对照优先级对应的各运行任务对应的优先级降一级;
A30、对于最低优先级,保持最低优先级对应的各运行任务对应的优先级不变。
具体地,所述预设时间用于确定优先级动态调节的启动时间。所述预设时间可以根据实际使用情况预先设定(例如,1小时等),也可以是根据预设时间段内新任务到达的间隔时间(例如,间隔时间的平均值等),所述预设时间段为预先设置(例如,1个月等)。在本实施例的一个实现方式中,所述预设时间为根据预设时间段内新任务到达的间隔时间,若新任务到达间隔较小,则优先级调整间隔也较小,反之,新任务到达间隔较大,则优先级调整间隔也较小大。这样将预设时间段内的新任务达到的时间间隔与优先级的动态调节时间相关联,若新任务进来频率更快,则预设时间越小,任务的优先级也会更快地变小,这样可以调整更多资源给新进任务。此外,根据预设时间段新任务到达的时间间隔来确定预设时间,可以避免预设时间过大,而造成资源调整频率不够,优先级设置的作用较小,以及预设时间过小,而造成任务优先级变化较快,任务很快达到最低优先级,不利于任务在优先级上的科学分布。
进一步,在确定所述预设时间后,将所述预设时间存储于***中,当需要动态调整运行任务的优先级时,***可以直接读取到该预设时间,并将所述预设时间设定为动态调整优先级的激活时间,在当前时间与前一动态调节时间的时间间隔达到预设时间时,对运行任务对应的优先级进行调整。在本实施例的一个实现方式中,所述预设时间可以为1小时等。当然,在实际应用中,可以设置定时器,将所述定时器配置该预设时间,当定时器的起始工作时间为***启动时间,之后当定时器超时时,获取每个对照优先级对应的所有运行任务,并且当优先级动态调整完毕后,将所述定时器清零,从而记录调节间隔时间。
所有优先级划分为对照优先级和最低优先级,其中,对照优先级为所有优先级中除最低优先级外的其余优先级。例如,上述实现方式中,设置8级优先等级,那么最低优先级为第八优先等级;对照优先级为第一至第七优先等级。对于每个对照优先级,将该对照优先级对应的所有运行任务的优先级降一级,即将对照优先级对应的所有运行任务的优先等级加1。例如,对于第三优先等级对应的每个运行任务,将该运行任务对应的优先等级调整为第四邮箱等级。此外,值得说明的是,在一次动态调整过程中,各对照优先级对应的运行任务的优先级同步调整,并且每个运行任务的优先级仅调整一次。例如,在一次动态调整过程中,对于从第三优先等级调整至第四优先等级的运行任务A,在调整第四优先等级对应的运行任务时,运行任务A对应的优先等级保存不变。
进一步,在本实施例的一个实现方式中,在调整各对照优先级对应的运行任务时,可以将各对照优先级对应的所有运行任务的优选级均降一级,这样可以提高动态优先级调整的速度以及所需***资源。当然,也可以对除最高优先级外的其余对照优先级对应的所有运行任务的优选级均降一级,而对于最高优先级对应的运行任务,检测各运行任务的已运行时长是否达到预设时长;对于达到预设时长的运行任务,将该运行任务对应的优先级降一级;对于未达到预设时长的运行任务,保持该运行任务对应的优先级不变,这样可以避免已运行时长小于预设时长的任务的优先级被降低至下一优先级,而影响新任务的运行速度。
进一步,所述接收到新任务为触发资源调节的触发指令,即只有在接收到新任务时,才会确实是否需要调整各运行任务对应的分配只有;而在调整各运行任务对应的优先级时,各运行任务对应的分配资源不变,这样将优先级动态调节与分配资源分开调节,可以更好的确定各运行任务对应的分配资源,避免***资源浪费。
此外,在接收到新任务时,需要确定***的空闲资源是否可以满足新任务的需求。由此,在本实施的一个实现方式中,所述当接收到新任务时,根据该新任务对应的所有候选任务具体包括:
S21、当接收到新任务时,获取***的空闲资源;
S22、若空闲资源未满足所述***分配资源,则根据该新任务对应的所有候选任务;
S23、若空闲资源满足所述***分配资源,则基于空闲资源为所述新任务分配资源。
具体地,所述空闲资源指的是***中未被使用的资源,所述***分配资源为***预设分配给新任务的资源信息,例如,***预设分配资源为4核CPU和2MB内存等。那么在接收到新任务之后,检测空闲资源中的CPU和内存是否满足均满足***分配资源,若均满足***分配资源,则直接将空闲资源中部分资源分配新任务,以使得新任务分配到其对应的***分配资源量;若存在未满足***分配资源的资源,则根据该新任务对应的所有候选任务。
S20、根据所述新任务对应的***分配资源,确定各候选任务各自对应的调整资源。
具体地,所述调整资源为各候选任务需要减少的***资源,可以理解的是,该候选任务对应的分配资源需要减少所述调整资源对应的资源数量,以使得各候选任务释放的资源数量可以满足新任务的需求。此外,获取到的各候选任务各自对应的调整资源可以根据各候选任务对应的优先级来确定,例如,优先级越低的候选任务,对应的调整资源越多。相应的,在本实施例的一个实现方式中,所述根据所述新任务对应的***分配资源,确定各候选任务各自对应的调整资源具体包括:
S21、根据所述新任务对应的***分配资源,确定预设优先级区间中各候选优先级对应的候选资源;
S22、对于每个候选优先级,根据该候选优先级对应的候选资源,确定该候选优先级对应的各候选任务对应的调整资源。
具体地,所述候选资源为各候选优先级需要调配的资源数量,其中,各候选优先级对应的候选资源可以相同,也可以不同。在本实施例的一个实现方式中,各候选优先级对应的候选资源不同,并且各候选资源为根据新任务对应的***分配资源和候选优先级确定,其中,所述每个候选优先级,该候选优先级对应的候选资源等于目标值与所述***分配资源的乘积,所述目标值为该候选等级与预设优先级区间中各候选优先级的和的比值。由此,候选资源的计算公式可以为:
其中,S为候选资源数量,M为新任务对应的***分配资源数量,a为预设优先级区间的下限值,a为正整数(例如,3等),n为预设优先级区间的上限值(例如,8等),i为a到n的正整数,X表示预设优先级区间中的一个候选优先级对应的优先等级。
当然,指的说明的是,候选资源的计算公式为对于***分配资源中的每种分配资源进行单独运算,例如,***分配资源包括CPU和内存,那么分别计算CPU对应候选资源,和内存对应的候选资源。
进一步,在获取到各候选优先级对应的候选资源后,再确定候选优先级对应的各候选任务对应的调整资源,其中,同一候选优先级对应的各候选任务对应的调整资源数相同。由此,对于每个候选优先级,该候选优先级对应的各候选任务对应的调整资源的计算公式可以为:
其中,S为候选资源数量,M为新任务对应的***分配资源数量,a为预设优先级区间的下限值,a为正整数(例如,3等),n为预设优先级区间的上限值(例如,8等),i为a到n的正整数,X表示候选优先级对应的优先等级,Y为该候选优先级对应的候选任务的任务数量。
基于上调整资源的获取方式,可以使得使调整得到的总资源,刚好满足新任务所需分配的***分配资源M,而且优先级越靠后的任务,需要让出更多资源,满足优先级靠后的任务将享受到越少资源的调整原则。
S30、根据各候选任务各自对应的调整资源分别对各候选任务对应的分配资源进行调整,并将调整得到的***资源分配给所述新任务。
具体地,在获取到各候选任务对应的调整资源后,调整预设容器中资源的使用参数,对各候选任务对应的分配资源进行调整,以形成空闲资源,并将调整得到的空闲资源分配给新任务,并通过分配给新任务的***资源执行新任务。
为了进一步说明本实施例中的多任务分配方法,下面给出一个具体例子加以说明。
举例说明:首先,新任务a到达后,先将新任务的优先级对应的优先等级设置为1,对新任务进行调度确定需要为其分配的计算资源为2核CPU。其次,判断目前是否有2核CPU的空闲资源,若有则马上调度,若没有调整已有任务的计算资源。其中,所述计算资源的调整过程为,假设优先等级为8的任务个数为4,根据调整资源计算公司可知,对于优先等级为8的任务,X为8,n为8,M为2,Y为4,那么对于每个优先等级为8的任务应该减少4/33;假设优先等级为7的任务个数为4,则对于优先等级为7的任务,X为7,n为8,M为2,Y为4,每个优先等级为7的任务应该减少3.5/33;假设优先等级为6的任务个数为4,则对于优先等级为6的任务,X为6,n为8,M为2,Y为4,每个优先等级为6的任务应该减少3/33。依次可算出任务优先等级为5,4,3的任务应该减少的资源数目,所有减少的资源应该为2核CPU。每个任务释放相应的资源后,则调度任务a。
基于上述多任务动态资源调度方法,本实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上述实施例所述的多任务动态资源调度方法中的步骤。
基于上述多任务动态资源调度方法,本发明还提供了一种服务端,如图4所示,其包括至少一个处理器(processor)20;显示屏21;以及存储器(memory)22,还可以包括通信接口(Communications Interface)23和总线24。其中,处理器20、显示屏21、存储器22和通信接口23可以通过总线24完成相互间的通信。显示屏21设置为显示初始设置模式中预设的用户引导界面。通信接口23可以传输信息。处理器20可以调用存储器22中的逻辑指令,以执行上述实施例中的方法。
此外,上述的存储器22中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器22作为一种计算机可读存储介质,可设置为存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令或模块。处理器20通过运行存储在存储器22中的软件程序、指令或模块,从而执行功能应用以及数据处理,即实现上述实施例中的方法。
存储器22可包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序;存储数据区可存储根据服务端的使用所创建的数据等。此外,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器。例如,U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
此外,上述存储介质以及服务端中的多条指令处理器加载并执行的具体过程在上述方法中已经详细说明,在这里就不再一一陈述。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种多任务动态资源调度方法,其特征在于,所述方法包括:
当接收到新任务时,在所有运行任务中选取新任务对应的候选任务,其中,所述候选任务对应的优先级处于预设优先级区间,各运行任务对应的优先级为基于各运行任务的已运行时长确定的;
根据所述新任务对应的***分配资源,确定各候选任务各自对应的调整资源;
根据各候选任务各自对应的调整资源分别对各候选任务对应的分配资源进行调整,并将调整得到的***资源分配给所述新任务。
2.根据权利要求1所述多任务动态资源调度方法,其特征在于,所述当接收到新任务时,根据该新任务对应的所有候选任务具体包括:
当接收到新任务时,获取***的空闲资源;
若空闲资源未满足所述***分配资源,则根据该新任务对应的所有候选任务;
若空闲资源满足所述***分配资源,则基于空闲资源为所述新任务分配资源。
3.根据权利要求1所述多任务动态资源调度方法,其特征在于,所述预设优先级区间的下限值对应的优先级低于预设最高优先级,并且上限值对应的优先级等于预设最低优先级。
4.根据权利要求1所述多任务动态资源调度方法,其特征在于,所述根据所述新任务对应的***分配资源,确定各候选任务各自对应的调整资源具体包括:
根据所述新任务对应的***分配资源,确定预设优先级区间中各候选优先级对应的候选资源;
对于每个候选优先级,根据该候选优先级对应的候选资源,确定该候选优先级对应的各候选任务对应的调整资源。
5.根据权利要求4所述多任务动态资源调度方法,其特征在于,对于每个候选优先级,该候选优先级对应的候选资源等于目标值与所述***分配资源的乘积,其中,所述目标值为该候选等级与预设优先级区间中各候选优先级的和的比值。
6.根据权利要求1-5任一所述多任务动态资源调度方法,其特征在于所述新任务对应的优先级为最高优先级。
7.根据权利要求6所述多任务动态资源调度方法,其特征在于,所述方法还包括:
每间隔预设时间,获取每个对照优先级对应的所有运行任务,其中,所述对照优先级为所有优先级中除最低优先级外的其它优先级;
对于每个对照优先级,将该对照优先级对应的各运行任务对应的优先级降一级。
8.根据权利要求7所述多任务动态资源调度方法,其特征在于,所述方法还包括:
对于最低优先级,保持最低优先级对应的各运行任务对应的优先级不变。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1~8任意一项所述的多任务动态资源调度方法中的步骤。
10.一种服务端,其特征在于,包括:处理器、存储器及通信总线;所述存储器上存储有可被所述处理器执行的计算机可读程序;
所述通信总线实现处理器和存储器之间的连接通信;
所述处理器执行所述计算机可读程序时实现如权利要求1-8任意一项所述的多任务动态资源调度方法中的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010419223.7A CN111767134B (zh) | 2020-05-18 | 一种多任务动态资源调度方法 | |
PCT/CN2021/094170 WO2021233261A1 (zh) | 2020-05-18 | 2021-05-17 | 一种多任务动态资源调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010419223.7A CN111767134B (zh) | 2020-05-18 | 一种多任务动态资源调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111767134A true CN111767134A (zh) | 2020-10-13 |
CN111767134B CN111767134B (zh) | 2024-07-23 |
Family
ID=
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112328385A (zh) * | 2021-01-04 | 2021-02-05 | 鹏城实验室 | 基于插件化的多场景Kubernetes任务提交方法 |
CN112348369A (zh) * | 2020-11-11 | 2021-02-09 | 博康智能信息技术有限公司 | 重大活动安保多目标多资源动态调度方法 |
CN112817722A (zh) * | 2021-02-01 | 2021-05-18 | 鹏城实验室 | 一种基于优先级的分时调度方法、终端及存储介质 |
US11099754B1 (en) * | 2020-05-14 | 2021-08-24 | EMC IP Holding Company LLC | Storage array with dynamic cache memory configuration provisioning based on prediction of input-output operations |
WO2021233261A1 (zh) * | 2020-05-18 | 2021-11-25 | 鹏城实验室 | 一种多任务动态资源调度方法 |
CN115994023A (zh) * | 2023-03-23 | 2023-04-21 | 鹏城实验室 | 一种视觉智能***资源信息调度方法、装置、终端及介质 |
CN117608863A (zh) * | 2024-01-23 | 2024-02-27 | 聊城市洛溪信息科技有限公司 | 基于智能资源分配的云计算任务跟踪处理方法及*** |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079743A (zh) * | 2007-07-04 | 2007-11-28 | 华为技术有限公司 | 一种资源接纳控制方法、***及业务应用*** |
CN106033371A (zh) * | 2015-03-13 | 2016-10-19 | 杭州海康威视数字技术股份有限公司 | 一种视频分析任务的调度方法及*** |
CN108279980A (zh) * | 2018-01-22 | 2018-07-13 | 上海联影医疗科技有限公司 | 资源分配方法及***和资源分配终端 |
CN108574646A (zh) * | 2017-03-07 | 2018-09-25 | 中兴通讯股份有限公司 | 一种隧道带宽资源回收方法及装置 |
CN109408215A (zh) * | 2018-11-07 | 2019-03-01 | 郑州云海信息技术有限公司 | 一种计算节点的任务调度方法和装置 |
CN109936604A (zh) * | 2017-12-18 | 2019-06-25 | 北京图森未来科技有限公司 | 一种资源调度方法、装置和*** |
US20190303199A1 (en) * | 2018-03-30 | 2019-10-03 | Nec Corporation | Information processing apparatus, control method, and program |
CN110795234A (zh) * | 2019-09-25 | 2020-02-14 | 苏州浪潮智能科技有限公司 | 一种资源调度方法及装置 |
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079743A (zh) * | 2007-07-04 | 2007-11-28 | 华为技术有限公司 | 一种资源接纳控制方法、***及业务应用*** |
CN106033371A (zh) * | 2015-03-13 | 2016-10-19 | 杭州海康威视数字技术股份有限公司 | 一种视频分析任务的调度方法及*** |
CN108574646A (zh) * | 2017-03-07 | 2018-09-25 | 中兴通讯股份有限公司 | 一种隧道带宽资源回收方法及装置 |
CN109936604A (zh) * | 2017-12-18 | 2019-06-25 | 北京图森未来科技有限公司 | 一种资源调度方法、装置和*** |
CN108279980A (zh) * | 2018-01-22 | 2018-07-13 | 上海联影医疗科技有限公司 | 资源分配方法及***和资源分配终端 |
US20190303199A1 (en) * | 2018-03-30 | 2019-10-03 | Nec Corporation | Information processing apparatus, control method, and program |
CN109408215A (zh) * | 2018-11-07 | 2019-03-01 | 郑州云海信息技术有限公司 | 一种计算节点的任务调度方法和装置 |
CN110795234A (zh) * | 2019-09-25 | 2020-02-14 | 苏州浪潮智能科技有限公司 | 一种资源调度方法及装置 |
Non-Patent Citations (3)
Title |
---|
OLIVIER BEAUMOUNT ET AL.: "Comparison of Static and Dynamic Resource Allocation Strategies for Matrix Multiplication", 《2015 27TH INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING》, 21 October 2015 (2015-10-21), pages 170 - 177, XP032850127, DOI: 10.1109/SBAC-PAD.2015.10 * |
张鸿 等: "操作***课程中抽象知识的可视化教学研究", 《计算机教育》, no. 14, 25 July 2014 (2014-07-25), pages 50 - 53 * |
金宏 等: "一种任务优先级的综合设计方法", 《软件学报》, vol. 14, no. 3, 23 August 2002 (2002-08-23), pages 376 - 382 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11099754B1 (en) * | 2020-05-14 | 2021-08-24 | EMC IP Holding Company LLC | Storage array with dynamic cache memory configuration provisioning based on prediction of input-output operations |
WO2021233261A1 (zh) * | 2020-05-18 | 2021-11-25 | 鹏城实验室 | 一种多任务动态资源调度方法 |
CN112348369A (zh) * | 2020-11-11 | 2021-02-09 | 博康智能信息技术有限公司 | 重大活动安保多目标多资源动态调度方法 |
CN112348369B (zh) * | 2020-11-11 | 2024-03-22 | 博康智能信息技术有限公司 | 重大活动安保多目标多资源动态调度方法 |
CN112328385A (zh) * | 2021-01-04 | 2021-02-05 | 鹏城实验室 | 基于插件化的多场景Kubernetes任务提交方法 |
CN112328385B (zh) * | 2021-01-04 | 2021-04-06 | 鹏城实验室 | 基于插件化的多场景Kubernetes任务提交方法 |
CN112817722A (zh) * | 2021-02-01 | 2021-05-18 | 鹏城实验室 | 一种基于优先级的分时调度方法、终端及存储介质 |
CN115994023A (zh) * | 2023-03-23 | 2023-04-21 | 鹏城实验室 | 一种视觉智能***资源信息调度方法、装置、终端及介质 |
CN117608863A (zh) * | 2024-01-23 | 2024-02-27 | 聊城市洛溪信息科技有限公司 | 基于智能资源分配的云计算任务跟踪处理方法及*** |
CN117608863B (zh) * | 2024-01-23 | 2024-04-23 | 聊城市洛溪信息科技有限公司 | 基于智能资源分配的云计算任务跟踪处理方法及*** |
Also Published As
Publication number | Publication date |
---|---|
WO2021233261A1 (zh) | 2021-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11720403B2 (en) | System for commitment-aware workload scheduling based on anticipated resource consumption levels | |
US10754706B1 (en) | Task scheduling for multiprocessor systems | |
CN106557369B (zh) | 一种多线程的管理方法及*** | |
US11582166B2 (en) | Systems and methods for provision of a guaranteed batch | |
US9588809B2 (en) | Resource-based scheduler | |
WO2021233261A1 (zh) | 一种多任务动态资源调度方法 | |
US8056083B2 (en) | Dividing a computer job into micro-jobs for execution | |
CN109564528B (zh) | 分布式计算中计算资源分配的***和方法 | |
CN112905326B (zh) | 任务处理方法及装置 | |
CN105955809B (zh) | 线程调度方法和*** | |
US10467054B2 (en) | Resource management method and system, and computer storage medium | |
CN114327843A (zh) | 任务调度方法及装置 | |
AU2007261607B2 (en) | Resource-based scheduler | |
CN111597044A (zh) | 任务调度方法、装置、存储介质及电子设备 | |
CN112925616A (zh) | 任务分配方法、装置、存储介质及电子设备 | |
CN110795323A (zh) | 负载统计方法、装置、存储介质及电子设备 | |
CN109189581B (zh) | 一种作业调度方法和装置 | |
CN111767134B (zh) | 一种多任务动态资源调度方法 | |
EP2413240A1 (en) | Computer micro-jobs | |
CN114661415A (zh) | 调度方法及计算机*** | |
CN109445847B (zh) | 工业服务器微内核架构实现方法 | |
CN108268310B (zh) | 一种确定最小调度粒度的方法及装置 | |
CN110968418A (zh) | 基于信号-槽的大规模有约束并发任务的调度方法与装置 | |
AU2021106510A4 (en) | A method of cpu scheduling performance analysis using markov chain modeling. | |
CN118152092A (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 |