欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于反向工作流調(diào)度的子期限獲取優(yōu)化方法與流程

文檔序號:12825820閱讀:343來源:國知局
基于反向工作流調(diào)度的子期限獲取優(yōu)化方法與流程

本發(fā)明屬于網(wǎng)格計算、云計算領域,具體地說,是一種涉及有期限約束的工作流在一組固定資源上調(diào)度時任務子期限獲取優(yōu)化方法。



背景技術:

在有期限約束的dag工作流共享一組靜態(tài)資源的調(diào)度中,子期限通常作為判定每個任務優(yōu)先級的計算參數(shù)之一。另外,有關用戶調(diào)度費用的優(yōu)化,為了得到最合理的資源分配,考慮到每個任務允許費用優(yōu)化的程度,子期限通常是一個重要指標[1,2]。因此,合理獲取每個任務的子期限具有重要的現(xiàn)實意義。

與著名的heft調(diào)度算法[3]假設相同,假定一個dag多個任務節(jié)點需要映射到一組異構分布式計算資源r上并行調(diào)度。每個有向邊兩端的節(jié)點對應于父、子任務之間的,由于控制和數(shù)據(jù)依賴關系的存在,所有的父任務完成后子任務才能執(zhí)行。根據(jù)著名的heft算法假設,每個任務ni在各計算資源上的執(zhí)行時間花費已知的,資源帶寬假定為1,ci,j表示任務ni傳遞到nj的數(shù)據(jù)通信時間花費,映射在同一資源上的任務間通信時間花費為0。在dag中,沒有任何父任務的任務被稱為入口任務,表示為nentry,而沒有任何子任務的任務被稱為出口任務,表示為nexit。如果給定工作流在dag中包含了多于一個的入口任務或出口任務,可以生成一個零花費的偽入口任務。這樣的假設并不會影響到工作流調(diào)度時的執(zhí)行花費[4]

heft算法其關鍵思想分為兩步,第一是根據(jù)任務的執(zhí)行時間以及與父任務的數(shù)據(jù)傳輸時間計算得到這個任務到出口任務之間的最大距離,即向上權值ranku(ni),如公式(1):

其中:為任務ni在r中各資源執(zhí)行時間花費的均值,succ(ni)為ni的直接子任務集合,nj屬于succ(ni),ci,j任務ni和其子任務nj之間的數(shù)據(jù)通信時間花費,出口任務nexit向上權值,為出口任務nexit在r中各資源上執(zhí)行時間平均值。。

根據(jù)這個數(shù)值進行任務優(yōu)先級排序。

第二個階段是根據(jù)第一個階段得到的任務排序,選取未被調(diào)度的任務中優(yōu)先級最高的任務,遍歷每個處理機,查找到能夠最早完成任務的處理機,插入到可用的空閑時間中。

現(xiàn)有文獻[1,2]關于獲取dag任務子期限的方法通常是基于計算當前任務到出口任務的近似關鍵路徑進行定義的,如公式(2)。

其中:succ(ni)為任務ni的所有直接子任務,nj屬于succ(ni),為任務ni和其所有子任務nj之間的數(shù)據(jù)通信時間花費均值,lft(nj)為子任務nj的子期限,min(wi)為ni在不同處理器上的最小執(zhí)行時間。

這種獲取子期限的方法并沒有考慮到并行任務的多少對子期限的影響,在衡量任務緊急程度方面不夠準確,具有較大的改進的空間。



技術實現(xiàn)要素:

本發(fā)明針對提出了對有期限約束的dag反向調(diào)度獲取任務子期限的方法。子期限就是要找到所有任務在一組資源上調(diào)度時的最遲允許完成時間,也就是每個任務盡可能的推遲完成,直到再推遲會造成整個dag超出期限。為了達到每個任務的最大推遲完成,用dag反向逐個調(diào)度獲取最早完成時間及最早開始時間,通過期限反轉(zhuǎn)即可得到子期限和最遲運行開始時間。dag的反向調(diào)度策略首先對dag中所有的邊做反向處理,即直接子任務和直接父任務的角色交換,然后再采用讓每個任務具有最早完成時間的heft算法進行調(diào)度。實際調(diào)度時,為了更快捷地得到反向dag采用heft算法的調(diào)度結果,并不需要對dag做實際反向,只需要基于heft算法,實現(xiàn)反向heft調(diào)度的rheft方法。具體步驟如下:

步驟(1):計算每個任務ni的到入口任務nentry的最大平均距離參數(shù),也就是任務ni的反向權值rankr(ni),如公式(3),反向是相對于heft算法中的向上權值而定義的。

其中:prec(ni)表示任務ni的所有直接父任務,np為任務ni的其中一個直接父任務,為任務ni在固定資源組r中各資源上執(zhí)行時間平均值,cp,i父任務np到任務ni的數(shù)據(jù)通信時間花費,rankr(np)為父任務np的向下權值。因為公式是需要迭代計算的,首先需要計算入口任務nentry,而nentry沒有直接父任務,其反向權值為任務nentry在r中各資源上執(zhí)行時間平均值。

