两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法

文檔序號:6459398閱讀:220來源:國知局
專利名稱:一種多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法
技術(shù)領(lǐng)域
本發(fā)明涉及計算機領(lǐng)域,提出了一種多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法。
背景技術(shù)
計算機實時系統(tǒng)在現(xiàn)代的制造、通信、軍事等社會的各個領(lǐng)域占有舉足輕重的地 位。隨著應(yīng)用環(huán)境的性能要求越來越高,系統(tǒng)功耗越來越大。多處理器系統(tǒng)能夠滿足 應(yīng)用環(huán)境的性能要求,雖然需要及其復雜的調(diào)度方法。系統(tǒng)功耗增加會導致兩個方面 的問題處理器、內(nèi)存等硬件的散熱問題;系統(tǒng)電池的供給時間問題。因此,設(shè)計多 處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法成為實時系統(tǒng)領(lǐng)域非常的問題,也是難以解決的問 題。
當前主要采用動態(tài)電壓調(diào)節(jié)(Dynamic Voltage Scaling, DVS)技術(shù)降低系統(tǒng)功耗, 即,利用降低處理器頻率延長任務(wù)執(zhí)行時間達到降低系統(tǒng)功耗的目的。該技術(shù)的原理 為處理器頻率與任務(wù)執(zhí)行時間為一次方關(guān)系,而與系統(tǒng)功耗為三次方關(guān)系,因此, 當系統(tǒng)降低1個單位頻率,雖然延長1個時間單位執(zhí)行時間,但是降低三個單位功耗。 大部分算法采用模擬退火算法、遺傳算法等進化算法實現(xiàn)多處理器實時任務(wù)功耗優(yōu) 化。但是這類方法的時間開銷非??捎^,無法很好地實現(xiàn)任務(wù)的實時性。

