[发明专利]一种多核处理器上基于划分调度的DAG实时任务间的干扰分析方法有效
申请号: | 201911402711.0 | 申请日: | 2019-12-30 |
公开(公告)号: | CN111176817B | 公开(公告)日: | 2023-03-28 |
发明(设计)人: | 张伟哲;吴毓龙;关楠;方滨兴;何慧;刘川意;张宇;崔丽杰 | 申请(专利权)人: | 哈尔滨工业大学 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F16/901 |
代理公司: | 哈尔滨市松花江专利商标事务所 23109 | 代理人: | 杨立超 |
地址: | 150001 黑龙*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多核 处理器 基于 划分 调度 dag 实时 任务 干扰 分析 方法 | ||
1.一种多核处理器上基于划分调度的DAG实时任务间的干扰分析方法,其特征在于,所述DAG实时任务模型为:
假设在具有m个同构处理器的实时系统中执行由n个相互独立且互相可抢占的DAG任务组成的任务集t={t1,t2,…,tn},系统中共有n个优先级,任务集中任意一个任务ti(1≤i≤n)的优先级定义为f(ti),其中f(ti)∈{1,2,…,n};每个任务只有一个优先级并且每个优先级只对应一个任务;如果任务集中任意两个任务ti和tj的优先级分别为x和y,规定当且仅当x<y时ti的优先级高于tj的优先级;
任务集t中的每个任务ti都是一个有向无环图Gi(Ei,Vi),其中Vi表示该有向无环图的子任务结合,Ei表示子任务间依赖关系的集合;Vi,j表示任务ti的第j个子任务并且其由2个参数构成Ci,j,Pi,j,其中,Ci,j表示子任务Vi,j最坏情况下执行时间WCET,Fi,j表示Vi,j被分配执行的处理器;
每一个DAG任务都包含3个参数Ci,Ti,Di,其中Ci表示任务ti中所有子任务WCET的总和Ci=∑Ci,j,Ti表示任务ti实例的最小释放间隔,Di表示任务ti的截止日期;DAG任务中每个子任务都有自己的WCET,所有的子任务都继承该任务的周期和截止期限;使用Ui表示任务ti的利用率,Ui=Ci/Ti;
定义1:定义任务ti中没有前继子任务的子任务为源子任务,没有后继节点的子任务为终止子任务;
定义2:定义从源子任务到终止子任务的一条通路称为一条路径,用λi,k表示任务ti的第k条路径;
定义3:使用path(ti)来表示任务ti中路径的总数;
定义4:如果一个子任务Vi,j和另一个子任务Vi,k之间没有直接连接的边,并且有一条路径同时通过这两个子任务,那么先被通过的是另一个的间接前继子任务,后被通过的是另一个的间接后继子任务;
定义5:定义pr(λi,k)表示路径λi,k上所有子任务被分配到处理器的集合;
其特征在于,所述方法的实现过程为:
定义6:对于一个DAG任务ti,如果一个子任务Vi,j的后继子任务中有nf个子任务只有Vi,j作为其前集结点,则称这nf个子任务为一个RRC并行结构,记做Str;
定义7:用Strj,r表示任务tj中第r个Str结构,并用numb(Strj)来表示任务tj中含有Str结构的总数;
定义8:用StrPj,r(λi,k)表示Strj,r中属于pr(λi,k)的处理器集合,并用numb(StrPj,r(λi,k))表示StrPj,r(λi,k)的个数;
定义9:用Minj,r(λi,k)表示StrPj,r(λi,k)上执行Strj,r所消耗的总时间最少的处理器对应的时间值;
对于DAG任务WCRT的分析,分析该DAG任务中 所有路径的WCRT,并将所有路径的WCRT最大的作为该任务的WCRT,如公式(1)所示
公式(1)中R(λi,k)表示路径λi,k的WCRT,其计算公式如公式(4)所示:
公式(4)等式右侧第一部分表示路径λi,k总的WCET,即一旦一个DAG任务的拓扑结构确定并且每个子任务的执行时间确定,那么该任务内任意路径的len(λi,k)就是定值;
右侧第二部分表示表示高优先级任务对路径λi,k造成干扰的总和,
右侧第三部分表示Iself(λi,k)表示任务ti内部不属于路径λi,k且被分配的处理器属于集合pr(λi,k)的其他子任务对路径λi,k造成干扰的总和;
路径λi,kWCRT的上界可用公式(4)计算得到,其中hp(ti)表示优先级高于ti的任务集合,表示在R(λi,k)时间内任务tj最多释放实例个数,Ij(λi,k)表示高优先级任务tj对低优先级任务ti的路径λi,k造成干扰,用公式(3)计算,
公式(4)是一个迭代公式,每次新的R(λi,k)都是根据前一个R(λi,k)值计算得到,使用R(λi,k)=len(λi,k)作为初始值进行迭代;当前R(λi,k)值与前一个比较没有变化时停止迭代,并将当前R(λi,k)值作为路径λi,k的WCRT;
公式(3)中:Wjp表示任务tj在处理器p上的负载总和,也就是等式右边第一部分表示任务tj在处理器pr(λi,k)上的负载总和,等式右侧第二部分表示RRC并行结构导致处理器并行执行的负载总和的最小值,其中|StrPj,t|表示StrPj,t的数量;
利用公式(4)求得当前分析任务ti的所有路途响应时间,再利用公式(1)得到所有路途响应时间的最大值,将最大值作为该任务最坏情况下响应时间R(ti)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工业大学,未经哈尔滨工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911402711.0/1.html,转载请声明来源钻瓜专利网。