基于任務(wù)并行策略的多核程序優(yōu)化研究
發(fā)布時(shí)間:2020-04-13 21:02
【摘要】:隨著多核處理器的普及,如何有效利用多核處理器資源,成為了并行計(jì)算領(lǐng)域的研究熱點(diǎn),F(xiàn)在很多應(yīng)用程序都是在單核單線(xiàn)程環(huán)境下開(kāi)發(fā)的,在多核環(huán)境下還是以單線(xiàn)程形式執(zhí)行,導(dǎo)致了多核資源的浪費(fèi)。為了能夠充分發(fā)揮多核潛力,提升應(yīng)用程序的性能。本文在深入分析多核并行技術(shù)的前提下,研究了基于任務(wù)并行策略的多核程序優(yōu)化技術(shù)。任務(wù)并行的優(yōu)勢(shì)在于它是輕量級(jí)的組件,調(diào)度任務(wù)的開(kāi)銷(xiāo)要比調(diào)度進(jìn)程和線(xiàn)程的開(kāi)銷(xiāo)小。 通過(guò)研究Intel線(xiàn)程構(gòu)建模塊(TBB),本文提出了基于任務(wù)調(diào)度器的的并行優(yōu)化方法。該方法是通過(guò)任務(wù)調(diào)度器創(chuàng)建線(xiàn)程池管理任務(wù),采用任務(wù)密取技術(shù)負(fù)載均衡地把任務(wù)自動(dòng)地映射到多個(gè)邏輯線(xiàn)程上并行執(zhí)行,從而提高多核資源的使用效率和應(yīng)用程序的性能。針對(duì)多核集群環(huán)境提出了一種層次任務(wù)并行化方法,上層MPI提供節(jié)點(diǎn)間進(jìn)程級(jí)的任務(wù)并行,下層TBB提供多核節(jié)點(diǎn)內(nèi)部的任務(wù)并行。結(jié)合兩者的優(yōu)勢(shì),實(shí)現(xiàn)進(jìn)程和處理節(jié)點(diǎn)以及線(xiàn)程和多處理核的兩級(jí)并行。為了驗(yàn)證以上兩種方法的高效性,以N皇后經(jīng)典算法為例,分別在共享存儲(chǔ)模型TBB和混合并行編程模型MPI+TBB環(huán)境下進(jìn)行了循環(huán)迭代的并行化測(cè)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,共享存儲(chǔ)模型并行化的加速比和CPU利用率都能達(dá)到一個(gè)可觀(guān)的數(shù)值,體現(xiàn)了任務(wù)調(diào)度器并行化的優(yōu)越性;采用任務(wù)劃分的混合并行編程模型不但可以減少程序執(zhí)行時(shí)間,獲得更好的加速比和執(zhí)行效率,而且明顯地提高了多核集群并行性能。 最后本文以模糊C均值算法為例,運(yùn)用OpenMP工作分區(qū)編碼,實(shí)現(xiàn)了多核平臺(tái)下的串行程序熱點(diǎn)區(qū)域的任務(wù)并行化。運(yùn)用Intel parallel studio高性能工具對(duì)并行化結(jié)果進(jìn)行驗(yàn)證,從執(zhí)行時(shí)間和并發(fā)性方面進(jìn)行了比較,其性能都有了很大的提高。體現(xiàn)了任務(wù)并行策略通用性和可靠性的特點(diǎn),對(duì)多核應(yīng)用程序的性能優(yōu)化有很好的實(shí)用性。
【圖文】:
圖 2.1 多核集群結(jié)構(gòu)Fig. 2.1 Multi-core cluster structure能指標(biāo)]是衡量并行性能的一個(gè)指標(biāo),簡(jiǎn)單的說(shuō)是并行程序的并行執(zhí)行速快了多少,它是并行計(jì)算的核心。并行加速比=并行后整個(gè)任務(wù)的運(yùn)行時(shí)間并行前整個(gè)任務(wù)的運(yùn)行時(shí)間是隨著處理器核數(shù)的增加,并行執(zhí)行速度也相應(yīng)的倍增。在實(shí)際很難符合理論的數(shù)值,主要有兩大定律與加速比有關(guān)。hl 定律[12]:在問(wèn)題規(guī)模一定的前提下,加速比不能隨著處理器數(shù)升,而是受限于程序的可并行比例,加速比極限是可并行比例的一個(gè)任務(wù)在并行前的執(zhí)行時(shí)間是 200s,可以被并行的時(shí)間是 100=50%,也就是說(shuō)并行加速比的上限是 1/50%=2。因此我們可以一個(gè)方法是減少代碼中串行部分的比例,增加并行部分的比例。
- 7 -圖 2.3 細(xì)粒度任務(wù)劃分Fig.2.3 Fine granularity task partitioning務(wù)之間有兩種相關(guān)性:一種是順序相關(guān)性,指的計(jì)算結(jié)果。也就是說(shuō)必須保證執(zhí)行一個(gè)任務(wù)這種潛在的數(shù)據(jù)競(jìng)爭(zhēng)問(wèn)題,我們?cè)诜峙淙蝿?wù)的程上,并且能保證線(xiàn)程執(zhí)行的順序;另一種是的共同操作。在大多數(shù)情況下,,我們使用鎖或
【學(xué)位授予單位】:遼寧師范大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2011
【分類(lèi)號(hào)】:TP332
【圖文】:
圖 2.1 多核集群結(jié)構(gòu)Fig. 2.1 Multi-core cluster structure能指標(biāo)]是衡量并行性能的一個(gè)指標(biāo),簡(jiǎn)單的說(shuō)是并行程序的并行執(zhí)行速快了多少,它是并行計(jì)算的核心。并行加速比=并行后整個(gè)任務(wù)的運(yùn)行時(shí)間并行前整個(gè)任務(wù)的運(yùn)行時(shí)間是隨著處理器核數(shù)的增加,并行執(zhí)行速度也相應(yīng)的倍增。在實(shí)際很難符合理論的數(shù)值,主要有兩大定律與加速比有關(guān)。hl 定律[12]:在問(wèn)題規(guī)模一定的前提下,加速比不能隨著處理器數(shù)升,而是受限于程序的可并行比例,加速比極限是可并行比例的一個(gè)任務(wù)在并行前的執(zhí)行時(shí)間是 200s,可以被并行的時(shí)間是 100=50%,也就是說(shuō)并行加速比的上限是 1/50%=2。因此我們可以一個(gè)方法是減少代碼中串行部分的比例,增加并行部分的比例。
- 7 -圖 2.3 細(xì)粒度任務(wù)劃分Fig.2.3 Fine granularity task partitioning務(wù)之間有兩種相關(guān)性:一種是順序相關(guān)性,指的計(jì)算結(jié)果。也就是說(shuō)必須保證執(zhí)行一個(gè)任務(wù)這種潛在的數(shù)據(jù)競(jìng)爭(zhēng)問(wèn)題,我們?cè)诜峙淙蝿?wù)的程上,并且能保證線(xiàn)程執(zhí)行的順序;另一種是的共同操作。在大多數(shù)情況下,,我們使用鎖或
【學(xué)位授予單位】:遼寧師范大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2011
【分類(lèi)號(hào)】:TP332
【相似文獻(xiàn)】
相關(guān)期刊論文 前10條
1 辛熠;楊瑞民;;多核DSP編程技術(shù)研究[J];電子測(cè)試;2011年09期
2 劉磊;周慶;井蔚;劉冰;;基于多核處理器的網(wǎng)絡(luò)安全協(xié)議并行處理研究[J];信息網(wǎng)絡(luò)安全;2011年09期
3 于永斌;徐潔;王華;張鳳荔;吳曉華;丁旭陽(yáng);;計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)課程多核創(chuàng)新實(shí)驗(yàn)探索[J];實(shí)驗(yàn)科學(xué)與技術(shù);2011年03期
4 趙輝;錢(qián)文光;楊麗娟;;OpenMP中負(fù)載平衡優(yōu)化的分析與研究[J];福建電腦;2011年06期
5 傅忠傳;高洋;李東;張澤旭;崔平遠(yuǎn);李馨梅;;Metric多核子方法劃分編譯算法設(shè)計(jì)與實(shí)現(xiàn)[J];哈爾濱工業(yè)大學(xué)學(xué)報(bào);2011年07期
6 李e
本文編號(hào):2626437
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/2626437.html
最近更新
教材專(zhuān)著