一種改進的OpenMPGuided調(diào)度策略研究_圖文._第1頁
一種改進的OpenMPGuided調(diào)度策略研究_圖文._第2頁
免費預覽已結(jié)束,剩余8頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、一斡改進的OpenMP Guided調(diào)0 I4 I5 . CaAfF4.1訂5M Wi.* hAIr* 號bnfl舄.cw 編Xf* 4 Nit f A 2,bflrrMwH*4WA . ItiMRi.!sr rs十啊,n 他細1a acAtMtsraAMKa U9Mfz 嶺/”良, * fl KV*Hr NRB e a arR #Wy J*丨舁航*ll*L N LtfaW*XWMrw.MfBKXA 4 HxitnwiiBte tniiN ti. ean m s t;啊厲H) ) 4ny4XAf ear .! A WHAAV4Vat #*-r I9-maiflt. CtMBit尺0 MH】Wr

2、wIMA斤Ml a*9MW. OAftMIt W I R . R 您wi 4、Hniivm , *”. tM9M0arrAM y u,WAAfUIHIIItMCgr v磯鼻 v K4AM-9A4A f.! .8M tlAS * * fW b ! * * atfc dl taai H.- .葉仕 * *-4 e*o Ul H rnMlWWr 4 w mmw “ m &t t.Ae INVE .UT4 I r yikhH:Ur葉11-* 餌VMMWlf wn *K*題著*Ail l| q 1 hMH*NV4* f h AIJ -r - hi*即 4 JLMUhMn-IBB-UBift Li

