CN105069250A - 一种基于调度粒度的任务优先级计算方法 - Google Patents
一种基于调度粒度的任务优先级计算方法 Download PDFInfo
- Publication number
- CN105069250A CN105069250A CN201510523103.0A CN201510523103A CN105069250A CN 105069250 A CN105069250 A CN 105069250A CN 201510523103 A CN201510523103 A CN 201510523103A CN 105069250 A CN105069250 A CN 105069250A
- Authority
- CN
- China
- Prior art keywords
- task
- scheduling
- priority
- processor cores
- represent
- 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
Landscapes
- Multi Processors (AREA)
Abstract
本发明涉及一种基于调度粒度的任务优先级计算方法,能够降低调度频率,减少调度消耗时间。本发明包括:(1)确定任务优先级;(2)设定调度粒度;(3)任务优先级计算细化。本发明在任务调度优先级计算时分析了调度粒度对任务调度的影响,并结合任务等待时间和任务间通信开销等因素,确定任务优先级,从而能够有效的降低调度频率,减少任务调度过程中的消耗。
Description
技术领域
本发明涉及一种基于调度粒度的任务优先级计算方法,能够降低调度频率,减少调度消耗时间。
背景技术
近些年来,多核处理器快速发展的同时,也给任务调度带来了新的挑战,如何利用高效的任务调度策略使多核处理器系统充分发挥其性能,已经是我们必须要解决的问题。动态任务调度可以根据运行时情况动态地将任务分配到各个内核上,由于需要实时地收集、存储并分析状态信息,动态调度的实施有一定的系统开销,但这种开销和付出通常是有回报的。
比较经典的调度算法有Min-Min、Max-Min、MCT(MinirnumCompletionTime)、MET(MinimumExecutionTime)等算法。Min-Min算法实现简单,执行时间较快。算法的思想是比较所有待调度的任务,优先选取最早完成时间最小的一个任务进行调度。缺点是如果任务集中存在过多执行时间比较小的任务,那么时间比较大的任务将无法得到及时执行。Max-Min算法类似于Min-Min算法,不同的是Max-Min算法首先调度最早完成时间最大的任务。缺点是完成时间较小的任务等待时间过长,影响执行效率,也可能造成负载不均衡。
将任务分配到最合适的处理器内核上是任务调度的核心问题,而任务优先级计算是任务分配的关键,任务优先级表明任务被优先调度的程度,因此本发明方法在计算任务优先级时引入调度粒度,用来决定调度过程分配的任务数量,进而决定调度频度。
发明内容
本发明的目的在于提供一种能够降低调度频率,减少调度消耗时间的基于调度粒度的任务优先级计算方法。
本发明的内容是这样实现的:
(1)确定任务优先级
计算任务相对于一个确定内核的优先级Tipk,取所有内核上的最大值作为任务优先级Tip:
m为内核数量,Tipk表示任务Ti相对于内核Pk的优先级;
(2)设定调度粒度
在计算任务Ti相对于一个处理器内核P的任务优先级时,设定调度粒度,其中处理器内核P的调度粒度定义为一次调度过程中为处理器内核P分配的任务数量,一次调度过程是指一个处理器内核请求调度;调度算法为其分配任务的过程中,调度的任务数量等于为每个处理器内核分配的任务数量之和,调度粒度为:
lk=l·spk0≤k≤m-1
其中lp表示处理器内核P的调度粒度,l表示粒度因子,spp表示处理器内核P的处理速度;
(3)任务优先级计算细化
计算一个任务在所有处理器内核上的任务优先级Tip及任务等待时间和任务间通信开销因素:
其中PWi代表任务Ti的等待时间,PCip代表平均通信开销,lp代表内核P的调度粒度,Cip表示任务Ti的通信开销;t表示当前时间,Tit表示任务就绪时间。
本发明的有益效果在于:在任务调度优先级计算时分析了调度粒度对任务调度的影响,并结合任务等待时间和任务间通信开销等因素,确定任务优先级,从而能够有效的降低调度频率,减少任务调度过程中的消耗。
附图说明
图1是本发明方法的任务优先级计算流程图。
具体实施方式
图1示出了本发明方法的计算过程,下面结合图1对本发明做进一步描述:
本发明提出一种基于调度粒度的任务优先级计算方法。本发明方法首先计算一个任务在所有处理器内核上的任务优先级,然后取其在所有处理器内核上任务优先级的最大值作为该任务的优先级,在任务调度时优先调度任务优先级大的任务。在计算任务相对于一个确定处理器内核的任务优先级时,综合考虑任务等待时间、任务间通信开销和调度粒度因素,其中任务等待时间因素可避免存在就绪任务长时间不被调度的现象;同时计算任务间的平均通信开销,可以将通信开销大的任务分配到相应的处理器内核上,以节省更多的任务间通信开销;同样调度粒度通过粒度因子和处理器内核的处理速度来调节大小,对于一个实际的处理器系统,处理器内核速度是确定的已知量,其中粒度大小要根据系统模型而定,它起到将处理器内核的计算速度转换为处理器内核的调度任务数量的作用,结合三种因素计算任务优先级可充分发挥任务调度优势,提高处理器效率,从而降低调度频率,减少调度消耗时间。
(1)确定任务优先级
将任务分配到最合适的处理器内核上是任务调度的核心问题,而任务优先级计算是任务分配的关键,任务优先级表明任务被优先调度的程度。本发明方法提供了一种高效的任务优先级计算方法,首先计算一个任务Ti在所有内核上的任务优先级Tip,然后取其在所有内核上任务优先级的最大值作为该任务的优先级Tip_max,表示为公式(1):
公式(1)中Ti为任务编号,m为内核数量,Tip表示任务Ti相对于内核P的优先级。
(2)设定调度粒度
在计算任务Ti相对于一个处理器内核P的任务优先级时,通过设定调度粒度,达到降低调度频率,减少调度消耗时间的目的。其中处理器内核P的调度粒度定义为一次调度过程中为处理器内核P分配的任务数量,这里的一次调度过程是指一个处理器内核请求调度,调度算法为其分配任务的过程,在实际运行中,可能出现调度算法一次性处理多个处理器内核调度请求,调度的任务数量等于为每个处理器内核分配的任务数量之和。调度粒度表示为公式(2):
lp=l·spp(0≤p≤m-1)(2)
其中lp表示处理器内核P的调度粒度,l表示粒度因子,spp表示处理器内核P的处理速度。调度粒度大小要根据系统模型而定,调度粒度过大,不能充分发挥动态调度优势,而调度粒度过小,会引发频繁调度,增大调度程序运行时间开销,降低处理器效率。对于异构多核处理器,调度粒度与处理器内核处理速度是正比关系。对于一个实际的处理器系统,处理器内核速度是确定的已知量,调度粒度lp的大小,可以通过粒度因子l调节,粒度因子与具体的运行状况有关,它起到将处理器内核的计算速度转换为处理器内核调度任务数量的功能。
(3)任务优先级计算细化
在计算一个任务在所有处理器内核上的任务优先级Tip时,综合考虑了任务等待时间和任务间通信开销因素,其计算公式(3)、(4)、(5)如下:
其中PWi代表任务Ti的等待时间,PCip代表平均通信开销,lp代表内核P的调度粒度,Cip表示任务Ti的通信开销。t表示当前时间,Tit表示任务就绪时间,即任务满足调度条件变为就绪状态的时间。PWi值越大说明任务的等待时间越长,任务优先级越高,同等条件下,调度程序优先调度等待时间长的任务,避免存在就绪任务长时间等待的“饥饿”现象。表示平均通信开销,通信开销越大,PCip越大,相应的优先级也越高。
(1)确定任务优先级
将任务分配到最合适的处理器内核上是任务调度的核心问题,而任务优先级计算是任务分配的关键,任务优先级表明任务被优先调度的程度。本发明方法提供了一种高效的任务优先级计算方法,首先计算一个任务Ti在所有内核上的任务优先级Tip,然后取其在所有内核上任务优先级的最大值作为该任务的优先级Tip_max,表示为公式(1):
公式(1)中Ti为任务编号,m为内核数量,Tip表示任务Ti相对于内核P的优先级。
(2)设定调度粒度
在计算任务Ti相对于一个处理器内核P的任务优先级时,通过设定调度粒度,达到降低调度频率,减少调度消耗时间的目的。其中处理器内核P的调度粒度定义为一次调度过程中为处理器内核P分配的任务数量,这里的一次调度过程是指一个处理器内核请求调度,调度算法为其分配任务的过程,在实际运行中,可能出现调度算法一次性处理多个处理器内核调度请求,调度的任务数量等于为每个处理器内核分配的任务数量之和。调度粒度表示为公式(2):
lp=l·spp(0≤p≤m-1)(2)
其中lp表示处理器内核P的调度粒度,l表示粒度因子,spp表示处理器内核P的处理速度。调度粒度大小要根据系统模型而定,调度粒度过大,不能充分发挥动态调度优势,而调度粒度过小,会引发频繁调度,增大调度程序运行时间开销,降低处理器效率。对于异构多核处理器,调度粒度与处理器内核处理速度是正比关系。对于一个实际的处理器系统,处理器内核速度是确定的已知量,调度粒度lp的大小,可以通过粒度因子l调节,粒度因子与具体的运行状况有关,它起到将处理器内核的计算速度转换为处理器内核调度任务数量的功能。
(3)任务优先级计算细化
在计算一个任务在所有处理器内核上的任务优先级Tip时,综合考虑了任务等待时间和任务间通信开销因素,其计算公式(3)、(4)、(5)如下:
其中PWi代表任务Ti的等待时间,PCip代表平均通信开销,lp代表内核P的调度粒度,Cip表示任务Ti的通信开销。t表示当前时间,Tit表示任务就绪时间,即任务满足调度条件变为就绪状态的时间。PWi值越大说明任务的等待时间越长,任务优先级越高,同等条件下,调度程序优先调度等待时间长的任务,避免存在就绪任务长时间等待的“饥饿”现象。表示平均通信开销,通信开销越大,PCip越大,相应的优先级也越高。
以上是本发明的较佳实施例,凡依本发明技术方案作为改变的,所产生的功能作用未超出本发明方案范围的,均属于本发明的保护范围。
Claims (1)
1.一种基于调度粒度的任务优先级计算方法,其特征是
(1)确定任务优先级
计算任务相对于一个确定内核的优先级Tipk,取所有内核上的最大值作为任务优先级Tip:
m为内核数量,Tipk表示任务Ti相对于内核Pk的优先级;
(2)设定调度粒度
在计算任务Ti相对于一个处理器内核P的任务优先级时,设定调度粒度,其中处理器内核P的调度粒度定义为一次调度过程中为处理器内核P分配的任务数量,一次调度过程是指一个处理器内核请求调度;调度算法为其分配任务的过程中,调度的任务数量等于为每个处理器内核分配的任务数量之和,调度粒度为:
lk=l·spk0≤k≤m-1
其中lp表示处理器内核P的调度粒度,l表示粒度因子,spp表示处理器内核P的处理速度;
(3)任务优先级计算细化
计算一个任务在所有处理器内核上的任务优先级Tip及任务等待时间和任务间通信开销因素:
其中PWi代表任务Ti的等待时间,PCip代表平均通信开销,lp代表内核P的调度粒度,Cip表示任务Ti的通信开销;t表示当前时间,Tit表示任务就绪时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510523103.0A CN105069250A (zh) | 2015-08-24 | 2015-08-24 | 一种基于调度粒度的任务优先级计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510523103.0A CN105069250A (zh) | 2015-08-24 | 2015-08-24 | 一种基于调度粒度的任务优先级计算方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105069250A true CN105069250A (zh) | 2015-11-18 |
Family
ID=54498616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510523103.0A Pending CN105069250A (zh) | 2015-08-24 | 2015-08-24 | 一种基于调度粒度的任务优先级计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105069250A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105808335A (zh) * | 2016-03-04 | 2016-07-27 | 北京奇虎科技有限公司 | 动态调度方法及装置 |
CN109388482A (zh) * | 2017-08-11 | 2019-02-26 | 中兴通讯股份有限公司 | 任务的调度方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102063336A (zh) * | 2011-01-12 | 2011-05-18 | 国网电力科学研究院 | 一种分布式计算多应用功能异步并发调度方法 |
US20120180059A1 (en) * | 2005-09-29 | 2012-07-12 | Rockstar Bidco, LP | TIME-VALUE CURVES TO PROVIDE DYNAMIC QoS FOR TIME SENSITIVE FILE TRANSFERS |
CN103906257A (zh) * | 2014-04-18 | 2014-07-02 | 北京邮电大学 | 基于gpp的lte宽带通信系统计算资源调度器及其调度方法 |
-
2015
- 2015-08-24 CN CN201510523103.0A patent/CN105069250A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120180059A1 (en) * | 2005-09-29 | 2012-07-12 | Rockstar Bidco, LP | TIME-VALUE CURVES TO PROVIDE DYNAMIC QoS FOR TIME SENSITIVE FILE TRANSFERS |
CN102063336A (zh) * | 2011-01-12 | 2011-05-18 | 国网电力科学研究院 | 一种分布式计算多应用功能异步并发调度方法 |
CN103906257A (zh) * | 2014-04-18 | 2014-07-02 | 北京邮电大学 | 基于gpp的lte宽带通信系统计算资源调度器及其调度方法 |
Non-Patent Citations (1)
Title |
---|
刘正: "基于动态任务调度的 STDS 算法设计研究", 《智能系统学报》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105808335A (zh) * | 2016-03-04 | 2016-07-27 | 北京奇虎科技有限公司 | 动态调度方法及装置 |
CN109388482A (zh) * | 2017-08-11 | 2019-02-26 | 中兴通讯股份有限公司 | 任务的调度方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101488098B (zh) | 基于虚拟计算技术的多核计算资源管理系统 | |
US8874943B2 (en) | Energy efficient heterogeneous systems | |
CN102708011B (zh) | 一种云计算平台自适应任务调度方法 | |
CN100416463C (zh) | 面向嵌入式系统低功耗实时任务参数模型调度方法 | |
CN103401939A (zh) | 一种采用混合调度策略的负载均衡方法 | |
Zidenberg et al. | Multiamdahl: How should i divide my heterogenous chip? | |
CN102521055B (zh) | 一种虚拟机资源分配方法及其系统 | |
CN106445070B (zh) | 一种硬实时系统资源受限偶发任务能耗优化调度方法 | |
CN109324880A (zh) | 一种适用于实时系统周期任务模型的低功耗调度方法 | |
CN104331331A (zh) | 任务数目和性能感知的可重构多核处理器的资源分配方法 | |
WO2020248227A1 (zh) | 一种基于负载预测的Hadoop计算任务推测执行方法 | |
CN102902344A (zh) | 基于随机任务的云计算系统能耗优化方法 | |
CN106970835A (zh) | 固定优先级资源受限系统层次能耗优化方法 | |
CN110795238A (zh) | 负载计算方法、装置、存储介质及电子设备 | |
CN105630126B (zh) | 一种基于常带宽服务器混合任务低功耗调度方法 | |
CN109597378A (zh) | 一种资源受限混合任务能耗感知方法 | |
CN105069250A (zh) | 一种基于调度粒度的任务优先级计算方法 | |
CN103116526B (zh) | 高性能异构并行计算机的最大功耗控制方法 | |
CN109918181A (zh) | 基于最差响应时间的混合关键系统任务可调度性分析方法 | |
CN106802822A (zh) | 一种基于飞蛾算法的云数据中心认知资源调度方法 | |
CN104063282A (zh) | IaaS云可变规模资源池管理方法、装置和服务器 | |
CN117251044A (zh) | 一种基于arima技术的云服务器动态能耗管理方法和系统 | |
CN105117281A (zh) | 一种基于任务申请信号和处理器内核执行代价值的任务调度方法 | |
Wenjing et al. | Energy-considered scheduling algorithm based on heterogeneous multi-core processor | |
Bui et al. | Optimizing power consumption in cloud computing based on optimization and predictive analysis |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20151118 |