CN101303657B - 一种多处理器实时任务执行功耗优化方法 - Google Patents

一种多处理器实时任务执行功耗优化方法 Download PDF

Info

Publication number
CN101303657B
CN101303657B CN2008100389118A CN200810038911A CN101303657B CN 101303657 B CN101303657 B CN 101303657B CN 2008100389118 A CN2008100389118 A CN 2008100389118A CN 200810038911 A CN200810038911 A CN 200810038911A CN 101303657 B CN101303657 B CN 101303657B
Authority
CN
China
Prior art keywords
real
time
time task
task
now
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.)
Expired - Fee Related
Application number
CN2008100389118A
Other languages
English (en)
Other versions
CN101303657A (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.)
University of Shanghai for Science and Technology
Original Assignee
University of Shanghai for Science and Technology
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 University of Shanghai for Science and Technology filed Critical University of Shanghai for Science and Technology
Priority to CN2008100389118A priority Critical patent/CN101303657B/zh
Publication of CN101303657A publication Critical patent/CN101303657A/zh
Application granted granted Critical
Publication of CN101303657B publication Critical patent/CN101303657B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Power Sources (AREA)

Abstract

本发明公开了一种多处理器实时任务执行功耗优化方法。它是利用实时任务的松弛时间延长所述实时任务执行时间降低系统功耗。首先利用实时任务的释放时间、最坏执行时间、绝对截止期和任务之间的约束关系构造实时任务松弛时间约束图;其次按照深度优先策略和递归策略分配实时任务松弛时间约束图中的实时任务;接着通过删除重复实时任务优化已分配的实时任务;最后按照广度优先策略计算实时任务的最大执行可延长执行时间,并通过延长实时任务的执行时间到最大执行可延长时间来降低系统功耗。

Description