發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法,通過 實時任務(wù)的松弛時間降低多處理器實時任務(wù)的執(zhí)行功耗。
為了解決上述問題,本發(fā)明的構(gòu)思是
根據(jù)實時任務(wù)的釋放時間、最壞執(zhí)行時間、絕對截止期和任務(wù)之間的約束關(guān)系計
算所述實時任務(wù)的松弛時間,構(gòu)造實時任務(wù)松弛時間約束進一步的,按照深度優(yōu)先策略和遞歸策略分配實時任務(wù)松弛時間約束圖中的實時 任務(wù);
進一步的,如果已分配的實時任務(wù)存在重復,則計算重復任務(wù)執(zhí)行完畢的時間; 如果重復任務(wù)執(zhí)行完畢時間的最小值,加處理器之間的通信時間開銷,仍然不會造成 所述重復任務(wù)的后繼任務(wù)違反時間約束,則保留所述最小值對應(yīng)的重復任務(wù),刪除其 它處理器上的重復任務(wù);進一步的,計算所述處理器上所述實時任務(wù)的最大執(zhí)行可延長時間;最大限度的 延長實時任務(wù)的執(zhí)行時間,降低實時任務(wù)執(zhí)行時的處理器頻率,從而降低系統(tǒng)功耗。 根據(jù)上述的發(fā)明構(gòu)思,本發(fā)明采用下述技術(shù)方案
一種多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法,其特征在于利用實時任務(wù)的松弛時間 延長所述實時任務(wù)執(zhí)行時間降低功耗,具體操作步驟如下
A、 構(gòu)造實時任務(wù)松弛時間約束圖根據(jù)實時任務(wù)的釋放時間、最壞執(zhí)行時間、 絕對截止期和實時任務(wù)之間的約束關(guān)系構(gòu)造實時任務(wù)松弛時間約束圖;所述 實時任務(wù)之間的約束關(guān)系包括實時任務(wù)之間的執(zhí)行順序關(guān)系、實時任務(wù)之 間的數(shù)據(jù)依賴關(guān)系,所述實時任務(wù)之間的執(zhí)行順序關(guān)系包括實時任務(wù)的前繼 關(guān)系、實時任務(wù)的后繼關(guān)系,所述實時任務(wù)之間的數(shù)據(jù)依賴關(guān)系是所述實時 任務(wù)的數(shù)據(jù)輸出是其它實時任務(wù)的數(shù)據(jù)輸入;
B、 按照深度優(yōu)先策略和遞歸策略分配實時任務(wù)松弛時間約束圖中的實時任務(wù);
C、 優(yōu)化步驟B分配的實時任務(wù);
D、 計算所述實時任務(wù)執(zhí)行時處理器頻率,降低系統(tǒng)功耗。 上述步驟A中的構(gòu)造實時任務(wù)松弛時間約束圖的操作步驟如下 Al、計算所述實時任務(wù)松弛時間;
A2、構(gòu)造所述實時任務(wù)松弛時間約束圖中的實時任務(wù)節(jié)點;所述實時任務(wù)節(jié)點用 實時任務(wù)屬性元組表示,所述實時任務(wù)屬性元組包括釋放時間、最壞執(zhí)行 時間、絕對截止期、松弛時間;
A3、構(gòu)造所述實時任務(wù)松弛時間約束圖中的實時任務(wù)的有向連接?。凰鰧崟r任 務(wù)的有向連接弧用實時任務(wù)之間通信屬性元組表示,所述通信元組包括實 時任務(wù)執(zhí)行的前繼實時任務(wù)、實時任務(wù)與其前繼實時任務(wù)通信的時間開銷、 實時任務(wù)執(zhí)行的后繼實時任務(wù)、實時任務(wù)與其后繼實時任務(wù)通信的時間開 銷;
上述步驟Al中的計算實時任務(wù)松弛時間按以下公式進行計算
S歸=min(D膨—max( Z},D證-£, - / 證}
其中,A。w是所述實時任務(wù)的松弛時間;
ZX 射斤棘瞎儘色鵬,卜其月是所述實時任務(wù)的最壞執(zhí)行時間; Ppre是所述實時任務(wù)的前繼實時任務(wù)的集合; Z《是所述實時任務(wù)前繼實時任務(wù)集合上實時任務(wù)最壞執(zhí)行時間之
/e戶
£ 。w是所述實時任務(wù)的最壞執(zhí)行時間; i 。w是所述實時任務(wù)的釋放時間。 上述步驟B中的按照深度優(yōu)先策略和遞歸策略分配所述實時任務(wù)的操作步驟如
Bl、按照深度優(yōu)先策略遍歷所述實時任務(wù)松弛時間約束B2、記錄每一次深度優(yōu)先遍歷時所遍歷的實時任務(wù)、實時任務(wù)最壞執(zhí)行時間之和; B3、判斷步驟B2深度優(yōu)先遍歷的實時任務(wù)中是否存在松弛時間小于處理器之間
通信時間開銷的實時任務(wù),如果是,則轉(zhuǎn)步驟B4,否則,轉(zhuǎn)步驟B5; B4、將步驟B2深度優(yōu)先遍歷的實時任務(wù)分配到一個空閑處理器上;
B5、判斷是否遍歷完所述實時任務(wù)松弛時間約束圖,如果是,則轉(zhuǎn)步驟B6,否則, 轉(zhuǎn)步驟B1;
B6、査找步驟B2記錄的實時任務(wù)最壞執(zhí)行時間之和的最大值,將最大值對應(yīng)的
深度優(yōu)先遍歷的實時任務(wù)分配到一個空閑處理器上; B7、按照執(zhí)行順序遍歷步驟B6所述實時任務(wù);
B8、判斷步驟B6所述實時任務(wù)是否存在前繼實時任務(wù)或者后繼實時任務(wù),如果 存在,則轉(zhuǎn)步驟B9,否則,轉(zhuǎn)步驟B7;
B9、按照遞歸策略遍歷步驟B8所述實時任務(wù);
BIO、判斷步驟B9所述實時任務(wù)是否已遍歷,如果是,則轉(zhuǎn)步驟B8,否則,轉(zhuǎn) 步驟B11;
Bll、判斷步驟B9所述實時任務(wù)是否存在前繼實時任務(wù)或者后繼實時任務(wù),如果 存在,則轉(zhuǎn)步驟B9,否則,轉(zhuǎn)步驟B12;
B12、分配本次遞歸遍歷的實時任務(wù)到一個空閑處理器上;
B13、判斷步驟B6所述實時任務(wù)是否遍歷完畢,如果是,則步驟B執(zhí)行完畢,否則轉(zhuǎn)步驟B7。
上述步驟C中的優(yōu)化已分配的實時任務(wù)的操作步驟如下
Cl、查找權(quán)利要求1所述步驟B分配到處理器上的實時任務(wù)是否存在重復,如果 存在,則轉(zhuǎn)步驟C2,否則,優(yōu)化過程結(jié)束;
C2、計算所述步驟C1所述重復實時任務(wù)在所在處理器上執(zhí)行完畢時間的最小值;
C3、判斷所述步驟C2所述最小值對應(yīng)的實時任務(wù)結(jié)果傳遞給所述步驟Cl所述處
理器是否會造成所述處理器所述重復實時任務(wù)的后繼實時任務(wù)違反其時間
約束,如果違反,則歸并過程結(jié)束,否則,轉(zhuǎn)步驟C4;
C4、刪去步驟Cl所述重復實時任務(wù)。 上述步驟D中的功耗優(yōu)化方法的操作步驟如下 Dl、廣度優(yōu)先遍歷已分配實時任務(wù)的處理器;
D2、判斷分配到步驟Dl所述處理器上的實時任務(wù)是否遍歷完畢,如果是,則轉(zhuǎn) 步驟D3,否則,轉(zhuǎn)步驟D4;
D3、從步驟Dl所述處理器中刪去步驟D2所述處理器;
D4、査找步驟Dl所述處理器上當前遍歷的實時任務(wù)中絕對截止期最小的實時任
D5、計算步驟D4所述絕對截止期最小的實時任務(wù)的最大執(zhí)行可延長時間; D6、根據(jù)步驟D5所述實時任務(wù)的最大執(zhí)行可延長時間計算所述實時任務(wù)執(zhí)行時 處理器的頻率;
D7、如果步驟D1所述處理器上所述實時任務(wù)都已遍歷完畢,則步驟E執(zhí)行完畢, 否則,轉(zhuǎn)步驟D1;
上述步驟D5中的計算所述實時任務(wù)的最大執(zhí)行可延長時間的操作步驟如下 D51、所述實時任務(wù)所在處理器上的松弛時間/Wra&。w由以下公式計算-/WraS 。<formula>formula see original document page 9</formula>
其中,/Wra&。w是根據(jù)所述實時任務(wù)所在處理器所述實時任務(wù)前繼實時任務(wù)
的最壞執(zhí)行時間計算所得的松弛時間; 所述公式所示符號含義與權(quán)利要求2所述公式所示符號含義相同;D52、所述實時任務(wù)所在處理器外的松弛時間/"fmS 。w由以下公式計算
<formula>formula see original document page 10</formula>其中,/W^S"。w是根據(jù)除所述實時任務(wù)所在處理器以外,其它處理器上所述
實時任務(wù)的前繼實時任務(wù)的最壞執(zhí)行時間計算所得的松弛時間;
w是所述實時任務(wù)所在處理器以外的前繼實時任務(wù)執(zhí)行所經(jīng)歷的處理 器之間通信次數(shù);7)>^i^W_y是處理器之間通信的時間開銷;
所述公式中所示其它符號含義與前述公式所示符號含義相同;
D53、重新計算所述實時任務(wù)松弛時間,所述實時任務(wù)松弛時間由以下公式計算
S麵=w/"(/"加51,, /她rS歸〉
其中,5 ^是所述實時任務(wù)松弛時間;
所述公式中所示其它符號含義與前述公式所示符號含義相同;
D54、所述實時任務(wù)的最大執(zhí)行可延長時間由以下公式計算
其中,ifex5^是所述實時任務(wù)的最大執(zhí)行可延長時間;
尸^,是所述實時任務(wù)所在處理器上的后繼路徑; &是路徑^ 上實時任務(wù)j的松弛時間 所述公式中所示其它符號含義與前述公式所示符號含義相同。 上述步驟D6中的延長計算所述實時任務(wù)執(zhí)行時處理器的頻率按以下公式進行計