3、 !* Vl * qiA4 IM4 Ui| n Fit P N N3I J(IM. Cft A 理 Hft* * ? 41!. i.-rf IK- I I.丄,.鼻即 iu. nnii4tanhf.4 寧 W電起H4I II建詡殲山 If ffl】皐片陽片矗 1 、鼻 晉HCI M m W *V If FII1 F R4 沖. i I- * KplfediB A h:-taL4M 陽 H 曾希 亠科第齊轉(zhuǎn)轉(zhuǎn) H d 4 g| fM|i Kflrt t勺 iMIAlifiH!:!. ITltFH 1 Wil 144 * fl Hfi 増 crflipH4-SHkr.il:*vw n :* 4 H

4、 W *鬥 Mil啊葉 備?!癶 M. f lift II-11A* A tipr ”詩HP!耳爲*-W3 H4 JtB IlH*i. ktlA f-1* ik-fiichl 賣和 w IU0*1*旳 Pl|UrH|卯和“百耳屮序(AH lAi rrIKM.i I 1 MN. mm* tw N 2 It!A-I JI 屮 fl v t ,-* 4t * V rfit k 4h H t SrVJfl 卜用 IE AJ taTKn: tw = E HflKABi J1 H _kTTiTT: i ”i *ff-rfe-*i L1 HL Fwre 111 * l4種改進的 O嚴 nMP Guided

5、調(diào)度策略研究表 4 AdjointCon片上的測試結(jié)果 單位:秒果(單位:秒) 涮度策略118 2dynamic10 178 182 21471 910 6 14 8蒯度策略8s talk0iv.1028 4 4528矗2線程數(shù) 315A9 394.2394.14 23 6l7n657n6 37n765 4 14 l 3914l4 514l 4 8i50 目 l ed1 0gu i ded 5828 人 328 人 l 28 人 327942894.2l94.160 guideVl1 0 guideVl,501 Wguided 10 iw guided5 0 mw g,uide &10

6、 mw gufle & 5010 4 116115 16 1 6 28574 28573 1 4 3 1 91 4 31 0 9 5 5 7 9 5 7 3 7 1 8 0 7 1 89 表 5 Matrix Mu1tip1 icatio n在曙光機上的測試結(jié) 果(單位:秒)表 8 Adjoint Con vo1utio n 在 IEM刀片上的測試 結(jié)果(單位:秒州艘策略 6 5 5 552 3 3 8 3 7 4 1 4 7 4 9 7 4 9 4 3 3 3 3 3 3 5 3 8 4 9 4 9 8 4 5 4331 3436324949sta1k10 1 1 5 4 2 91

7、5 4 8 0 1 5 4 4 0 1 5 4 4 9 1 5 4 4 2 1 5 4 6 9 1 5 3 9 2 1 5 4 2 9 2 1 58 67矗 98 7 721 7矗 0011矗 05 11矗 36 7 73 7 7 7 54蒯 度策略 1160 s1a1ifJ ic.10 153152152 152 152 2 7 8 7 880 7 9 79 7 7 7 47 4 3 565 55 3 5 6 55 5 55 4 5 4 線程數(shù)4 線程數(shù)3 8 5 9 95 5 95 3 55 3 9 85 9 38 6 4 7 5 675 6 64 6 80 23 8 5 73 8 4 9

8、3 8 4 96 78 06 8 0 0 3 8 943 9 0 45 3 76 53 7 4 547 37 4 7 4 94 4 42 4 3 5 5 4 4 4 3 4 6 4 6 dv1mm, fM1amic0 fM1am ic 5 0 dynamic.50 guided 10 guided 50 1*w_g,uided 10 gnideV1.10 gnideV1.50 1 圻 137 i 磯_ guided,10 t 磯_ guideV1 50 1W_ guide & 5 06 3在舊 M刀片上的測試結(jié)果 表 9 Matrix Mu1tip1icati on 在 1EM刀片上的

9、測試 結(jié)果(單位:秒) 劉于每一個循環(huán)結(jié)構(gòu),我們均采用 和曙光服 務器相同的調(diào)度策略進行了測試測試過程中,采用了 1 至 4個線程,測試結(jié)果分別如表 6表 9 所示。表 6 Mande1brot 州發(fā)策略 112 03 8 sta1k:,10 dvnamif 1 0 1 2 0 3 5 1 2 0 4 0 1 2 0 3 7120 33 120 37 120 34 120 36 線程數(shù) 2 6 00 0 5 9 9 94 9 9 9 6 0 7 2 6 0 1 2 6 0 7 2 6 0 7 6 6 0 7 2 3 4 0 5 3 4 0 5 7 4 0 5 8 4 0 5 7 4 0 6 2

10、 4 0 5 3 4 0 53 4 0 8 9 4 3 0 4 9 30 ”30 3 6 Set 在 IEM刀片上的測試結(jié)果 單位:秒)dvtmmiV:50 3 0 撕 3 0粥 3 1 12 州艘策略 12087 sta1ic,10 dvtmmiV.10dvtmmiV.50 2103】207972079220794207 94 208 58 20865 2 線程數(shù) 3169 35 7027 69 36 6 9 4 2 1 4 9 5 4 1 4 9 4 4 1 1 3 6 6 1 1 3 74 4 1 3 3 3 3 5 2 6 3 5 2 0 4 5 2 0 4 gnided.10 gni

11、ded.50 1512】1 0 5 2 3 1 0 4.0 4 1 0 4 0 5 1 5 n96 15n 9 2 3 3 2 4 1 3 32 3 t磯 _gui(1e &10 t 磯guide & 50 3 0 4 9 3 1 0 76.4 實驗結(jié)果分析 從表 2表 9 可以看 m,不同的凋度策略和chunksize參數(shù)在曙光服務器和 IEM刀片上對性 能的影響基本相同對于四個測試程序,默認的 gnidefL10 1fn771fn969 2 4 69 2 5 3 guided,50 nen guide &10 nen guided,50一種改進的 O嚴 nMP Gu

12、ided 調(diào)度策略研究 static調(diào)度性能都 是最差的。對于dynamic、guided和 new guided 凋度,chunksize參數(shù)對調(diào) 度性能的影響比較小。 MS 程序是一個不規(guī)則的循 環(huán)結(jié)構(gòu)。從表 2和表 6 可以看出dynamic調(diào)度和(static,1 0)進行一次凋度的開銷往往并不相同,編譯器在為 線程分配迭代塊時,一股首 先鎖住所有線程共享的任務隊列,然后在臨界區(qū)(criticalsecti on)計算需要分配的迭代塊大小,并更新任務隊列,最 后解鎖dynami c調(diào)度采用的是 OpenMP制導訂調(diào)度可以獲得較好的性能,其次是 newguided調(diào)度策略如圖 3 所示,

13、 MS 程序的迭代可以分 為前面、中間和后 面三個部分。其中,在前面部 分和后面部分的迭代中,每次迭代的計算量都很 小,而中間部分的迭代的計算量都特別大對于 這樣的循環(huán)結(jié)構(gòu),guided和 默認的 static調(diào)度都 會導致獲得中問那部分迭代的線程 T作量非常 句中的 chunksize參數(shù)來直接指定迭代塊大小,而guided凋度則需要在每次調(diào)度時計算迭代塊 大小。也就是說dynamic調(diào)度對應的臨界區(qū)代 碼 量少于 guided調(diào)度的臨界區(qū)代碼量。例如在OMPi 編譯中,dynamic調(diào)度對應的臨界區(qū)代碼為 2 行,而 guided調(diào)度對應的臨界區(qū)代碼為 8 行兇此,執(zhí)行一次 dynamic

14、調(diào)度的開銷要少于執(zhí)行一次 guided調(diào)度的開銷。但是,guided調(diào)度每次 分配的迭代塊多于 dynamic,斟此,對于同一個程序,采用 guided 策略的調(diào)度次數(shù)要少于策略 對于表 1中 的例子,采用dynamic策略需要進行 20 次調(diào)度,而采用 guided策 略只需要 10 次調(diào)度。 如果綜合考慮一次調(diào)度的額外開銷和調(diào)度次數(shù),dynamic 凋度和 guided 的總額外開銷近乎相似。從表 3、表 5、表 7、表 9中的測試結(jié)果可以看出, 對遞增結(jié)構(gòu)的 CP程序和規(guī)則的 MM 程序采用dynamic、guided和 new guided調(diào)度時的性能差不多。大,而其它線程的 1 作量

15、非常小,從而導致嚴重 的負載不半衡。dynamic調(diào)度和 (static,1 0)調(diào)度會將計算量大的迭代和計算量小的迭代均勻 地分配 給各個線程,兇此可以獲得較好的調(diào)度性 能。這兩個凋度策略的區(qū)別在于(st atic,10)在進入循環(huán)前就將所有迭代分配完畢,而 dynamic調(diào)度則是在一個線程執(zhí)行完當前迭代塊后冉給 它分配下一個迭代塊。 論文8的研 究指出:如果計算負載是隨迭 代變量增大而減小的,則應避免使用指數(shù)調(diào)度,兇為它的前幾個子塊大小都很大,可能導致負載不均衡?!睆谋?8的測試結(jié)果可以看 m,遞減結(jié)構(gòu)的 AC 程序采用(static,10)、dynamic 和 ne w guided 調(diào)

16、度時能夠獲得最佳性能,而采用guided調(diào)度策略時性能較差。這一點與論文8】 的結(jié)論一致、對于遞減循環(huán)結(jié)構(gòu),計算負載隨著 迭 代變量增大而減小,而 guided策略劃分的迭代 塊大小也是由大變小,且呈 指數(shù)下降兇此,對 于遞減循環(huán)結(jié)構(gòu)采用 guided 調(diào)度會導致前面的 迭代塊計 算量非常大,而后面的迭代塊計算量非 常小,從而引起負載不半衡、在曙光服務 器上.當線程數(shù)大于 3時,隨著線程數(shù)的增加,AC 程 序的執(zhí)行時間沒有繼續(xù)減 少、這是丨_【于 AC 程序 訪問存儲單元時具有一定的不規(guī)則性,當線程進 一 步增多時,存儲訪問的局部件被破壞了 論文8采用調(diào)度次數(shù)來衡量兇調(diào)度產(chǎn) 生的額外開銷,認為

17、對遞增結(jié)構(gòu)的循環(huán),應避免使 綜合表 2表 9 的測試結(jié)果可以看出,在 OpenMP 程序中采用 dynamic策略和(static,10)策略的調(diào)度性能比較好。new guided策略劉 guided策略 進行了改進,調(diào)度性能介于 guided和dynamic之間、由于 static調(diào)度在編譯期就決定了各個處理器的迭代塊大小,兇此無法根據(jù)程序運 行時 處理器的負載動態(tài)調(diào)整此外,當調(diào)度非規(guī) 則循環(huán)結(jié)構(gòu)或者處理器件能不一致時,static 調(diào)度很容易 m 現(xiàn)負載不半衡。如在表 3、表 4、表 5 中,(static,l 0)策略的調(diào)度性能就比 dynamic和 guided策略的凋度性能差。綜合前

18、面的分析, 我們可以認為,在大部分的情況下dynamic 策略都能獲得最好的調(diào)度性能。7 總結(jié)及以后的工作隨著多核處理器的問世,多 線程程序設計已 經(jīng)成為一個不可回避的問題。在采用 OpenMP編用靜態(tài)調(diào)度策略和分塊大小較大的動態(tài)凋度策 略、”但是,在實際的編譯器中,不同調(diào)度策略一種改進的 O嚴 nMP Guided 調(diào)度策略研究 程時,調(diào)度策略和參數(shù)的 選擇列于一個OpenMP 程序的性能具有一定的影響,但選擇恰當?shù)恼{(diào)度策略和參數(shù)往往跟具體的運行環(huán)境和循環(huán)結(jié)構(gòu)有關(guān)?,F(xiàn)有的研究 I作(如文獻1和8)都表明, 對于遞減型的循環(huán)結(jié)構(gòu),采用 guided調(diào)度策略 時存在嚴重的負載不均衡問題。本文借鑒

19、論文7】的 ix閌度策略,對循環(huán)結(jié)構(gòu)的前5 0%的迭代采用static閱度, 后面50%的迭代采用guided調(diào)度, 從而改進了OpenMP標準所指定的 guided調(diào)度策略。此外,針對不同的循環(huán)結(jié)構(gòu),我們在不同的 多核處理器上對不同的調(diào)度策略進行測試和 分析。本文的進一步 I 作可以研究 d 調(diào)度策略在機 群 OpenMP系統(tǒng)中的應 用、 9 876 Clusters Proceedings on of the 2001 IEEE International Confere nce Cluster Cmnputing,2001 Shih,Chao T ungTseng on Wen Chun

20、g Shian Shyong Sch eduling Proceedings Parallel and Yang,P ing I ParallelPC Chen, LoopAHyhrid Sch eme of HeterogeneousInternational ClustersontheSixthConference Distribute d Computing Applications and Technologi es.2 0 0 5 Chao TungYang.Shun Chyi 017 Ch ang AParallel Loop PC and Self Scheduli ng Cln

21、sters Extremelyof Heterogeneous Science Jo/iTnal Inforrnaton Engineering,2004,20 (2),pp:263 273 Shaineem Akhter.Jason Roberts多核程 J設計技術(shù) pp:李寶峰等譯北 京電子 T 業(yè)出版社,2007 1 4 7 -1 5 1 VVDimakopoulos.E Leontiadis and GTzounlas.A portabl e C compiler for OpenMP V 2 0 of the 5th Eur opeanIn:Proceedings Workshop on OpenM P.Aachen. Germany,2003,pp:5 1 110賴建新胡長軍等 OpenMP任務調(diào)度開銷及負載均 衡分析計算機 T程.200

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論