一种多处理器实时任务执行功耗优化方法
技术领域
本发明涉及计算机领域,提出了一种多处理器实时任务执行功耗优化方法。
背景技术
计算机实时系统在现代的制造、通信、军事等社会的各个领域占有举足轻重的地位。随着应用环境的性能要求越来越高,系统功耗越来越大。多处理器系统能够满足应用环境的性能要求,虽然需要及其复杂的调度方法。系统功耗增加会导致两个方面的问题:处理器、内存等硬件的散热问题;系统电池的供给时间问题。因此,设计多处理器实时任务执行功耗优化方法成为实时系统领域非常的问题,也是难以解决的问题。
当前主要采用动态电压调节(Dynamic Voltage Scaling,DVS)技术降低系统功耗,即,利用降低处理器频率延长任务执行时间达到降低系统功耗的目的。该技术的原理为:处理器频率与任务执行时间为一次方关系,而与系统功耗为三次方关系,因此,当系统降低1个单位频率,虽然延长1个时间单位执行时间,但是降低三个单位功耗。大部分算法采用模拟退火算法、遗传算法等进化算法实现多处理器实时任务功耗优化。但是这类方法的时间开销非常可观,无法很好地实现任务的实时性。
发明内容
本发明要解决的技术问题是提供一种多处理器实时任务执行功耗优化方法,通过实时任务的松弛时间降低多处理器实时任务的执行功耗。
为了解决上述问题,本发明的构思是:
根据实时任务的释放时间、最坏执行时间、绝对截止期和任务之间的约束关系计算所述实时任务的松弛时间,构造实时任务松弛时间约束图;
进一步的,按照深度优先策略和递归策略分配实时任务松弛时间约束图中的实时任务;
进一步的,如果已分配的实时任务存在重复,则计算重复任务执行完毕的时间;如果重复任务执行完毕时间的最小值,加处理器之间的通信时间开销,仍然不会造成所述重复任务的后继任务违反时间约束,则保留所述最小值对应的重复任务,删除其它处理器上的重复任务;
进一步的,计算所述处理器上所述实时任务的最大执行可延长时间;最大限度的延长实时任务的执行时间,降低实时任务执行时的处理器频率,从而降低系统功耗。
根据上述的发明构思,本发明采用下述技术方案:
一种多处理器实时任务执行功耗优化方法,其特征在于利用实时任务的松弛时间延长所述实时任务执行时间降低功耗,具体操作步骤如下:
A、构造实时任务松弛时间约束图:根据实时任务的释放时间、最坏执行时间、绝对截止期和实时任务之间的约束关系构造实时任务松弛时间约束图;所述实时任务之间的约束关系包括:实时任务之间的执行顺序关系、实时任务之间的数据依赖关系,所述实时任务之间的执行顺序关系包括实时任务的前继关系、实时任务的后继关系,所述实时任务之间的数据依赖关系是所述实时任务的数据输出是其它实时任务的数据输入;
B、按照深度优先策略和递归策略分配实时任务松弛时间约束图中的实时任务;
C、优化步骤B分配的实时任务;
D、计算所述实时任务执行时处理器频率,降低系统功耗。
上述步骤A中的构造实时任务松弛时间约束图的操作步骤如下:
A1、计算所述实时任务松弛时间;
A2、构造所述实时任务松弛时间约束图中的实时任务节点;所述实时任务节点用实时任务属性元组表示,所述实时任务属性元组包括:释放时间、最坏执行时间、绝对截止期、松弛时间;
A3、构造所述实时任务松弛时间约束图中的实时任务的有向连接弧;所述实时任务的有向连接弧用实时任务之间通信属性元组表示,所述通信属性元组包括:实时任务执行的前继实时任务、实时任务与其前继实时任务通信的时间开销、实时任务执行的后继实时任务、实时任务与其后继实时任务通信的时间开销;
上述步骤A1中的计算实时任务松弛时间按以下公式进行计算:
S now = min { D now - max { Σ i ∈ P pre E i } , D now - E now - R now }
其中,Snow是所述实时任务的松弛时间;
Dnow是所述实时任务的绝对截止期:
Ei是所述实时任务的最坏执行时间;
Ppre是所述实时任务的前继实时任务的集合;
Figure S2008100389118D00031
是所述实时任务前继实时任务集合Ppre上实时任务最坏执行时间之和;
Enow是所述实时任务的最坏执行时间;
Rnow是所述实时任务的释放时间。
上述步骤B中的按照深度优先策略和递归策略分配所述实时任务的操作步骤如下:
B1、按照深度优先策略遍历所述实时任务松弛时间约束图;
B2、记录每一次深度优先遍历时所遍历的实时任务、实时任务最坏执行时间之和;
B3、判断步骤B2深度优先遍历的实时任务中是否存在松弛时间小于处理器之间通信时间开销的实时任务,如果是,则转步骤B4,否则,转步骤B5;
B4、将步骤B2深度优先遍历的实时任务分配到一个空闲处理器上;
B5、判断是否遍历完所述实时任务松弛时间约束图,如果是,则转步骤B6,否则,转步骤B1;
B6、查找步骤B2记录的实时任务最坏执行时间之和的最大值,将最大值对应的深度优先遍历的实时任务分配到一个空闲处理器上;
B7、按照执行顺序遍历步骤B6所述实时任务;
B8、判断步骤B6所述实时任务是否存在前继实时任务或者后继实时任务,如果存在,则转步骤B9,否则,转步骤B7;
B9、按照递归策略遍历步骤B8所述实时任务;
B10、判断步骤B9所述实时任务是否已遍历,如果是,则转步骤B8,否则,转步骤B11;
B11、判断步骤B9所述实时任务是否存在前继实时任务或者后继实时任务,如果存在,则转步骤B9,否则,转步骤B12;
B12、分配本次递归遍历的实时任务到一个空闲处理器上;
B13、判断步骤B6所述实时任务是否遍历完毕,如果是,则步骤B执行完毕,否 则转步骤B7。
上述步骤C中的优化已分配的实时任务的操作步骤如下:
C1、查找权利要求1所述步骤B分配到处理器上的实时任务是否存在重复,如果存在,则转步骤C2,否则,优化过程结束;
C2、计算所述步骤C1所述重复实时任务在所在处理器上执行完毕时间的最小值;
C3、判断所述步骤C2所述最小值对应的实时任务结果传递给所述步骤C1所述处理器是否会造成所述处理器所述重复实时任务的后继实时任务违反其时间约束,如果违反,则优化过程结束,否则,转步骤C4;
C4、删去步骤C1所述重复实时任务。
上述步骤D中的功耗优化方法的操作步骤如下:
D1、广度优先遍历已分配实时任务的处理器;
D2、判断分配到步骤D1所述处理器上的实时任务是否遍历完毕,如果是,则转
步骤D3,否则,转步骤D4;
D3、从步骤D1所述处理器中删去步骤D2所述处理器;
D4、查找步骤D1所述处理器上当前遍历的实时任务中绝对截止期最小的实时任务;
D5、计算步骤D4所述绝对截止期最小的实时任务的最大执行可延长时间;
D6、根据步骤D5所述实时任务的最大执行可延长时间计算所述实时任务执行时处理器的频率;
D7、如果步骤D1所述处理器上所述实时任务都已遍历完毕,则步骤D5执行完毕,否则,转步骤D1;
上述步骤D5中的计算所述实时任务的最大执行可延长时间的操作步骤如下:
D51、所述实时任务所在处理器上的松弛时间IntraSnow由以下公式计算:
IntraS now = min { D now - max { Σ i ∈ P pre E i } , D now - E now - R now }
其中,IntraSnow是根据所述实时任务所在处理器所述实时任务前继实时任务的最坏执行时间计算所得的松弛时间;
所述公式所示符号含义与权利要求2所述公式所示符号含义相同;
D52、所述实时任务所在处理器外的松弛时间IntreSnow由以下公式计算:
IntreS now = min { D now - max { Σ i ∈ P pre E i } - n × TimeDelay , D now - E now - R now }
其中,IntreSnow是根据除所述实时任务所在处理器以外,其它处理器上所述实时任务的前继实时任务的最坏执行时间计算所得的松弛时间;
n是所述实时任务所在处理器以外的前继实时任务执行所经历的处理器之间通信次数;TimeDealy是处理器之间通信的时间开销;
所述公式中所示其它符号含义与前述公式所示符号含义相同;
D53、重新计算所述实时任务松弛时间,所述实时任务松弛时间由以下公式计算:
Snow=min{IntraSnow,InterSnow}
其中,Snow是所述实时任务松弛时间;
所述公式中所示其它符号含义与前述公式所示符号含义相同;
D54、所述实时任务的最大执行可延长时间由以下公式计算:
MaxS mow = Min { D now - Σ i ∈ PE now E i , { S j | j ∈ P next } , S now }
其中,MaxSnow是所述实时任务的最大执行可延长时间;
Pnext是所述实时任务所在处理器上的后继实时任务的集合;
Sj是实时任务j在Ppre中的实时任务构成的路径上的松弛时间
所述公式中所示其它符号含义与前述公式所示符号含义相同。
上述步骤D6中的延长计算所述实时任务执行时处理器的频率按以下公式进行计算:
fnow=(TWCET×fWCET)/Tnow
其中,fnow是所述实时任务执行时所在处理器的频率;
TWCET是所述实时任务的最坏执行时间;
fWCET是所述实时任务最坏执行时间TWCET对应的处理器频率;
Tnow是所述实时任务延长执行时间后的实际执行时间。
本发明与现有技术相比较,具有如下显而易见的突出实质性特点和显著优点:本发明是利用实时任务的松弛时间延长所述实时任务执行时间降低系统功耗。首先利用 实时任务的释放时间、最坏执行时间、绝对截止期和任务之间的约束关系构造实时任务松弛时间约束图;其次按照深度优先策略和递归策略分配实时任务松弛时间约束图中的实时任务;接着通过删除重复实时任务优化已分配的实时任务;最后按照广度优先策略计算实时任务的最大执行可延长执行时间,并通过延长实时任务的执行时间到最大执行可延长时间来降低系统功耗。
附图说明
图1是本发明的总体处理流程图;
图2是本发明中构造实时任务松弛时间约束图的流程图;
图3是本发明中按照深度优先策略和递归策略分配所述实时任务的流程图;
图4是本发明中优化已分配实时任务的流程图;
图5是本发明中功耗优化方法的流程图;
图6是本发明中计算实时任务的最大执行可延长时间的流程图。
具体实施方式
本发明的一个优选实施例结合附图详述如下:
本实施例所述方案的应用环境是支持动态电压调节技术的多处理器实时系统,本实施例不限定所述技术方案应用环境中多处理器的组织形式和实时系统的设计方式。
下面结合说明书附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本多处理器实时任务执行功耗优化方法的总体处理流程图。
步骤101、构造实时任务松弛时间约束图。
实时任务松弛时间约束图中的节点用实时任务的属性元组表示,图中的有向连接弧用实时任务之间通信元组表示。
步骤102、按照深度优先策略和递归策略分配所述实时任务。
步骤102执行后,实时任务松弛时间约束图中的实时任务都已分配到各个处理器上。
步骤103、优化已分配的实时任务。
步骤103的目的是尽可能删除重复分配的实时任务。
步骤104、计算实时任务执行时处理器频率。
步骤104通过延长实时任务的执行时间到最大执行可延长时间来降低系统功耗。
参照图2,示出了本实施例中构造实时任务松弛时间约束图的流程图。
步骤201、计算实时任务的松弛时间。
步骤201所述的实时任务的松弛时间由以下公式计算:
S now = min { D now - max { Σ i ∈ P pre E i } , D now - E now - R now }
其中,Snow是所述实时任务的松弛时间;
Dnow是所述实时任务的绝对截止期;
Ei是所述实时任务的最坏执行时间;
Ppre是所述实时任务的前继实时任务的集合;
Figure S2008100389118D00072
是所述实时任务前继实时任务集合Ppre上实时任务最坏执行时间之和;
Enow是所述实时任务的最坏执行时间;
Rnow是所述实时任务的释放时间。
步骤202、构造实时任务节点。
实时任务节点由实时任务的释放时间、最坏执行时间、绝对截止期、松弛时间构成的元组表示。
步骤203、构造实时任务的有向连接弧。
实时任务的有向连接弧由实时任务执行的前继实时任务、实时任务与其前继实时任务通信的时间开销、实时任务执行的后继实时任务、实时任务与其后继实时任务通信的时间开销构成的元组表示。
参照图3,示出了本实施例中按照深度优先策略和递归策略分配所述实时任务的流程图。
步骤301、按照深度优先策略遍历所述实时任务松弛时间约束图。
步骤302、记录每一次深度优先遍历时所遍历的实时任务、实时任务最坏执行时间之和;
每一次深度遍历时记录的实时任务是在步骤304、步骤306中使用。计算实时任务最坏执行时间之和是为了求出实时任务松弛时间约束图的最长路径。
步骤303、判断步骤302深度优先遍历的实时任务中是否存在松弛时间小于处理器之间通信时间开销的实时任务,如果是,则转步骤304;否则,转步骤305。
判断实时任务的松弛时间是否小于处理器之间通信时间开销,是为了判断当前遍历的实时任务是否能够分配在两个处理器上执行。
步骤304、将步骤302深度优先遍历的实时任务分配到一个空闲处理器上。
如果实时任务的松弛时间小于处理器之间通信时间开销,那么将当前遍历的实时任务分配到两个或者两个以上的处理器上执行,必定造成当前遍历的实时任务中某些实时任务违反其时间约束。因此,步骤304将此类型的实时任务分配到一个处理器上执行。
步骤305、判断是否遍历完所述实时任务松弛时间约束图,如果是,则转步骤306,否则,转步骤301。
步骤306、查找步骤302记录的实时任务最坏执行时间之和的最大值,将最大值对应的实时任务分配到一个空闲处理器上。
将实时任务松弛时间约束图中最长路径上的实时任务分配到一个处理器上执行。
步骤307、按照执行顺序遍历步骤306所述实时任务。
按照实时任务的执行顺序遍历最长路径上的实时任务。
步骤308、判断步骤306所述实时任务是否存在前继实时任务或者后继实时任务,如果存在,则转步骤309,否则,转步骤307。
判断最长路径上的实时任务是否存在前继和后继,如果存在前继或者后继,那么转到步骤309递归遍历当前实时任务的所有前继和后继。采用递归遍历当前实时任务的前继和后继的目的是,保证存在数据通信的实时任务尽可能分配到同一个处理器上执行。
步骤309、按照递归策略遍历步骤308所述实时任务。
步骤310、判断步骤309所述实时任务是否已遍历,如果是,则转步骤308,否则,转步骤311。
步骤311、判断步骤309所述实时任务是否存在前继实时任务或者后继实时任务,如果存在,则转步骤309,否则,转步骤312。
步骤312、分配本次递归遍历的实时任务到一个空闲处理器上。
步骤313、判断步骤306所述实时任务是否遍历完毕,如果是,则步骤B执行完毕,否则转步骤307。
如果步骤306所述实时任务遍历完毕,那么整个实时任务松弛时间约束图中的实时任务全部分配到处理器上执行。
参照图4,示出了本实施例中优化已分配实时任务的流程图。
步骤401、已分配到处理器上的实时任务是否存在重复,如果存在,则转步骤402,否则,优化过程结束。
通过判断实时任务是否存在重复,保证分配到处理器上的实时任务尽可能只执行一次。
步骤402、计算所述步骤401所述重复实时任务在所在处理器上执行完毕时间的最小值。
步骤403、判断所述步骤402所述最小值对应的实时任务结果传递给所述步骤401所述处理器是否会造成所述处理器所述重复实时任务的后继实时任务违反其时间约束,如果违反其时间约束,则归并过程结束,否则,转步骤404。
如果存在重复的实时任务执行的结果传递到其后继实时任务,仍然能够保证其后继实时任务满足时间约束,那么可以删除其后继实时任务所在处理器上的重复实时任务。如果不能满足其后继实时任务的时间约束,那么即使存在重复实时任务,也必须保留重复实时任务。
步骤404、删去所述重复实时任务。
参照图5,示出了本实施例中功耗优化方法的流程图。
步骤501、广度优先遍历已分配实时任务的处理器。
从已分配实时任务的处理器中,查找当前遍历到的实时任务的绝对截止期的最小值。首先计算绝对截止期最小的实时任务的最大执行可延长时间是为了防止造成截止期小的实时任务因其它实时任务延长其执行时间而违反其时间约束。
步骤502、判断当前处理器上的实时任务是否遍历完毕,如果是,则转步骤D503,否则,转步骤504。
判断但前处理器上是否所有的实时任务的最大执行可延长时间都已计算完毕。如果处理器上所有实时任务的最大执行可延长时间都已计算完毕,那么将此处理器从待遍历的处理器中删除。
步骤503、删去当前遍历的处理器。
步骤504、查找当前遍历的实时任务中绝对截止期最小的实时任务。
步骤505、计算绝对截止期最小的实时任务的最大执行可延长时间。
步骤506、计算所述实时任务执行时处理器的频率。
步骤507、如果处理器上所述实时任务都已遍历完毕,则执行完毕,否则,转步骤501。
参照图6,示出了本实施例中计算实时任务的最大执行可延长时间的流程图。
步骤601、计算实时任务所在处理器上的松弛时间IntraSnow
当前实时任务与其所在处理器上的前继实时任务的通信没有时间开销,所以单独计算当前实时任务在所在处理器上的内部松弛时间。
步骤602、计算实时任务所在处理器外的松弛时间IntreSnow
当前实时任务与其所在处理器以外的处理器上的前继实时任务的通信存在时间开销,所以单独计算当前实时任务所在处理器上的外部松弛时间。
步骤603、计算所述实时任务松弛时间Snow
当前实时任务的松弛时间等于IntraSnow和IntreSnow的最小值。
步骤604、计算实时任务的最大执行可延长时间MaxSnow
以上对本多处理器实时任务执行功耗优化方法,进行了详细的介绍。本文结合说明书附图和具体实施例进行阐述只是用于帮助理解本发明的方法和核心思想;同时,对于本领域的一般技术人员,依据本发明的方法和思想,在具体实施方式和应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (8)