其中,/"。w是所述實時任務(wù)執(zhí)行時所在處理器的頻率;
7VcCT是所述實時任務(wù)的最壞執(zhí)行時間;
/wc^是所述實時任務(wù)最壞執(zhí)行時間7V^r對應(yīng)的處理器頻率;
;^是所述實時任務(wù)延長執(zhí)行時間后的實際執(zhí)行時間。
本發(fā)明與現(xiàn)有技術(shù)相比較,具有如下顯而易見的突出實質(zhì)性特點和顯著優(yōu)點本 發(fā)明是利用實時任務(wù)的松弛時間延長所述實時任務(wù)執(zhí)行時間降低系統(tǒng)功耗。首先利用實時任務(wù)的釋放時間、最壞執(zhí)行時間、絕對截止期和任務(wù)之間的約束關(guān)系構(gòu)造實時任 務(wù)松弛時間約束圖;其次按照深度優(yōu)先策略和遞歸策略分配實時任務(wù)松弛時間約束圖 中的實時任務(wù);接著通過刪除重復實時任務(wù)優(yōu)化巳分配的實時任務(wù);最后按照廣度優(yōu) 先策略計算實時任務(wù)的最大執(zhí)行可延長執(zhí)行時間,并通過延長實時任務(wù)的執(zhí)行吋間到
最大執(zhí)行可延長時間來降低系統(tǒng)功耗。