步驟(2):任務排序。

按照dag中每個任務的rankr(ni)降序排列,得到任務到資源的調(diào)度映射列表,使得出口任務nexit優(yōu)先調(diào)度,入口任務nentry最后調(diào)度。

步驟(3):選擇資源。

從調(diào)度列表中按順序取出第一個任務,從所有資源中尋找具有最早可完成時間的任務的資源時隙。若第一個任務為nexit,直接判定各資源的最小執(zhí)行時間就可找到資源;否則,由于反向,所取出的第一個任務ni所有子任務均已經(jīng)映射到資源,先要計算出ni的所有子任務到每個資源的最大傳遞時間。當前任務在滿足最大傳遞依賴的基礎上找到各個資源上的可用時隙,取具有最小結束時間的資源實現(xiàn)調(diào)度映射。例如一個簡單的四任務dag的反向調(diào)度結果如圖1所示,任務ni映射到資源后可以求得其執(zhí)行最早開始時間estrheft(ni)和最早結束時間eftrheft(ni)。

步驟(4):計算任務子期限和最遲開始時間。

任務ni的子期限或者最遲完成時間subdl(ni)可定義為:

subdl(ni)=d-estrheft(ni)(4)

其中:d為dag期限

任務ni最晚開始時間lst(ni)可定義為:

lst(ni)=d-eftrheft(ni)(5)

步驟(5):調(diào)度列表中去除任務ni,重復步驟(3)(4)(5),

直到dag所有任務完成向資源的調(diào)度映射,輸出每個任務計算結果subdl(ni)、lst(ni)。

通過本發(fā)明所獲取到有期限dag在一組資源上調(diào)度時的每個任務子期限和最遲開始時間,由于是真正調(diào)度得到的結果,每個任務在子期限前完成均可保證所在dag中剩余任務的如期完成,比起現(xiàn)有以關鍵路徑思想獲取的子期限更具有可信性。子期限的獲取還可進一步應用到費用優(yōu)化的算法中,作為費用優(yōu)化時選擇資源的判定基準。

附圖說明:

圖1:反向dag采用heft算法調(diào)度結果示例

圖2:低并行度簡單dag示例數(shù)據(jù)

圖3:具有高并行度的簡單dag示例數(shù)據(jù)

具體實施方式

有期限約束工作流調(diào)度的子期限獲取優(yōu)化方法的算法描述如下:

輸入:一組計算資源r,一個dag各任務在資源組上的運行時間矩陣w,任務間數(shù)據(jù)傳遞矩陣c,dag期限d

1:根據(jù)任務所在層倒序排列任務,同一層按原有順序排列

2:根據(jù)公式(2)計算每個任務ni反向權值rankr(ni)

3:對所有任務按反向權值排序得到未映射任務列表unmaplist

4:while(unmaplist≠φ)do

5:取出反向權值最大的任務ni

6:根據(jù)dag反向調(diào)度思想所有子任務(反向父任務)已被映射到資源,獲取ni的所有子任務

7:對各處理器上計算ni的最早可結束時間ft,(ft=子任務執(zhí)行結束時間+與子任務數(shù)據(jù)傳遞時間+該處理器上的執(zhí)行時間)的,得到任務映射到各處理器的最早完成時間eftrheft(ni)及對應最早開始時間estrheft(ni)。

8:從unmaplist去除任務ni

9:對gk每個任務ni根據(jù)公式(4)計算subdl(ni)和公式(5)計算最晚開始時間lst(ni)

10:endwhile

11:返回dag中各任務子期限和最遲開始時間

設置dag并行度0.5(每層并行任務均值與處理器個數(shù)關系),隨機生成簡單dag1(a)如圖2,圖中的圓圈表示任務號,任務之間的邊方向均為反向,邊權重為數(shù)據(jù)傳遞時間花費,并給出了各任務在一組處理器上的任務執(zhí)行時間花費。

若dag期限為38.8,根據(jù)rheft算法,按照本專利的實現(xiàn)方法進行逐步計算:

步驟(1):通過上述給定dag示例數(shù)據(jù),基于公式(3)計算每個任務的反向權值rankr(ni):

rankr(a1):7.925rankr(a2):19.175rankr(a3):31.175

rankr(a4):20.95rankr(a5):43.6

步驟(2):按照dag中每個任務的rankd(ni)降序?qū)θ蝿张判?,得到任務調(diào)度順序為:a5,a3,a4,a2,a1,依次放到調(diào)度映射列表。

步驟(3):從調(diào)度列表中按順序取出一個任務,從所有資源中尋找具有最早可完成時間的任務的資源時隙。