1.一种多处理器实时任务执行功耗优化方法,其特征在于利用实时任务的松弛时间延长所述实时任务执行时间降低功耗,具体操作步骤如下:
A、根据实时任务的释放时间、最坏执行时间、绝对截止期和实时任务之间的约束关系构造实时任务松弛时间约束图;所述实时任务之间的约束关系包括:实时任务之间的执行顺序关系、实时任务之间的数据依赖关系,所述实时任务之间的执行顺序关系包括实时任务的前继关系、实时任务的后继关系,所述实时任务之间的数据依赖关系是所述实时任务的数据输出是其它实时任务的数据输入;
B、按照深度优先策略和递归策略分配实时任务松弛时间约束图中的实时任务;
C、优化步骤B分配的实时任务;
D、计算所述实时任务执行时处理器频率,降低系统功耗。
2.根据权利要求1所述的多处理器实时任务执行功耗优化方法,其特征在于所述步骤A中的构造实时任务松弛时间约束图的操作步骤如下:
A1、计算所述实时任务松弛时间;
A2、构造所述实时任务松弛时间约束图中的实时任务节点;所述实时任务节点用实时任务属性元组表示,所述实时任务属性元组包括:释放时间、最坏执行时间、绝对截止期、松弛时间;
A3、构造所述实时任务松弛时间约束图中的实时任务的有向连接弧;所述实时任务的有向连接弧用实时任务之间通信属性元组表示,所述通信属性元组包括:实时任务执行的前继实时任务、实时任务与其前继实时任务通信的时间开销、实时任务执行的后继实时任务、实时任务与其后继实时任务通信的时间开销;
3.根据权利要求2所述的多处理器实时任务执行功耗优化方法,其特征在于所述步骤A1中的计算实时任务松弛时间按以下公式进行计算:
S now = min { D now - max { Σ i ∈ P pre E i } , D now - E now - R now }
其中,Snow是所述实时任务的松弛时间;
Dnow是所述实时任务的绝对截止期;
Ei是所述实时任务的最坏执行时间;
Ppre是所述实时任务的前继实时任务的集合;
Figure FSB00000027740200021
是所述实时任务前继实时任务集合Ppre上实时任务最坏执行时间之和;
Enow是所述实时任务的最坏执行时间;
Rnow是所述实时任务的释放时间。
4.根据权利要求1所述的多处理器实时任务执行功耗优化方法,其特征在于所述步骤B中的按照深度优先策略和递归策略分配所述实时任务的操作步骤如下:
B1、按照深度优先策略遍历所述实时任务松弛时间约束图;
B2、记录每一次深度优先遍历时所遍历的实时任务、实时任务最坏执行时间之和;
B3、判断步骤B2深度优先遍历的实时任务中是否存在松弛时间小于处理器之间通信时间开销的实时任务,如果是,则转步骤B4,否则,转步骤B5;
B4、将步骤B2深度优先遍历的实时任务分配到一个空闲处理器上;
B5、判断是否遍历完所述实时任务松弛时间约束图,如果是,则转步骤B6,否则,转步骤B1;
B6、查找步骤B2记录的实时任务最坏执行时间之和的最大值,将最大值对应的深度优先遍历的实时任务分配到一个空闲处理器上;
B7、按照执行顺序遍历步骤B6所述实时任务;
B8、判断步骤B6所述实时任务是否存在前继实时任务或者后继实时任务,如果存在,则转步骤B9,否则,转步骤B7;
B9、按照递归策略遍历步骤B8所述实时任务;
B10、判断步骤B9所述实时任务是否已遍历,如果是,则转步骤B8,否则,转步骤B11;
B11、判断步骤B9所述实时任务是否存在前继实时任务或者后继实时任务,如果存在,则转步骤B9,否则,转步骤B12;
B12、分配本次递归遍历的实时任务到一个空闲处理器上;
B13、判断步骤B6所述实时任务是否遍历完毕,如果是,则步骤B执行完毕,否则转步骤B7。
5.根据权利要求1所述的多处理器实时任务执行功耗优化方法,其特征在于所述步骤C中的优化已分配的实时任务的操作步骤如下:
C1、查找权利要求1所述步骤B分配到处理器上的实时任务是否存在重复,如果存在,则转步骤C2,否则,优化过程结束;
C2、计算所述步骤C1所述重复实时任务在所在处理器上执行完毕时间的最小值;
C3、判断所述步骤C2所述最小值对应的实时任务结果传递给所述步骤C1所述处理器是否会造成所述处理器所述重复实时任务的后继实时任务违反其时间约束,如果违反,则优化过程结束,否则,转步骤C4;
C4、删去步骤C1所述重复实时任务。
6.根据权利要求1所述的多处理器实时任务执行功耗优化方法,其特征在于所述步骤D中的功耗优化方法的操作步骤如下:
D1、广度优先遍历已分配实时任务的处理器;
D2、判断分配到步骤D1所述处理器上的实时任务是否遍历完毕,如果是,则转步骤D3,否则,转步骤D4;
D3、从步骤D1所述处理器中删去步骤D2所述处理器;
D4、查找步骤D1所述处理器上当前遍历的实时任务中绝对截止期最小的实时任务;
D5、计算步骤D4所述绝对截止期最小的实时任务的最大执行可延长时间;
D6、根据步骤D5所述实时任务的最大执行可延长时间计算所述实时任务执行时处理器的频率;
D7、如果步骤D1所述处理器上所述实时任务都已遍历完毕,则步骤D5执行完毕,否则,转步骤D1;
7.根据权利要求6所述的多处理器实时任务执行功耗优化方法,其特征在于所述步骤D5中的计算所述实时任务的最大执行可延长时间的操作步骤如下:
D51、所述实时任务所在处理器上的松弛时间IntraSnow由以下公式计算:
IntraS now = min { D now - max { Σ i ∈ P pre E i } , D now - E now - R now }
其中,IntraSnow是根据所述实时任务所在处理器所述实时任务前继实时任务的最坏执行时间计算所得的松弛时间;
所述公式所示符号含义与权利要求2所述公式所示符号含义相同;
D52、所述实时任务所在处理器外的松弛时间IntreSnow由以下公式计算:
IntreS now = min { D now - max { Σ i ∈ P pre E i } - n × TimeDelay , D now - E now - R now }
其中,IntreSnow是根据除所述实时任务所在处理器以外,其它处理器上所述实时任务的前继实时任务的最坏执行时间计算所得的松弛时间;
n是所述实时任务所在处理器以外的前继实时任务执行所经历的处理器之间通信次数;
TimeDealy是处理器之间通信的时间开销;
所述公式中所示其它符号含义与前述公式所示符号含义相同;
D53、重新计算所述实时任务松弛时间,所述实时任务松弛时间由以下公式计算:
Snow=min{IntraSnow,InterSnow}
其中,Snow是所述实时任务松弛时间;
所述公式中所示其它符号含义与前述公式所示符号含义相同;
D54、所述实时任务的最大执行可延长时间由以下公式计算:
Max S mow = Min { D now - Σ i ∈ PE now E i , { S j | j ∈ P next } , S now }
其中,MaxSnow是所述实时任务的最大执行可延长时间;
Pnext是所述实时任务所在处理器上的后继实时任务的集合;
Sj是实时任务j在Ppre中的实时任务构成的路径上的松弛时间;
所述公式中所示其它符号含义与前述公式所示符号含义相同。
8.根据权利要求6所述的多处理器实时任务执行功耗优化方法,其特征在于所述步骤D6中的延长计算所述实时任务执行时处理器的频率按以下公式进行计算:
fnow=(TWCET×fWCET)/Tnow
其中,fnow是所述实时任务执行时所在处理器的频率;
TWCET是所述实时任务的最坏执行时间;
fWCET是所述实时任务最坏执行时间TWCET对应的处理器频率;
Tnow是所述实时任务延长执行时间后的实际执行时间。
CN2008100389118A 2008-06-13 2008-06-13 一种多处理器实时任务执行功耗优化方法 Expired - Fee Related CN101303657B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008100389118A CN101303657B (zh) 2008-06-13 2008-06-13 一种多处理器实时任务执行功耗优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008100389118A CN101303657B (zh) 2008-06-13 2008-06-13 一种多处理器实时任务执行功耗优化方法