圖1是本發(fā)明的總體處理流程圖2是本發(fā)明中構(gòu)造實時任務(wù)松弛時間約束圖的流程圖3是本發(fā)明中按照深度優(yōu)先策略和遞歸策略分配所述實時任務(wù)的流程圖4是本發(fā)明中優(yōu)化已分配實時任務(wù)的流程圖5是本發(fā)明中功耗優(yōu)化方法的流程圖6是本發(fā)明中計算實時任務(wù)的最大執(zhí)行可延長時間的流程圖。
具體實施例方式
本發(fā)明的一個優(yōu)選實施例結(jié)合附圖詳述如下
本實施例所述方案的應(yīng)用環(huán)境是支持動態(tài)電壓調(diào)節(jié)技術(shù)的多處理器實時系統(tǒng),本 實施例不限定所述技術(shù)方案應(yīng)用環(huán)境中多處理器的組織形式和實時系統(tǒng)的設(shè)計方式。
下面結(jié)合說明書附圖和具體實施方式
對本發(fā)明作進一步詳細的說明。
參照圖1,示出了本多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法的總體處理流程圖。 步驟IOI、構(gòu)造實時任務(wù)松弛時間約束圖。
實時任務(wù)松弛時間約束圖中的節(jié)點用實時任務(wù)的屬性元組表示,圖中的有向連接 弧用實時任務(wù)之間通信元組表示。
步驟102、按照深度優(yōu)先策略和遞歸策略分配所述實時任務(wù)。
步驟102執(zhí)行后,實時任務(wù)松弛時間約束圖中的實時任務(wù)都已分配到各個處理器上。
步驟103、優(yōu)化己分配的實時任務(wù)。
步驟103的目的是盡可能刪除重復分配的實時任務(wù)。
步驟104、計算實時任務(wù)執(zhí)行時處理器頻率。
步驟104通過延長實時任務(wù)的執(zhí)行時間到最大執(zhí)行可延長時間來降低系統(tǒng)功耗。參照圖2,示出了本實施例中構(gòu)造實時任務(wù)松弛時間約束圖的流程圖。 步驟201、計算實時任務(wù)的松弛時間。 步驟201所述的實時任務(wù)的松弛時間由以下公式計算
S ow = min(D續(xù)—max{ Z } , Z)膠-- }
其中,&。 1是所述實時任務(wù)的松弛時間;
D 。w是所述實時任務(wù)的絕對截止期; 是所述實時任務(wù)的最壞執(zhí)行時間; 尸^是所述實時任務(wù)的前繼實時任務(wù)的集合;
Z五,是所述實時任務(wù)前繼實時任務(wù)集合上實時任務(wù)最壞執(zhí)行時間之
和;
£,7。w是所述實時任務(wù)的最壞執(zhí)行時間;
仏。w是所述實時任務(wù)的釋放時間。
步驟202、構(gòu)造實時任務(wù)節(jié)點。
實時任務(wù)節(jié)點由實時任務(wù)的釋放時間、最壞執(zhí)行時間、絕對截止期、松弛時間構(gòu) 成的元組表示。
步驟203、構(gòu)造實時任務(wù)的有向連接弧。
實時任務(wù)的有向連接弧由實時任務(wù)執(zhí)行的前繼實時任務(wù)、實時任務(wù)與其前繼實時 任務(wù)通信的時間開銷、實時任務(wù)執(zhí)行的后繼實時任務(wù)、實時任務(wù)與其后繼實時任務(wù)通 信的時間開銷構(gòu)成的元組表示。
參照圖3,示出了本實施例中按照深度優(yōu)先策略和遞歸策略分配所述實時任務(wù)的 流程圖。
步驟301、按照深度優(yōu)先策略遍歷所述實時任務(wù)松弛時間約束圖。
步驟302、記錄每一次深度優(yōu)先遍歷時所遍歷的實時任務(wù)、實時任務(wù)最壞執(zhí)行時 間之和;
每一次深度遍歷時記錄的實時任務(wù)是在步驟304、步驟306中使用。計算實時任 務(wù)最壞執(zhí)行時間之和是為了求出實時任務(wù)松弛時間約束圖的最長路徑。步驟303、判斷步驟302深度優(yōu)先遍歷的實時任務(wù)中是否存在松弛時間小于處理 器之間通信時間開銷的實時任務(wù),如果是,則轉(zhuǎn)步驟304;否則,轉(zhuǎn)步驟305。
判斷實時任務(wù)的松弛時間是否小于處理器之間通信時間開銷,是為了判斷當前遍 歷的實時任務(wù)是否能夠分配在兩個處理器上執(zhí)行。
步驟304、將步驟302深度優(yōu)先遍歷的實時任務(wù)分配到一個空閑處理器上。
如果實時任務(wù)的松弛時間小于處理器之間通信時間開銷,那么將當前遍歷的實時 任務(wù)分配到兩個或者兩個以上的處理器上執(zhí)行,必定造成當前遍歷的實時任務(wù)中某 些實時任務(wù)違反其時間約束。因此,步驟304將此類型的實時任務(wù)分配到一個處理 器上執(zhí)行。
步驟305、判斷是否遍歷完所述實時任務(wù)松弛時間約束圖,如果是,則轉(zhuǎn)步驟306, 否則,轉(zhuǎn)步驟301。
步驟306、査找步驟302記錄的實時任務(wù)最壞執(zhí)行時間之和的最大值,將最大值 對應(yīng)的實時任務(wù)分配到一個空閑處理器上。
將實時任務(wù)松弛時間約束圖中最長路徑上的實時任務(wù)分配到一個處理器上執(zhí)行。
步驟307、按照執(zhí)行順序遍歷步驟306所述實時任務(wù)。
按照實時任務(wù)的執(zhí)行順序遍歷最長路徑上的實時任務(wù)。
步驟308、判斷步驟306所述實時任務(wù)是否存在前繼實時任務(wù)或者后繼實吋任務(wù), 如果存在,則轉(zhuǎn)步驟309,否則,轉(zhuǎn)步驟307。
判斷最長路徑上的實時任務(wù)是否存在前繼和后繼,如果存在前繼或者后繼,那么 轉(zhuǎn)到步驟309遞歸遍歷當前實時任務(wù)的所有前繼和后繼。采用遞歸遍歷當前實時任務(wù) 的前繼和后繼的目的是,保證存在數(shù)據(jù)通信的實時任務(wù)盡可能分配到同一個處理器上 執(zhí)行。
步驟309、按照遞歸策略遍歷步驟308所述實時任務(wù)。
步驟310、判斷步驟309所述實時任務(wù)是否已遍歷,如果是,則轉(zhuǎn)步驟308,否則, 轉(zhuǎn)步驟311。
步驟311、判斷步驟309所述實時任務(wù)是否存在前繼實時任務(wù)或者后繼實時任務(wù), 如果存在,則轉(zhuǎn)步驟309,否則,轉(zhuǎn)步驟312。
步驟312、分配本次遞歸遍歷的實時任務(wù)到一個空閑處理器上。步驟313、判斷步驟306所述實時任務(wù)是否遍歷完畢,如果是,則步驟B執(zhí)行完 畢,否則轉(zhuǎn)步驟307。
如果步驟306所述實時任務(wù)遍歷完畢,那么整個實時任務(wù)松弛時間約束圖中的實時 任務(wù)全部分配到處理器上執(zhí)行。
參照圖4,示出了本實施例中優(yōu)化已分配實時任務(wù)的流程圖。
步驟401、己分配到處理器上的實時任務(wù)是否存在重復,如果存在,則轉(zhuǎn)步驟402, 否則,優(yōu)化過程結(jié)束。
通過判斷實時任務(wù)是否存在重復,保證分配到處理器上的實時任務(wù)盡可能只執(zhí)行一次。
步驟402、計算所述步驟401所述重復實時任務(wù)在所在處理器上執(zhí)行完畢時間的 最小值。
步驟403、判斷所述步驟402所述最小值對應(yīng)的實時任務(wù)結(jié)果傳遞給所述步驟401 所述處理器是否會造成所述處理器所述重復實時任務(wù)的后繼實時任務(wù)違反其時間約 束,如果違反其時間約束,則歸并過程結(jié)束,否則,轉(zhuǎn)步驟404。
如果存在重復的實時任務(wù)執(zhí)行的結(jié)果傳遞到其后繼實時任務(wù),仍然能夠保證其后 繼實時任務(wù)滿足時間約束,那么可以刪除其后繼實時任務(wù)所在處理器上的重復實時任 務(wù)。如果不能滿足其后繼實時任務(wù)的時間約束,那么即使存在重復實時任務(wù),也必須 保留重復實時任務(wù)。
步驟404、刪去所述重復實時任務(wù)。
參照圖5,示出了本實施例中功耗優(yōu)化方法的流程圖。 步驟501、廣度優(yōu)先遍歷己分配實時任務(wù)的處理器。
從已分配實時任務(wù)的處理器中,査找當前遍歷到的實時任務(wù)的絕對截止期的最小 值。首先計算絕對截止期最小的實時任務(wù)的最大執(zhí)行可延長時間是為了防止造成截止 期小的實時任務(wù)因其它實時任務(wù)延長其執(zhí)行時間而違反其時間約束。
步驟502、判斷當前處理器上的實時任務(wù)是否遍歷完畢,如果是,則轉(zhuǎn)步驟D503, 否則,轉(zhuǎn)步驟504。判斷但前處理器上是否所有的實時任務(wù)的最大執(zhí)行可延長時間都已計算完畢。如 果處理器上所有實時任務(wù)的最大執(zhí)行可延長時間都已計算完畢,那么將此處理器從待 遍歷的處理器中刪除。
步驟503、刪去當前遍歷的處理器。
步驟504、查找當前遍歷的實時任務(wù)中絕對截止期最小的實時任務(wù)。 步驟505、計算絕對截止期最小的實時任務(wù)的最大執(zhí)行可延長時間。 步驟506、計算所述實時任務(wù)執(zhí)行時處理器的頻率。
步驟507、如果處理器上所述實時任務(wù)都已遍歷完畢,則執(zhí)行完畢,否則,轉(zhuǎn)步 驟501。
參照圖6,示出了本實施例中計算實時任務(wù)的最大執(zhí)行可延長時間的流程圖。 步驟601 、計算實時任務(wù)所在處理器上的松弛時間/Wra&。w
當前實時任務(wù)與其所在處理器上的前繼實時任務(wù)的通信沒有時間開銷,所以單獨 計算當前實時任務(wù)在所在處理器上的內(nèi)部松弛時間。
步驟602、計算實時任務(wù)所在處理器外的松弛時間/^m^。w。
當前實時任務(wù)與其所在處理器以外的處理器上的前繼實時任務(wù)的通信存在時間開 銷,所以單獨計算當前實時任務(wù)所在處理器上的外部松弛時間。
步驟603、計算所述實時任務(wù)松弛時間5;。w。
當前實時任務(wù)的松弛時間等于/Wra&。w和/"fmS"。w的最小值。
步驟604、計算實時任務(wù)的最大執(zhí)行可延長時間Max&。w。 以上對本多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法,進行了詳細的介紹。本文結(jié)合說 明書附圖和具體實施例進行闡述只是用于幫助理解本發(fā)明的方法和核心思想;同時, 對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的方法和思想,在具體實施方式
和應(yīng)用范圍 上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
1、一種多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法,其特征在于利用實時任務(wù)的松弛時間延長所述實時任務(wù)執(zhí)行時間降低功耗,具體操作步驟如下A、根據(jù)實時任務(wù)的釋放時間、最壞執(zhí)行時間、絕對截止期和實時任務(wù)之間的約束關(guān)系構(gòu)造實時任務(wù)松弛時間約束圖;所述實時任務(wù)之間的約束關(guān)系包括實時任務(wù)之間的執(zhí)行順序關(guān)系、實時任務(wù)之間的數(shù)據(jù)依賴關(guān)系,所述實時任務(wù)之間的執(zhí)行順序關(guān)系包括實時任務(wù)的前繼關(guān)系、實時任務(wù)的后繼關(guān)系,所述實時任務(wù)之間的數(shù)據(jù)依賴關(guān)系是所述實時任務(wù)的數(shù)據(jù)輸出是其它實時任務(wù)的數(shù)據(jù)輸入;B、按照深度優(yōu)先策略和遞歸策略分配實時任務(wù)松弛時間約束圖中的實時任務(wù);C、優(yōu)化步驟B分配的實時任務(wù);D、計算所述實時任務(wù)執(zhí)行時處理器頻率,降低系統(tǒng)功耗。
2、 根據(jù)權(quán)利要求1所述的多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法,其特征在于所述步驟A中的構(gòu)造實時任務(wù)松弛時間約束圖的操作步驟如下 Al、計算所述實時任務(wù)松弛時間;A2、構(gòu)造所述實時任務(wù)松弛時間約束圖中的實時任務(wù)節(jié)點;所述實時任務(wù)節(jié)點用實時任 務(wù)屬性元組表示,所述實時任務(wù)屬性元組包括釋放時間、最壞執(zhí)行時間、絕對截 止期、松弛時間;A3、構(gòu)造所述實時任務(wù)松弛時間約束圖中的實時任務(wù)的有向連接??;所述實時任務(wù)的有 向連接弧用實時任務(wù)之間通信屬性元組表示,所述通信元組包括實時任務(wù)執(zhí)行的 前繼實時任務(wù)、實時任務(wù)與其前繼實時任務(wù)通信的時間開銷、實時任務(wù)執(zhí)行的后繼 實時任務(wù)、實時任務(wù)與其后繼實時任務(wù)通信的時間開銷。
3、 根據(jù)權(quán)利要求2所述的多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法,其特征在于所述步驟A1中 的計算實時任務(wù)松弛時間按以下公式進行計算<formula>formula see original document page 2</formula>其中,S"。w是所述實時任務(wù)的松弛時間;A^是所述實時任務(wù)的絕對截止期;&是所述實時任務(wù)的最壞執(zhí)行時間;iVe是所述實時任務(wù)的前繼實時任務(wù)的集合;Z五,是所述實時任務(wù)前繼實時任務(wù)集合iVe上實時任務(wù)最壞執(zhí)行時間之和;/e尸£ 。w是所述實時任務(wù)的最壞執(zhí)行時間; i 。w是所述實時任務(wù)的釋放時間。
4、 根據(jù)權(quán)利要求1所述的多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法,其特征在于所述步驟B中 的按照深度優(yōu)先策略和遞歸策略分配所述實時任務(wù)的操作步驟如下Bl、按照深度優(yōu)先策略遍歷所述實時任務(wù)松弛時間約束圖;B2、記錄每一次深度優(yōu)先遍歷時所遍歷的實時任務(wù)、實時任務(wù)最壞執(zhí)行時間之和;B3、判斷步驟B2深度優(yōu)先遍歷的實時任務(wù)中是否存在松弛時間小于處理器之間通信時間 開銷的實時任務(wù),如果是,則轉(zhuǎn)步驟B4,否則,轉(zhuǎn)步驟B5;B4、將步驟B2深度優(yōu)先遍歷的實時任務(wù)分配到一個空閑處理器上;B5、判斷是否遍歷完所述實時任務(wù)松弛時間約束圖,如果是,則轉(zhuǎn)步驟B6,否則,轉(zhuǎn)步驟B1;B6、査找步驟B2記錄的實時任務(wù)最壞執(zhí)行時間之和的最大值,將最大值對應(yīng)的深度優(yōu)先遍歷的實時任務(wù)分配到一個空閑處理器上; B7、按照執(zhí)行順序遍歷步驟B6所述實時任務(wù);B8、判斷步驟B6所述實時任務(wù)是否存在前繼實時任務(wù)或者后繼實時任務(wù),如果存在,則 轉(zhuǎn)步驟B9,否則,轉(zhuǎn)步驟B7;B9、按照遞歸策略遍歷步驟B8所述實時任務(wù);BIO、判斷步驟B9所述實時任務(wù)是否已遍歷,如果是,則轉(zhuǎn)步驟B8,否則,轉(zhuǎn)步驟B11;Bll、判斷步驟B9所述實時任務(wù)是否存在前繼實時任務(wù)或者后繼實時任務(wù),如果存在, 則轉(zhuǎn)步驟B9,否則,轉(zhuǎn)步驟B12;B12、分配本次遞歸遍歷的實時任務(wù)到一個空閑處理器上;B13、判斷步驟B6所述實時任務(wù)是否遍歷完畢,如果是,則步驟B執(zhí)行完畢,否則轉(zhuǎn)步 驟B7。
5、 根據(jù)權(quán)利要求1所述的多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法,其特征在于所述步驟C中 的優(yōu)化已分配的實時任務(wù)的操作步驟如下Cl、査找權(quán)利要求1所述步驟B分配到處理器上的實時任務(wù)是否存在重復,如果存在,則轉(zhuǎn)步驟C2,否則,優(yōu)化過程結(jié)束; C2、計算所述步驟C1所述重復實時任務(wù)在所在處理器上執(zhí)行完畢時間的最小值; C3、判斷所述步驟C2所述最小值對應(yīng)的實時任務(wù)結(jié)果傳遞給所述步驟Cl所述處理器是否會造成所述處理器所述重復實時任務(wù)的后繼實時任務(wù)違反其時間約束,如果違反,則歸并過程結(jié)束,否則,轉(zhuǎn)步驟C4;C4、刪去步驟C1所述重復實時任務(wù)。
6、 根據(jù)權(quán)利要求1所述的多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法,其特征在于所述步驟D中 的功耗優(yōu)化方法的操作步驟如下Dl、廣度優(yōu)先遍歷己分配實時任務(wù)的處理器;D2、判斷分配到步驟D1所述處理器上的實時任務(wù)是否遍歷完畢,如果是,則轉(zhuǎn)步驟D3,否則,轉(zhuǎn)步驟D4; D3、從步驟Dl所述處理器中刪去步驟D2所述處理器;D4、查找步驟D1所述處理器上當前遍歷的實時任務(wù)中絕對截止期最小的實時任務(wù);D5、計算步驟D4所述絕對截止期最小的實時任務(wù)的最大執(zhí)行可延長時間;D6、根據(jù)步驟D5所述實時任務(wù)的最大執(zhí)行可延長時間計算所述實時任務(wù)執(zhí)行時處理器的 頻率;D7、如果步驟D1所述處理器上所述實時任務(wù)都已遍歷完畢,則步驟E執(zhí)行完畢,否則, 轉(zhuǎn)步驟D1。
7、 根據(jù)權(quán)利要求6所述的多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法,其特征在于所述步驟D5中 的計算所述實時任務(wù)的最大執(zhí)行可延長時間的操作步驟如下-D51、所述實時任務(wù)所在處理器上的松弛時間/WmS 。w由以下公式計算 /"fraS, = min(Z)證-max{ J] }, D匿-£證—}其中,/"^^^是根據(jù)所述實時任務(wù)所在處理器所述實時任務(wù)前繼實時任務(wù)的最壞執(zhí)行時間計算所得的松弛時間;所述公式所示符號含義與權(quán)利要求2所述公式所示符號含義相同; D52、所述實時任務(wù)所在處理器外的松弛時間/""eS 。w由以下公式計算<formula>formula see original document page 4</formula>其中,/ &" ^是根據(jù)除所述實時任務(wù)所在處理器以外,其它處理器上所述實時任務(wù) 的前繼實時任務(wù)的最壞執(zhí)行時間計算所得的松弛時間;n是所述實時任務(wù)所在處理器以外的前繼實時任務(wù)執(zhí)行所經(jīng)歷的處理器之間 通信次數(shù);77mei^a(y是處理器之間通信的時間開銷; 所述公式中所示其它符號含義與前述公式所示符號含義相同; D53、重新計算所述實時任務(wù)松弛時間,所述實時任務(wù)松弛時間由以下公式計算S腳=冊'"(/"fraS濯,/"fenS腳〉其中,S"。w是所述實時任務(wù)松弛時間;所述公式中所示其它符號含義與前述公式所示符號含義相同; D54、所述實時任務(wù)的最大執(zhí)行可延長時間由以下公式計算-其中,Jfexs;。.是所述實時任務(wù)的最大執(zhí)行可延長時間;尸,是所述實時任務(wù)所在處理器上的后繼路徑;S是路徑iVe上實時任務(wù)j的松弛時間 所述公式中所示其它符號含義與前述公式所示符號含義相同。
8、根據(jù)權(quán)利要求6所述的多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法,其特征在于所述步驟D6中的延長計算所述實時任務(wù)執(zhí)行時處理器的頻率按以下公式進行計算其中,/"。w是所述實時任務(wù)執(zhí)行時所在處理器的頻率; 7Va^是所述實時任務(wù)的最壞執(zhí)行時間;/CT是所述實時任務(wù)最壞執(zhí)行時間7W^r對應(yīng)的處理器頻率;7;。w是所述實時任務(wù)延長執(zhí)行時間后的實際執(zhí)行時間。
全文摘要
本發(fā)明公開了一種多處理器實時任務(wù)執(zhí)行功耗優(yōu)化方法。它是利用實時任務(wù)的松弛時間延長所述實時任務(wù)執(zhí)行時間降低系統(tǒng)功耗。首先利用實時任務(wù)的釋放時間、最壞執(zhí)行時間、絕對截止期和任務(wù)之間的約束關(guān)系構(gòu)造實時任務(wù)松弛時間約束圖;其次按照深度優(yōu)先策略和遞歸策略分配實時任務(wù)松弛時間約束圖中的實時任務(wù);接著通過刪除重復實時任務(wù)優(yōu)化已分配的實時任務(wù);最后按照廣度優(yōu)先策略計算實時任務(wù)的最大執(zhí)行可延長執(zhí)行時間,并通過延長實時任務(wù)的執(zhí)行時間到最大執(zhí)行可延長時間來降低系統(tǒng)功耗。
文檔編號G06F9/50GK101303657SQ20081003891
公開日2008年11月12日 申請日期2008年6月13日 優(yōu)先權(quán)日2008年6月13日
發(fā)明者悅 吳, 唐立三, 楊洪斌 申請人:上海大學
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
丰县| 罗平县| 香河县| 绍兴市| 四会市| 健康| 蕲春县| 肃宁县| 通城县| 正镶白旗| 平邑县| 汉阴县| 文水县| 揭东县| 慈溪市| 临清市| 潞城市| 永昌县| 渑池县| 石柱| 乌海市| 隆安县| 广饶县| 锦屏县| 巧家县| 治县。| 堆龙德庆县| 乌什县| 连云港市| 广东省| 江油市| 滦平县| 仲巴县| 宣恩县| 静安区| 明溪县| 长春市| 武乡县| 佛山市| 遂溪县| 芮城县|