亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種異構(gòu)cmp的靜態(tài)任務(wù)調(diào)度方法

文檔序號:6546650閱讀:176來源:國知局
一種異構(gòu)cmp的靜態(tài)任務(wù)調(diào)度方法
【專利摘要】本發(fā)明涉及一種異構(gòu)CMP的靜態(tài)任務(wù)調(diào)度方法,其特征在于:步驟1:利用線性聚簇方法,將DAG圖中所有符合任務(wù)歸并條件的任務(wù)歸并到其父任務(wù);步驟2:按照自頂向下法將DAG圖分層,層值越小,任務(wù)優(yōu)先級越高;同層任務(wù),關(guān)鍵任務(wù)具有高優(yōu)先級,其他非關(guān)鍵任務(wù)按照任務(wù)優(yōu)先級權(quán)值非遞增順序加入調(diào)度列表;步驟3:從調(diào)度列表取首任務(wù)進行分配,逐層對任務(wù)映射圖中已復(fù)制的任務(wù)進行冗余檢測,刪除任務(wù)映射圖中的冗余任務(wù);對刪除冗余任務(wù)后的任務(wù)映射圖進行調(diào)整,重新計算后續(xù)每個任務(wù)的最早執(zhí)行完成時間。
【專利說明】一種異構(gòu)CMP的靜態(tài)任務(wù)調(diào)度方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種異構(gòu)CMP的靜態(tài)任務(wù)調(diào)度方法。
【背景技術(shù)】
[0002]隨著計算機系統(tǒng)應(yīng)用在人們生活中的不斷深入,計算機系統(tǒng)的設(shè)計也進入了一個嶄新的時代。以往處理器性能的提升往往依靠提升其主頻或增加指令級并行度來完成。然而隨著芯片制造工藝慢慢趨向技術(shù)極限,在計算機體系結(jié)構(gòu)方面,已無法通過提高處理器主頻來提升系統(tǒng)性能。芯片已經(jīng)無法承受大量晶體管帶來的散熱量的增大,主頻的提升也導(dǎo)致了芯片能耗的增加??商嵘噶罴壊⑿行缘某瑯肆考夹g(shù)也遇到了瓶頸,迫切要求構(gòu)建一種高性能的處理器系統(tǒng)。在此背景下,具備低復(fù)雜度高并行度的單芯片多處理器(ChipMult1-Processor, CMP)應(yīng)運而生,并將成為處理器發(fā)展的主要趨勢。
[0003]在計算機系統(tǒng)中,CMP為最大化程序的并行執(zhí)行提供了良好的硬件平臺,系統(tǒng)性能的提升不僅與硬件平臺有關(guān),同時也離不開硬件平臺上的優(yōu)化軟件設(shè)計,只有兩者充分結(jié)合,才能充分發(fā)揮硬件平臺自身及軟件設(shè)計的優(yōu)良性能。在CMP的軟件設(shè)計中,任務(wù)調(diào)度算法的好壞直接影響CMP高性能的優(yōu)勢能否得到充分發(fā)揮,如果任務(wù)調(diào)度算法設(shè)計不當(dāng),會抹殺掉CMP高并行性的優(yōu)勢,甚至比串行執(zhí)行還差,降低了 CMP的整體性能。任務(wù)調(diào)度問題成為了 CMP的研究重點,任務(wù)調(diào)度算法的設(shè)計顯得尤為重要。在異構(gòu)CMP中,同一任務(wù)在不同處理器內(nèi)核上的計算開銷不同,任務(wù)調(diào)度算法的實質(zhì)就是在滿足任務(wù)間優(yōu)先級約束的前提下,盡量將所有任務(wù)分配到運行效率最高的處理器內(nèi)核上,最終使得任務(wù)總完成時間最短,充分發(fā)揮CMP的性能優(yōu)勢。
[0004]近年來,異構(gòu)CMP中任務(wù)調(diào)度算法作為計算機領(lǐng)域的研究熱點,國內(nèi)外專家和學(xué)者都紛紛致力于任務(wù)調(diào)度算法的研究,旨在通過調(diào)整任務(wù)執(zhí)行順序、降低任務(wù)間的通信開銷,最終使得任務(wù)圖的調(diào)度長度最短。但是,現(xiàn)有異構(gòu)CMP中任務(wù)調(diào)度算法仍不夠理想,存在任務(wù)優(yōu)先級選取過于單一、處理器內(nèi)核上空閑時間段過多、冗余任務(wù)處理不及時等問題,嚴重影響了異構(gòu)CMP的性能。

【發(fā)明內(nèi)容】