Publications (2)

Publication Number Publication Date
CN101303657A CN101303657A (zh) 2008-11-12
CN101303657B true CN101303657B (zh) 2011-08-10

Family

ID=40113574

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100389118A Expired - Fee Related CN101303657B (zh) 2008-06-13 2008-06-13 一种多处理器实时任务执行功耗优化方法

Country Status (1)

Country Link
CN (1) CN101303657B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101408850B (zh) * 2008-11-27 2011-11-23 中国人民解放军信息工程大学 一种在任务流方式下求解复杂问题的方法
CN101620550B (zh) * 2009-05-27 2013-01-02 西华师范大学 一种基于任务模糊多特征的嵌入式实时调度方法
CN103235640B (zh) * 2013-01-08 2016-01-13 北京邮电大学 一种基于dvfs技术的大规模并行任务节能调度方法
CN103197982B (zh) * 2013-03-28 2016-03-09 哈尔滨工程大学 一种任务局部最优检查点间隔搜索方法
WO2015039320A1 (en) * 2013-09-19 2015-03-26 Intel Corporation Techniques for distributed processing task portion assignment
CN106294801A (zh) * 2016-08-16 2017-01-04 华中科技大学 一种多处理器实时系统中的更新事务分派方法
CN109753137B (zh) * 2018-11-20 2021-11-26 北京航空航天大学 基于nsga2的带截止时间约束的处理器功耗感知调度方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030065960A1 (en) * 2001-09-28 2003-04-03 Stefan Rusu Method and apparatus for adjusting the voltage and frequency to minimize power dissipation in a multiprocessor system
US20030115242A1 (en) * 2001-12-13 2003-06-19 Hayduk Matthew A. Computing system capable of reducing power consumtion by distributing execution of instruction across multiple processors and method therefore
CN1906587A (zh) * 2004-03-16 2007-01-31 索尼计算机娱乐公司 降低多处理器系统中的功耗的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030065960A1 (en) * 2001-09-28 2003-04-03 Stefan Rusu Method and apparatus for adjusting the voltage and frequency to minimize power dissipation in a multiprocessor system
US20030115242A1 (en) * 2001-12-13 2003-06-19 Hayduk Matthew A. Computing system capable of reducing power consumtion by distributing execution of instruction across multiple processors and method therefore
CN1906587A (zh) * 2004-03-16 2007-01-31 索尼计算机娱乐公司 降低多处理器系统中的功耗的方法和装置