假定反向后子任務先調(diào)度,子任務傳遞給父任務,對于每個資源所有已調(diào)度子任務傳遞數(shù)據(jù)到達該資源的最大傳遞時間。當前任務在滿足傳遞依賴的基礎上找到各個資源上的可用時隙,取具有最早結束時間eft的資源實現(xiàn)調(diào)度映射,同時得到近似最早開始時間est。a5從0開始,在r2具有最小執(zhí)行時間9.1,因此選擇資源r2。第二輪取任務時會取出a3,由于反向傳遞,a5傳遞數(shù)據(jù)給a3時間花費為9.1,選擇r1、r3、r4上的允許開始時刻是9.1+3=12.1,r2上傳遞時間為0,允許開始時刻為9.1,因此a3在四個處理器最早結束時間分別為32.3、27.9、31.7、31.9,因此選擇資源r2。其他任務依次類推,每輪選擇一個計算,最后得到a1的est、eft。具有dag1(a)的反向調(diào)度結果示意如圖2所示,調(diào)度過程中可以求得每個任務反向執(zhí)行最早開始時間和最早完成時間,est、eft及對應選擇的資源具體結果見表1:

表1

步驟(4):按照公式(4)、(5)計算每個任務子期限subdl和最遲開始時間lst,并公式(2)計算任務subdl進行對比,對比結果見表2。

表2

由兩類方法獲取的子期限可知,在dag每層任務并行度較小使得最多任務數(shù)小于處理器個數(shù)時,公式(2)方法計算出來各任務子期限通常是大于rheft方法獲取的子期限。另外rheft方法同一層上的任務子期限有更大的差別,且大小順序與反向權值一致,而公式(2)方法計算出來各任務子期限同一層大小相對集中,未考慮跟權值的關系。當采用同樣的并行度隨機生成更多任務的dag時(20/50/100個任務),依然具有這樣的規(guī)律。另外,若按公式(2)計算出的任務a1的子期限為3.9,對于任務a1在各個處理器上的執(zhí)行時間最小為7.7,所以在子期限內(nèi)根本沒有辦法執(zhí)行該任務。事實上,當采用heft算法對dag1(a)進行調(diào)度時,得到的最大完成時間是36.4<38.8,也就說明期限內(nèi)是可以完成所有任務的,由此也可以看出公式(2)計算子期限方法的不合理。

若設置隨機產(chǎn)生dag的并行度提高到2(約2倍于處理器個數(shù)隨機生成各層任務),仍采用四個處理器,即某些層中任務并行個數(shù)遠大于處理器個數(shù),對應具有高并行度的dag2(b)結構及數(shù)據(jù)參數(shù)如圖3,期限為27。對應依然采用兩種方法所計算出來子期限進行對比,對比結果見表3。從這個對比結果我們可以看到,rheft方法獲取的任務子期限僅有n6的子期限是大于現(xiàn)有方法的,而這個任務在各個處理器平均執(zhí)行時間顯然大于其他任務,屬于關鍵路徑中的一個任務。當處理器數(shù)目保持不變,并行度依然為2,繼續(xù)隨機產(chǎn)生更多任務的dag時(20/50/100個任務),同樣,現(xiàn)有方法僅有關鍵路徑中的任務子期限是小于rheft方法獲取的任務子期限。因此,當dag任務具有高并行度并大于處理器個數(shù)時,rheft方法得到的任務子期限通常大于現(xiàn)有方法得到的任務子期限。

表3

從二者的對比可以看到,基于rheft算法獲取的任務子期限更分散,大小順序與反向權值一致,約束會更合理。當每個任務臨近其子期限時刻執(zhí)行完成后,比其優(yōu)先級更低的任務仍然可以執(zhí)行完成,而基于公式(2)獲取的子期限由于沒考慮任務的并行性,在高優(yōu)先級任務臨近其子期限剩余時間則有可能完成不了全部剩余任務。

參考文獻

[1]abrishamis,naghibzadehm,epemadhj.deadline-constrainedworkflowschedulingalgorithmsforinfrastructureasaserviceclouds[j].futuregenerationcomputersystems,2013,29(1):158-169.

[2]jiay,buyyar,chenkt.cost-basedschedulingofscientificworkflowapplicationonutilitygrids[c]//internationalconferenceone-scienceandgridcomputing.dblp,2006:8pp.-147.

[3]topcuogluh.,hariris.andmin-youw..performance-effectiveandlow-complexitytaskschedulingforheterogeneouscomputing.ieeetransactionsonparallelanddistributedsystems,2002(13):260-274.

[4]sakellariour.,zhaoh..ahybridheuristicfordagschedulingonheterogeneoussystems[c]//parallelanddistributedprocessingsymposium,2004.proceedings.international.ieee,2004:111.

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
清原| 桓台县| 黔西| 名山县| 江达县| 大渡口区| 阿克陶县| 全南县| 吴桥县| 驻马店市| 德清县| 兴业县| 专栏| 喀什市| 珲春市| 扶风县| 辉南县| 大庆市| 曲阜市| 铜陵市| 巴林右旗| 吉安市| 从江县| 浦东新区| 布尔津县| 南靖县| 岐山县| 贵南县| 长葛市| 搜索| 婺源县| 揭东县| 安宁市| 重庆市| 贵州省| 淮阳县| 南康市| 宝清县| 老河口市| 高清| 秦安县|