CN108845870B - 一种基于pWCET整形的概率性实时任务调度方法 - Google Patents
一种基于pWCET整形的概率性实时任务调度方法 Download PDFInfo
- Publication number
- CN108845870B CN108845870B CN201810586591.3A CN201810586591A CN108845870B CN 108845870 B CN108845870 B CN 108845870B CN 201810586591 A CN201810586591 A CN 201810586591A CN 108845870 B CN108845870 B CN 108845870B
- Authority
- CN
- China
- Prior art keywords
- task
- probabilistic
- time
- job
- priority
- 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
Links
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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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
- G06F9/5038—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 considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/484—Precedence
-
- 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)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种基于pWCET整形的概率性实时任务调度方法,属于实时***技术领域。本发明提出一种基于概率性最坏情况执行时间整形的概率性实时任务调度方案,以达到适当隔离概率性实时任务之间的影响并降低***可调度性分析计算复杂度的目标。本发明对概率性实时任务的pWCET进行整形并基于整形后的pWCET进行执行预算分配,在满足各个任务的概率性实时需求的同时,可以适当隔离概率性实时任务之间的影响,使整个任务集合的可调度性显著提高。此外,整形后的pWCET的值数比原有的pWCET明显降低,能够降低可调度性分析的计算复杂度,显著提高效率。
Description
技术领域
本发明属于实时***技术领域,尤其涉及一种基于概率性最坏情况执行时间(probabilistic Worst Case Execution Time,简称pWCET)整形的概率性实时任务调度方法。
背景技术
随着芯片技术的飞速发展,高性能微处理器越来越广泛地应用于安全关键领域(如航空电子、汽车、工业控制等),以满足安全关键领域中急剧增长的计算密集型负载的需求。虽然高性能微处理器可以降低任务的平均执行时间,但由于处理器架构的复杂性,导致某些任务的最坏情况执行时间(Worst Case Execution Time,简称WCET)较大,因此需要较高的超量配置(Over-provisioning)来满足***的实时性需求。为了缓解超量配置问题,提高资源的利用率,同时满足实时性需要,可以利用概率的方法来解决WCET的不确定性问题。此外,安全关键***倾向于在共享平台上集成多个拥有不同安全性要求的功能,而安全性需求通常基于故障概率进行认证。例如,在民用航空电子标准DO-178C中,根据每小时运行的故障率确定了五个安全等级。对于最高完整性级别的商用机载***,认证机构要求***组件每小时的最大允许故障率为10-9。因此,为以概率形式描述WCET的概率性实时***提供安全高效的调度策略至关重要,从而在满足***的概率性实时需求的同时实现资源的高效利用。
对于拥有确定性WCET的周期性实时任务的固定优先级调度问题,Liu和Layland对速率单调(Rate Monotonic,简称RM)调度算法的最优性进行了分析。近年来,Maxim等人针对单处理器平台研究了拥有概率性WCET的实时任务的固定优先级分配问题,提出了基于Audsley算法的优先级分配方法。Audsley算法对于确定性WCET的实时任务来说是最优的固定优先级分配方法,但是对于拥有概率性WCET的实时任务来说,由于它没有考虑任务之间隔离性和任务的概率性实时需求,***的资源利用率无法得到保证。
先前的解决方案主要存在两方面的缺陷。首先,它们不能保证概率性实时任务之间的适当隔离。由于高优先级任务对低优先级任务的干扰,考虑到任务的概率性实时需求时,整个***的可调度性会明显降低。第二,在可调度性分析中,直接使用了任务的概率性最坏情况执行时间(probabilistic Worst Case Execution Time,简称pWCET)估计中的所有值。但是,概率性实时***的响应时间分析的复杂度相对于任务数和pWCET估计的值数呈指数关系,而实际应用中pWCET估计可能涉及几千个值,这使得可调度性分析的计算复杂度非常高。
鉴于上述已有研究方案的不足,本发明通过基于pWCET整形的执行预算分配来减少概率实时***异常作业时间性行为的传播,提出一种可以克服上述问题的概率实时任务调度的pWCET整形方法。
发明内容
针对现有技术存在的问题,本发明提出一种基于概率性最坏情况执行时间整形的概率性实时任务调度方案,以达到适当隔离概率性实时任务之间的影响并降低***可调度性分析计算复杂度的目标。
本发明的技术方案:
一种基于pWCET整形的概率性实时任务调度方法,步骤如下:
步骤1、分配任务优先级
采用RM固定优先级分配方法,把任务集合中的任务按照任务周期从小到大的顺序排列,周期越小,任务优先级越高;
步骤2、基于概率性最坏情况执行时间整形计算每个概率性实时任务的执行预算
对任务集合按照优先级从高到低的顺序排列,依次计算每个任务的执行预算,对于排序为i的概率性实时任务τi,周期为Ti,截止期为Di,其中Di=Ti,任务错过截止期的概率性需求为概率性最坏情况执行时间pWCET为:
任务τi的执行预算Bi的计算方法为:
步骤2.2.1、计算任务τi的作业在其他任务都执行一个作业时的概率性响应时间:
定义两个概率性最坏情况执行时间和的卷积运算为和中的最坏执行时间分别两两相加,其对应的概率相乘,假如两个pWCET的最坏情况执行时间数量分别为o和u,计算得到列数为o×u的矩阵,然后合并最坏执行时间相同的列,即最坏情况执行时间不变,概率相加;
步骤3、基于执行预算的概率性实时任务集合调度方案
对于一个任务集合,每个任务根据任务优先级进行调度;如果低优先级的任务作业正在执行,高优先级任务的作业到来,则高优先级任务作业对资源进行抢占;高优先级任务作业执行结束后,若低优先级任务的作业没有错过截止期则继续执行,如果错过截止期则本作业失败,等待下一个作业到达;每个任务的执行时间不大于其执行预算,如果某任务的一个作业的执行时间达到执行预算,则此作业停止执行,如果执行预算未用完,则用于执行其它任务。
本发明的有益效果:本发明对概率性实时任务的pWCET进行整形并基于整形后的pWCET进行执行预算分配,在满足各个任务的概率性实时需求的同时,可以适当隔离概率性实时任务之间的影响,使整个任务集合的可调度性显著提高。此外,整形后的pWCET的值数比原有的pWCET明显降低,能够降低可调度性分析的计算复杂度,显著提高效率。
附图说明
图1为在时间间隔[0,10]上的同步到达序列模拟(τ2满足截止期情况);
图2为在时间间隔[0,10]上的同步到达序列模拟(τ2错过截止期情况);
图3为在时间间隔[0,10]上的同步到达序列模拟(τ2可调度情况);
图4为不同算法的概率性可调度任务集合比率;
图5为对于所有任务集合每个任务集合的平均求解时间;
图6为对于可调度任务集合每个任务集合的平均求解时间;
图7为对于不可调度任务集合每个任务集合的平均求解时间;
图8为不同pWCET规模下对于所有任务集合每个任务集合的平均求解时间。
具体实施方式
下面结合附图对本发明一种实施例做进一步说明。
例如有一个任务集合包含两个任务:任务τ1的周期为T1=5,截止期为D1=5,任务错过截止期的概率性需求为pWCET为任务τ2的周期为T2=10,截止期为D2=10,任务错过截止期的概率要求为pWCET为
在介绍本项发明的实施例之前,我们先用Audsley算法进行调度分析,分析此任务集合是否为可调度的。
首先因为任务τ2的最小WCET为7,大于任务τ1的截止期5,并且任务τ1的错过截止期的概率性需求为可知任务τ1优先级高于τ2,并且任务τ1的概率性响应时间为如图1所示,任务τ1最坏情况执行时间始终为1,任务τ2的最坏情况执行时间为7或8时,任务τ2可以满足截止期。如图2所示,任务τ1存在最坏情况执行时间为4的作业时,任务τ2无论如何也不能满足截止期。经过两图中的概率计算,可以得出任务τ2的概率性响应时间为其中表示响应时间大于任务截止期的情况。因此,任务τ2满足截止期的概率为0.648+0.162=0.81,而错过截止期的概率为0.19。因为任务τ2错过截止期的概率性需求为而任务τ2的实际错过截止期概率因此,利用此种调度方法不能满足调度性要求,导致调度失败。
在使用Audsley算法进行任务调度分析的过程中,导致实施例不可调度的主要原因是任务τ1的作业的WCET有0.1的概率为4,这使得任务τ2没有足够的执行时间而错过截止期。但是考虑到概率性实时任务有错过截止期的概率性需求,也就是说任务可以在一定概率下错过截止期,只要满足概率性需求即可。本发明考虑在满足任务错过截止期的概率性需求的条件下,为每个任务分配一定的执行预算,当任务作业的执行时间超出执行预算时,将直接将其丢弃,从而实现不同任务之间的时间行为的隔离。在本实施例中,为任务τ1分配的执行预算为1,当任务τ1的作业执行时间为4时,将直接丢弃。由于WCET为4的作业出现的概率为0.1,所以即使将其全部丢弃,任务τ1能够正常完成的概率还有0.9,能够满足错过截止期的概率性要求的条件。这样就在一定程度上隔离任务τ1的执行对任务τ2的影响,通过以上分析来看任务τ2的作业都可以顺利执行,使得此任务集合可调度。
本发明的核心在于在满足任务错过截止期的概率性需求的条件下,为每个任务分配一定的执行预算,当任务的某个作业的执行时间超出该预算时该作业将被丢弃,基于此对概率性最坏情况执行时间进行整形,整形后的pWCET使任务能够满足自身的概率性实时需求,又可以适当隔离概率性实时任务之间的影响,提高整个任务集合的可调度性。同时,整形后的pWCET的值数比原有的pWCET明显降低,能够降低可调度性分析的计算复杂度,提高效率。
下面将以上任务集合为例,展示本发明的具体实施方式。
步骤1、分配任务优先级。
把任务集合中的任务按照任务周期从小到大的顺序排列,周期越小,任务优先级越高。因为T1<T2,可知任务τ1优先级高于τ2。
步骤2、基于概率性最坏情况执行时间整形计算每个概率性任务的执行预算。
对任务τ2来说则最小为8,比任务τ2优先级高的任务τ1和任务τ2的累计利用率为因为U=1>2(21/2-1)≈0.83,因此,需要针对任务τ2的各个可能WCET计算满足截止期的概率进而确定是否可以为其分配合适的执行预算。首先,初始化设置任务τ1的抢占次数为preempt1=1,计算初始的响应时间
因为中响应时间都小于任务τ2的周期(截止期),因此选择中的最小的响应时间列并标记noPreempt=TRUE,同时对于优先级高于任务τ2的任务τ1计算抢占次数因为numPreempt>preempt1,所以标记
因为中的响应时间都小于任务τ2的周期,因此设置preempt1=numPreempt=2。因为noPreempt=TRUE成立,因此删除后,为空,即WCET为的作业的满足截止的概率值。因为所以需要进一步计算WCET为的作业的满足截止期的概率计算过程同可得所以任务τ2的执行预算为整形后的概率性最坏情况执行时间为
步骤3、基于执行预算的概率性任务集合调度方案。
经过整形之后,两个任务的概率性最坏情况执行时间分别为和调度情况如图3所示,因为任务τ1优先级较高,所以资源优先被分配给τ1的作业,当任务τ1的第一个作业执行1个单位时间之后任务完成执行,释放资源,任务τ2的第一个作业才可使用资源。当任务τ2的第一个作业运行4个单位时间后,任务τ1的第二个作业到达,这时虽然任务τ2并没有完成但是由于任务τ1优先级更高则进行资源抢占,任务τ2的第一个作业挂起,任务τ1的第二个作业运行。运行1个单位时间后任务τ1的第二个作业完成执行,释放资源,任务τ2的第一个作业继续运行。不管任务τ2的第一个作业执行时间是7还是8,在其周期内都有足够的时间完成,所以最终此任务集合是可调度的。
分析发现,已有的任务调度算法并不能成功调度本实施例,而本发明提出的一种基于概率性最坏情况执行时间整形的实时任务调度方法可以成功调度本实施例。同时,对pWCET整形后,调度算法的计算复杂度也可以有效降低。
本发明优点:本发明在满足任务错过截止期的概率性需求的条件下,为每个任务分配特定的执行预算,当任务作业的执行时间超过该预算时,作业将被丢弃,基于此对概率性最坏情况执行时间进行整形,整形后的pWCET使任务能够满足自身的概率性实时需求,并可以适当隔离概率性实时任务之间的影响,提高任务集合的可调度性。概率性实时***的响应时间分析的计算复杂度与任务的pWCET项数呈正相关,本发明中整形后的pWCET项数减少,从而降低了算法的计算复杂度,提高任务集合的可调度性分析效率。
验证结果:
为验证本发明的有效性,我们在配置为Intel(R)Core(TM)[email protected],4核,4GB内存的台式机上进行对比实验。本发明提出的算法简称为RM-EA,选取目前是最优的固定优先级调度算法:Audsley算法和RM算法作为对比算法。实验中,随机生成100个任务集合,每个任务集合有10个任务,每个任务的过截止期的概率性需求相同,pWCET的项数为10,每一项的最坏情况执行时间为计算机随机生成的1到100之间的数值。
图4展示了不同算法的概率性可调度任务集合比率,可以看出,随着截止期满足的概率性需求的提高,越来越多的任务集合无法调度。三种算法的效果对比,本发明提出的RM-EA算法能调度更多任务集合,证明本发明能有效提高概率性实时任务集合的可调度性。图5展示了对于所有任务集合每个任务集合的平均求解时间,结果显示,RM-EA算法的平均求解时间更低。图6和图7分别展示了可调度任务集合和不可调度任务集合的平均求解时间。结果表明,无论是对可调度还是不可调度的任务集合,RM-EA算法的平均求解时间都比对比算法低。当作业满足截止期的概率性需求为0.95时,从图4结果可知,Audsley算法和RM算法可调度任务集合的比率为0,故而图6中两对比算法的平均求解时间为0,比RM-EA算法要小。图8展示了不同pWCET规模下对于所有任务集合每个任务集合的平均求解时间,可以看出,pWCET值个数(也就是项数)越多,平均求解时间越长,显然RM-EA算法的求解时间相对较短。图5,6,7,8的结果表明本发明能有效提高***的可调度性,并降低可调度性分析的计算复杂度。
Claims (1)
1.一种基于pWCET整形的概率性实时任务调度方法,其特征在于:步骤如下:
步骤1、分配任务优先级
采用RM固定优先级分配方法,把任务集合中的任务按照任务周期从小到大的顺序排列,周期越小,任务优先级越高;
步骤2、基于概率性最坏情况执行时间整形计算每个概率性实时任务的执行预算
对任务集合按照优先级从高到低的顺序排列,依次计算每个任务的执行预算,对于排序为i的概率性实时任务τi,周期为Ti,截止期为Di,其中Di=Ti,任务错过截止期的概率性需求为概率性最坏情况执行时间pWCET为:
任务τi的执行预算Bi的计算方法为:
步骤2.2.1、计算任务τi的作业在其他任务都执行一个作业时的概率性响应时间:
定义两个概率性最坏情况执行时间和的卷积运算为和中的最坏执行时间分别两两相加,其对应的概率相乘,假如两个pWCET的最坏情况执行时间数量分别为o和u,计算得到列数为o×u的矩阵,然后合并最坏执行时间相同的列,即最坏情况执行时间不变,概率相加;
步骤3、基于执行预算的概率性实时任务集合调度方案
对于一个任务集合,每个任务根据任务优先级进行调度;如果低优先级的任务作业正在执行,高优先级任务的作业到来,则高优先级任务作业对资源进行抢占;高优先级任务作业执行结束后,若低优先级任务的作业没有错过截止期则继续执行,如果错过截止期则本作业失败,等待下一个作业到达;每个任务的执行时间不大于其执行预算,如果某任务的一个作业的执行时间达到执行预算,则此作业停止执行,如果执行预算未用完,则用于执行其它任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810586591.3A CN108845870B (zh) | 2018-05-29 | 2018-05-29 | 一种基于pWCET整形的概率性实时任务调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810586591.3A CN108845870B (zh) | 2018-05-29 | 2018-05-29 | 一种基于pWCET整形的概率性实时任务调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108845870A CN108845870A (zh) | 2018-11-20 |
CN108845870B true CN108845870B (zh) | 2021-05-07 |
Family
ID=64211605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810586591.3A Active CN108845870B (zh) | 2018-05-29 | 2018-05-29 | 一种基于pWCET整形的概率性实时任务调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108845870B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110865886B (zh) * | 2019-11-01 | 2022-09-16 | 大连理工大学 | 面向多概率性参数实时任务的和谐感知多处理器调度方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105893148A (zh) * | 2016-03-30 | 2016-08-24 | 华侨大学 | 一种基于rm策略的偶发任务低能耗调度方法 |
CN105955815A (zh) * | 2016-06-17 | 2016-09-21 | 电子科技大学 | 多功能组网雷达任务规划方法 |
CN107567617A (zh) * | 2015-05-14 | 2018-01-09 | 通用电气公司 | 用于多级实时调度分析的***及方法 |
CN107766140A (zh) * | 2017-10-30 | 2018-03-06 | 华中科技大学 | 一种带抢占点实时任务的可调度性分析方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120005684A1 (en) * | 2010-07-02 | 2012-01-05 | Fiji Systems, Inc. | Priority rollback protocol |
US10102031B2 (en) * | 2015-05-29 | 2018-10-16 | Qualcomm Incorporated | Bandwidth/resource management for multithreaded processors |
-
2018
- 2018-05-29 CN CN201810586591.3A patent/CN108845870B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107567617A (zh) * | 2015-05-14 | 2018-01-09 | 通用电气公司 | 用于多级实时调度分析的***及方法 |
CN105893148A (zh) * | 2016-03-30 | 2016-08-24 | 华侨大学 | 一种基于rm策略的偶发任务低能耗调度方法 |
CN105955815A (zh) * | 2016-06-17 | 2016-09-21 | 电子科技大学 | 多功能组网雷达任务规划方法 |
CN107766140A (zh) * | 2017-10-30 | 2018-03-06 | 华中科技大学 | 一种带抢占点实时任务的可调度性分析方法 |
Non-Patent Citations (3)
Title |
---|
Response Time Analysis for Fixed-Priority Tasks with Multiple Probabilistic Parameters;Dorin Maxim;《2013 IEEE 34th Real-Time Systems Symposium》;20131231;第224-235页 * |
Workload-Aware Harmonic Partitioned Scheduling for Probabilistic Real-Time Systems;Jiankang Ren;《IEEE》;20180331;第213-218页 * |
一种无线网络控制***概率性任务实时调度算法;吴国伟;《大连理工大学学报》;20151130;第638-643页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108845870A (zh) | 2018-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Goel et al. | A comparative study of cpu scheduling algorithms | |
CN106293919B (zh) | 一种时间触发的嵌入式任务调度装置与方法 | |
Sprunt et al. | Aperiodic task scheduling for hard-real-time systems | |
CN103324525B (zh) | 一种云计算环境下的任务调度方法 | |
US10754706B1 (en) | Task scheduling for multiprocessor systems | |
CN100485625C (zh) | 一种实时***任务调度方法 | |
US20060195845A1 (en) | System and method for scheduling executables | |
US6473780B1 (en) | Scheduling of direct memory access | |
JP2012511204A (ja) | リソースを最適化するためのタスク再編成方法 | |
KR20120109533A (ko) | 쿼리 관리 | |
CN103793272A (zh) | 一种周期性任务调度方法及*** | |
CN111897637B (zh) | 作业调度方法、装置、主机及存储介质 | |
CN104794239A (zh) | 一种云平台数据处理方法 | |
Behera et al. | A new dynamic round robin and SRTN algorithm with variable original time slice and intelligent time slice for soft real time systems | |
Su et al. | Fixed-priority dual-rate mixed-criticality systems: Schedulability analysis and performance optimization | |
CN106775975B (zh) | 进程调度方法及装置 | |
CN115309519A (zh) | 基于时间触发机制的确定性任务调度编排方法、***和存储介质 | |
CN108845870B (zh) | 一种基于pWCET整形的概率性实时任务调度方法 | |
Gu et al. | Improving OCBP-based scheduling for mixed-criticality sporadic task systems | |
CN112579271A (zh) | 用于非实时操作***的实时任务调度方法、模块、终端和存储介质 | |
JP4121525B2 (ja) | リソース利用率を制御する方法およびコンピュータシステム | |
Pathan | Unifying fixed-and dynamic-priority scheduling based on priority promotion and an improved ready queue management technique | |
Alhussian et al. | An unfair semi-greedy real-time multiprocessor scheduling algorithm | |
CN113051064A (zh) | 任务调度方法、装置、设备及存储介质 | |
CN104796494A (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 |