Also Published As

Publication number Publication date
CN101303657A (zh) 2008-11-12

Similar Documents

Publication Publication Date Title
CN101303657B (zh) 一种多处理器实时任务执行功耗优化方法
Gu et al. Cost minimization for big data processing in geo-distributed data centers
Carney et al. Monitoring streams—a new class of data management applications
CN102541875B (zh) 有向无环图的关系型节点数据的存取方法、装置及系统
CN103930888B (zh) 基于更新、储存及响应约束的多粒度分组聚合选择
US8478742B2 (en) Using estimated cost to refresh a set of materialized views (MVS)
CN105930446B (zh) 一种基于Hadoop分布式技术的电信客户标签生成方法
Zhao et al. Towards approximate event processing in a large-scale content-based network
Hu et al. Indexing techniques for wireless data broadcast under data clustering and scheduling
Li et al. BP-growth: Searching strategies for efficient behavior pattern mining
Araújo et al. Spark-based streamlined metablocking
CN102521312A (zh) 一种文件索引的存储方法及文件系统
CN109101316B (zh) 一种能效相关的云计算平台资源调度方法
CN109165718A (zh) 基于并行蚁群算法的网络重构方法和系统
CN105338088A (zh) 一种移动p2p网络缓存替换方法
CN106502921A (zh) 一种基于用户活跃度的社交网络新动态队列缓存方法
CN112966001A (zh) 一种基于区块链的BCTkPQ查询方法
Xu et al. What-if query processing policy for big data in OLAP system
Guan et al. Throughput-oriented power allocation scheme based on convex optimization for cache-enabled FiWi access network in 5G IoT scenario
Liang et al. A two-stage replica management mechanism for latency-aware applications in multi-access edge computing
Ning et al. An improved index based on mapreduce for path queries in public transportation networks
Waluyo et al. Indexing schemes for multichannel data broadcasting in mobile databases
Kim et al. Impact neighborhood indexing (INI) in diffusion graphs
Zhou et al. NISU: a novel index structure on uncertain data in large-scale publish/subscribe systems
CN115665161B (zh) 一种clickhouse实时数据流负载均衡方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110810

Termination date: 20140613

EXPY Termination of patent right or utility model