[0005]本發(fā)明目的在于提供一種異構(gòu)CMP的靜態(tài)任務(wù)調(diào)度方法,有效提高異構(gòu)CMP的性倉泛。
[0006]實現(xiàn)本發(fā)明目的技術(shù)方案:
[0007]一種異構(gòu)CMP的靜態(tài)任務(wù)調(diào)度方法,其特征在于:
[0008]步驟1:利用線性聚簇方法,將DAG圖中所有符合任務(wù)歸并條件的任務(wù)歸并到其父任務(wù);
[0009]步驟2:按照自頂向下法將DAG圖分層,層值越小,任務(wù)優(yōu)先級越高;同層任務(wù),關(guān)鍵任務(wù)具有高優(yōu)先級,其他非關(guān)鍵任務(wù)按照任務(wù)優(yōu)先級權(quán)值非遞增順序加入調(diào)度列表;
[0010]步驟3:從調(diào)度列表取首任務(wù)進行分配,逐層對任務(wù)映射圖中已復(fù)制的任務(wù)進行冗余檢測,刪除任務(wù)映射圖中的冗余任務(wù);對刪除冗余任務(wù)后的任務(wù)映射圖進行調(diào)整,重新計算后續(xù)每個任務(wù)的最早執(zhí)行完成時間。
[0011]步驟I中,任務(wù)歸并必須同時滿足兩個條件,
[0012]當(dāng)前任務(wù)有唯一父任務(wù)并且是唯一父任務(wù)的唯一子任務(wù);
[0013]當(dāng)前任務(wù)與其唯一父任務(wù)的通信開銷大于等于其在不同處理器內(nèi)核上的最大計算開銷,即C(Vi, Vj)≥max{W(Vj, pq)},則將當(dāng)前任務(wù)歸并到其唯一父任務(wù)上,在后續(xù)的任務(wù)分配時將其統(tǒng)一分配,分配到同一處理器內(nèi)核上執(zhí)行;
[0014]式中,Vj表示當(dāng)前任務(wù),Vi表示唯一父任務(wù),i, j e {1,2,…,η}, η為DAG圖中任務(wù)總個數(shù),Vi代表DAG圖中第i個任務(wù),W表示計算開銷,max {W(Vj, pq)}表示當(dāng)前任務(wù)在不同處理器內(nèi)核上的最大計算開銷,C(Vi, Vj)為任務(wù)Vi與任務(wù) ' 的通信開銷,pq為第q個處理器內(nèi)核,qe {1,2,...,πι},πι為處理器內(nèi)核數(shù)目;W(Vj,P(1)為任務(wù)Vj在處理器內(nèi)核P,上的計算開銷。
[0015]步驟2中,構(gòu)造調(diào)度列表時,任務(wù)Vj層值L (Vj)為
【權(quán)利要求】
1.一種異構(gòu)CMP的靜態(tài)任務(wù)調(diào)度方法,其特征在于: 步驟1:利用線性聚簇方法,將DAG圖中所有符合任務(wù)歸并條件的任務(wù)歸并到其父任務(wù); 步驟2:按照自頂向下法將DAG圖分層,層值越小,任務(wù)優(yōu)先級越高;同層任務(wù),關(guān)鍵任務(wù)具有高優(yōu)先級,其他非關(guān)鍵任務(wù)按照任務(wù)優(yōu)先級權(quán)值非遞增順序加入調(diào)度列表; 步驟3:從調(diào)度列表取首任務(wù)進行分配,逐層對任務(wù)映射圖中已復(fù)制的任務(wù)進行冗余檢測,刪除任務(wù)映射圖中的冗余任務(wù);對刪除冗余任務(wù)后的任務(wù)映射圖進行調(diào)整,重新計算后續(xù)每個任務(wù)的最早執(zhí)行完成時間。
2.根據(jù)權(quán)利要求1所述的異構(gòu)CMP的靜態(tài)任務(wù)調(diào)度方法,其特征在于:步驟I中,任務(wù)歸并必須同時滿足兩個條件, 當(dāng)前任務(wù)有唯一父任務(wù)并且是唯一父任務(wù)的唯一子任務(wù); 當(dāng)前任務(wù)與其唯一父任務(wù)的通信開銷大于等于其在不同處理器內(nèi)核上的最大計算開銷,即C(Vi, Vj)≥max{W(Vj, pq)},則將當(dāng)前任務(wù)歸并到其唯一父任務(wù)上,在后續(xù)的任務(wù)分配時將其統(tǒng)一分配,分配到同一處理器內(nèi)核上執(zhí)行; 式中,Vj表示當(dāng)前任務(wù),Vi表示唯一父任務(wù),i, j e {I, 2,…,η}, η為DAG圖中任務(wù)總個數(shù),Vi代表DAG圖中第i個任務(wù),W表示計算開銷,max{W(Vj, pq)}表示當(dāng)前任務(wù)在不同處理器內(nèi)核上的最大計算開銷,C (Vi, Vj)為任務(wù)Vi與任務(wù)Vj的通信開銷,pq為第q個處理器內(nèi)核,qe {1,2,…,m},m為處理器內(nèi)核數(shù)目!W(VpPq)為任務(wù)Vj在處理器內(nèi)核pq上的計算開銷。
3.根據(jù)權(quán)利要求2所述的異構(gòu)CMP的靜態(tài)任務(wù)調(diào)度方法,其特征在于:步驟2中,構(gòu)造調(diào)度列表時,任務(wù) ' 層值L (Vj)為
L(v.\= 其中,Gentry為入口任務(wù),Ρ Π? (Vj)表示任務(wù)Vj的所有父任務(wù)集合;任務(wù)Vi的優(yōu)先級權(quán)值 pri (Vi)為
Tankll(Vi) = Wi + max (ranku(v j) + C(V^Vy))
Vf^child(Vi)'
Pri(Vi) = rankJvJ+CGcp’i, Vi) —力為任務(wù)Vi在所有不同處理器內(nèi)核上計算開銷的平均值;child(Vi)表示任務(wù)Vi的所有子任務(wù)集合^anku(Vi)為任務(wù)Vi的向上排序值,Vcp i為任務(wù)Vi的關(guān)鍵父任務(wù)。
4.根據(jù)權(quán)利要求3所述的異構(gòu)CMP的靜態(tài)任務(wù)調(diào)度方法,其特征在于:步驟3中,具體包括以下步驟, 步驟3.1:初始化L為O,檢測調(diào)度列表SL中L層的任務(wù)是否分配完成,若是,轉(zhuǎn)到步驟3.9,否則,轉(zhuǎn)到步驟3.2 ; 步驟3.2:選擇調(diào)度列表SL首任務(wù)記為Vi,遍歷所有處理器內(nèi)核,記錄其最早執(zhí)行完成時間;同時檢測處理器內(nèi)核上是否有空閑時間段,若有,轉(zhuǎn)到步驟3.3;否則,轉(zhuǎn)到步驟3.5 ; 步驟3.3:取當(dāng)前空閑時間段,判斷vi是否滿足區(qū)間插入條件,若是,記錄將其插入當(dāng)前空閑時間段后Vi的最早執(zhí)行完成時間,轉(zhuǎn)到步驟3.5 ;否則,轉(zhuǎn)到步驟3.4 ;步驟3.4:檢測當(dāng)前空閑時間段是否滿足關(guān)鍵父任務(wù)復(fù)制條件,若是,記錄復(fù)制其關(guān)鍵父任務(wù)Vcfti后Vi的最早執(zhí)行完成時間,轉(zhuǎn)到步驟3.5 ;否則,轉(zhuǎn)到步驟3.5 ; 步驟3.5:取使Vi獲得最小最早執(zhí)行完成時間的處理器內(nèi)核Pp轉(zhuǎn)到步驟3.6 ; 步驟3.6:判斷該最小最早執(zhí)行完成時間是否由關(guān)鍵父任務(wù)復(fù)制所得,若是,將其關(guān)鍵父任務(wù)Vciu復(fù)制到P」的空閑時間段后,將Vi分配到P」上執(zhí)行,從調(diào)度列表SL刪除Vi,同時將加入冗余任務(wù)列表RTL,其中ο表示Vi被復(fù)制的關(guān)鍵父任務(wù)V。,k為關(guān)鍵父任務(wù)V。分配的處理器內(nèi)核編號,轉(zhuǎn)到步驟3.1 ;否則,轉(zhuǎn)到步驟3.7 ; 步驟3.7:判斷該最小最早執(zhí)行完成時間是否為區(qū)間插入所得,若是,將Vi插入到Pj的空閑時間段上,轉(zhuǎn)到步驟3.8 ;否則,直接將Vi分配到Pj上執(zhí)行,轉(zhuǎn)到步驟3.8 ; 步驟3.8:從調(diào)度列表SL中刪除Vi,轉(zhuǎn)到步驟3.1 ; 步驟3.9:檢測冗余任務(wù)列表RTL中是否存在層值為L-1的任務(wù),若是,轉(zhuǎn)到步驟3.10 ;否則,轉(zhuǎn)到步驟3.12 ; 步驟3.10:選擇冗余任務(wù)列表RTL中的首任務(wù)記為'k,進行冗余檢測,檢測若將V。從任務(wù)映射圖刪除,是否會推遲其后續(xù)任務(wù)的執(zhí)行,若是,從冗余任務(wù)列表RTL中刪除V。,,,轉(zhuǎn)到步驟3.9 ;否則,從冗余任務(wù)列表RTL中刪除'k,從任務(wù)映射圖中刪除V。,轉(zhuǎn)到步驟.3.11 ; 步驟3.11:檢測V。后續(xù)任務(wù)的最早執(zhí)行開始時間是否減小,若是,提前后續(xù)任務(wù)的最早執(zhí)行開始時間,修改任務(wù)映射圖,轉(zhuǎn)到步驟3.9 ;否則,轉(zhuǎn)到步驟3.9 ; 步驟3.12:如果L小于最大層值max(L),令L = L+1,轉(zhuǎn)到步驟3.1 ;否則,結(jié)束任務(wù)分配及冗余任務(wù)處理。
【文檔編號】G06F9/48GK103984595SQ201410206155
【公開日】2014年8月13日 申請日期:2014年5月16日 優(yōu)先權(quán)日:2014年5月16日
【發(fā)明者】李靜梅, 孫冬微, 韓啟龍 申請人:哈爾濱工程大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1