歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > PPT文檔下載  

吉林大學多核程序設(shè)計第二章并行程序設(shè)計基礎(chǔ)并行計算基礎(chǔ)課件

  • 資源ID:252436089       資源大?。?span id="g0kd11f" class="font-tahoma">282.13KB        全文頁數(shù):31頁
  • 資源格式: PPT        下載積分:20積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要20積分
郵箱/手機:
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機號,方便查詢和重復下載(系統(tǒng)自動生成)
支付方式: 微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標題沒有明確說明有答案則都視為沒有答案,請知曉。

吉林大學多核程序設(shè)計第二章并行程序設(shè)計基礎(chǔ)并行計算基礎(chǔ)課件

,單擊此處編輯母版標題樣式,*,單擊此處編輯母版文本樣式,第二級,第三級,第二章 并行計算基礎(chǔ),并行計算:,并行計算就是將一個大規(guī)模的計算問題分解成若干小的任務(wù),通過運行在多個運算部件上的這些小任務(wù)的合作來求解一個規(guī)模很大的計算問題的一種方法。,強并行計算:如果一個計算由若干子計算構(gòu)成,若各子計算之間不存在依賴關(guān)系,可以并行計算,那么這種計算可以稱為強并行計算。,弱并行計算:如果一個計算由若干子計算構(gòu)成,若各子計算之間存在依賴關(guān)系,不能并行計算,但是單個的子計算內(nèi)又可以分解為若干更小粒度的子計算,且這些更小粒度的子計算是可以并行執(zhí)行的,這種并行計算可以稱為弱并行計算。,第二章 并行計算基礎(chǔ)并行計算:,1,并行計算的應用,預測模型的構(gòu)造和模擬、工程設(shè)計和自動化、能源勘探、醫(yī)學、軍事以及基礎(chǔ)理論研究等領(lǐng)域中都對計算提出了極高的要求。,并行計算三種主要的基本類型:,計算密集型應用,如大型科學工程計算與數(shù)值模擬;,數(shù)據(jù)密集型應用,如數(shù)字圖書館、數(shù)據(jù)倉庫、數(shù)據(jù)挖掘和計算可視化等;,網(wǎng)絡(luò)密集型應用,如協(xié)同工作、遙控和遠程醫(yī)療診斷等。,第二章 并行計算基礎(chǔ),并行計算的應用 第二章 并行計算基礎(chǔ),2,并行程序開發(fā)方法,并行層次與代碼粒度,指令級并行:在多個并行層次中指令級并行是代碼粒度最小的并行,也稱為微粒度并行、甚細粒度并行;,數(shù)據(jù)級并行:又稱為細粒度并行,它比指令級并行所執(zhí)行的代碼粒度要大一些,一般長度為幾百條指令,這類并行通常都是在編譯階段由編譯器來負責實現(xiàn)的;,控制級并行:也叫中粒度并行,通常是面對過程、子過程,其代碼的長度一般為幾千條指令。這一級的并行通常需要程序員的參與,一般情況下必須由程序員先對過程間的數(shù)據(jù)依賴關(guān)系進行分析然后再開發(fā)出相應的并行性;,任務(wù)級并行:任務(wù)級并行也叫做作業(yè)級并行、粗粒度并行,其代碼的長度一般可高達數(shù)萬條指令,一般是由加載程序和操作系統(tǒng)來負責處理的。,并行程序開發(fā)方法 并行層次與代碼粒度,3,并行程序開發(fā)方法,并行程序的開發(fā)策略,第一種是采用將已有的串行程序進行自動并行化的方法來開發(fā)適合于并行計算機運行的并行程序;,第二種是調(diào)用并行庫來實現(xiàn)并行程序的開發(fā);,第三種是使用并行語言重新編寫能運行于高性能并行計算機上的并行代碼。,并行程序開發(fā)方法并行程序的開發(fā)策略,4,并行程序設(shè)計模式,并行程序設(shè)計模式的基本思路,對數(shù)據(jù)進行分解,將大的數(shù)據(jù)塊分解成若干小塊,每個線程處理其中的某些小塊;,對計算過程進行分解,將一個大的計算處理過程分解成若干可獨立運行的子過程,然后每個線程運行其中的一個或多個子過程;,基于問題進行分解,將一個原問題分解為若干子問題,然后將子問題的解合并起來成為原問題的解。,并行程序設(shè)計模式 并行程序設(shè)計模式的基本思路,5,并行程序設(shè)計模式,并行程序設(shè)計模式,數(shù)據(jù)分解模式:將數(shù)據(jù)分解成若干獨立的子數(shù)據(jù)塊,每個線程處理其中的一個或多個子數(shù)據(jù)塊;,分治模式:將一個原問題的求解分解為多個子問題的求解,然后再將多個子問題的解通過一定的計算方法合并為原問題的解;,流水線模式:將一個計算過程分解成流水線式的多個步驟序列,對于每個步驟的處理使用一個或多個線程來實現(xiàn);,并行程序設(shè)計模式并行程序設(shè)計模式,6,并行程序設(shè)計模式,并行程序設(shè)計模式,任務(wù)并行模式:將一個大的靜態(tài)計算任務(wù)分解成若干獨立的小計算任務(wù),讓這些小計算任務(wù)并行執(zhí)行;,任務(wù)圖調(diào)度模式:將一個大的靜態(tài)任務(wù)分解成若干小的計算任務(wù)時,由于很多時候各個小任務(wù)在執(zhí)行時許多非獨立的小任務(wù)之間存在依賴關(guān)系,將這種依賴關(guān)系通過一個無環(huán)有向圖來描述,這個圖就是任務(wù)圖,對它的并行化方法是任務(wù)調(diào)度問題,這就是任務(wù)圖調(diào)度模式;,動態(tài)任務(wù)調(diào)度模式:任務(wù)圖調(diào)度模式調(diào)度的是靜態(tài)的任務(wù),但是在很多情況下任務(wù)不是靜態(tài)的而是在運行過程中動態(tài)產(chǎn)生的。運用共享資源分布式計算的知識實現(xiàn)的關(guān)于動態(tài)任務(wù)調(diào)度的并行模式就是動態(tài)任務(wù)調(diào)度模式,它的突出特點就是可以實現(xiàn)并行計算。,并行程序設(shè)計模式并行程序設(shè)計模式,7,并行計算基礎(chǔ),組成并行計算機的各個部分:,節(jié)點(,node,):每個節(jié)點由多個處理器構(gòu)成,可以直接進行輸入輸出(,I/O,)操作;,互聯(lián)網(wǎng)絡(luò)(,interconnect network,):所有節(jié)點通過互聯(lián)網(wǎng)絡(luò)相互連接通信;,內(nèi)存(,memory,):內(nèi)存由多個存儲模塊組成,1、與節(jié)點對稱的分布在互聯(lián)網(wǎng)絡(luò)的兩側(cè);,2、位于各個節(jié)點的內(nèi)部。,并行計算基礎(chǔ)組成并行計算機的各個部分:,8,并行計算基礎(chǔ),內(nèi)存模塊與節(jié)點分離,內(nèi)存模塊位于節(jié)點內(nèi)部,并行計算基礎(chǔ)內(nèi)存模塊與節(jié)點分離內(nèi)存模塊位于節(jié)點內(nèi)部,9,多級存儲體系結(jié)構(gòu),解決內(nèi)存墻(,memory wall,)性能瓶頸問題;,節(jié)點內(nèi)部的,cache,稱為二級,cache,(,L2 cache,);,處理器內(nèi)部更小的,cache,成為一級,cache,(,L1 cache,);,L1 cache,連接,CPU,寄存器和,L2 cache,,負責緩存,L2 cache,中的數(shù)據(jù)到寄存器中。,多級存儲體系結(jié)構(gòu)解決內(nèi)存墻(memory wall)性能瓶頸,10,多級存儲體系結(jié)構(gòu),并行計算機的多級存儲結(jié)構(gòu)主要包括兩個問題:,Cache,的映射策略,即,cache,如何從內(nèi)存中取得數(shù)據(jù)進行存儲;,節(jié)點內(nèi)部或者節(jié)點之間內(nèi)存的訪問模式,。,cache,原理,,cache,以,cache,線為基本單位,每條,cache,包含,L,個字,每個字,8,個字節(jié)。例如,,L=4,,,則表示,cache,線包含,4*8=32,個字節(jié)。內(nèi)存空間分割成塊(,block,),,每個塊大小與,cache,線長度一致,數(shù)據(jù)在內(nèi)存和,cache,之間的移動以,cache,線為基本單位,。,For i=1 to M,Ai=Ai+2*Bi,如果操作數(shù)存在,cache,中,稱該次訪問是命中的,否則,該次操作是“撲空”的,。,多級存儲體系結(jié)構(gòu)并行計算機的多級存儲結(jié)構(gòu)主要包括兩個問題:,11,多級存儲體系結(jié)構(gòu),cache,的映射策略(,內(nèi)存塊和,cache,線之間如何建立相互映射關(guān)系,),:,直接映射策略(,direct mapping strategy,):每個內(nèi)存塊只能被唯一的映射到一條,cache,線中,;,K,路組關(guān)聯(lián)映射策略(,K-way set association mapping strategy,):,Cache,被分解為,V,個組,每個組由,K,條,cache,線組成,內(nèi)存塊按直接映射策略映射到某個組,但在該組中,內(nèi)存塊可以被映射到任意一條,cache,線;,全關(guān)聯(lián)映射策略(,full association mapping strategy,),:,內(nèi)存塊可以被映射到,cache,中的任意一條,cache,線。,多級存儲體系結(jié)構(gòu)cache的映射策略(內(nèi)存塊和cache線之,12,訪存模型,UMA,(,Uniform Memory Access,)模型:該模型內(nèi)存模塊與節(jié)點分離,分別位于互聯(lián)網(wǎng)絡(luò)的兩側(cè),物理存儲器被所有節(jié)點共享;,所有節(jié)點訪問任意存儲單元的時間相同,;,發(fā)生訪存競爭時,仲裁策略平等對待每個節(jié)點,即每個節(jié)點機會均等;,各節(jié)點的,CPU,可帶有局部私有高速緩存;,外圍,I/O,設(shè)備也可以共享,且每個節(jié)點有平等的訪問權(quán)利。,訪存模型UMA(Uniform Memory Access),13,訪存模型,NUMA(Non-Uniform Memory Access)模型,:,該模型內(nèi)存模塊分布在各個節(jié)點內(nèi)部,所有局部內(nèi)存模塊均構(gòu)成并行計算機的全局內(nèi)存模塊。內(nèi)存模塊在物理上是分布的,在邏輯上是全局共享的,這種模型也稱之為“分布式共享訪存模型”,物理存儲器被所有節(jié)點共享,任意節(jié)點可以直接訪問任意內(nèi)存模塊;,節(jié)點訪問內(nèi)存模塊的速度不同,訪問本地存儲模塊的速度一般是訪問其他節(jié)點內(nèi)存模塊的,3,倍以上;,發(fā)生訪存競爭時,仲裁策略對節(jié)點可能是不等價的;,各節(jié)點的,CPU,可帶有局部私有高速緩存(,cache,);,外圍,I/O,設(shè)備也可以共享,但對各節(jié)點是不等價的。,訪存模型NUMA(Non-Uniform Memory Ac,14,訪存模型,COMA(Cache-Only Memory Access)模型,:,全高速緩存存儲訪問模型,各處理器節(jié)點中沒有存儲層次結(jié)構(gòu),全部高速緩存組成了全局地址空間;,利用分布的高速緩存目錄進行遠程高速緩存的訪問;,COMA,中的高速緩存容量一般都大于,2,級高速緩存容量;,使用,COMA,時,數(shù)據(jù)開始時可以任意分配,因為在運行時它最終會被遷移到要用到它的地方。,訪存模型COMA(Cache-Only Memory Acc,15,并行計算模型,SIMD同步并行計算模型,共享存儲的,SIMD,模型(,PRAM,模型);,分布存儲的,SIMD,模型(,SIMD,互聯(lián)網(wǎng)絡(luò)模型),MIMD異步并行計算模型,異步,PRAM,模型,BSP,模型,LogP,模型,C,3,模型,并行計算模型 SIMD同步并行計算模型,16,同步并行計算模型,SIMD,共享存儲模型假定存在著一個容量無限大的共享存儲器,有有限或無限個功能相同的處理器,且均具有簡單的算術(shù)運算和邏輯判斷功能,在任何時刻各處理器均可通過共享存儲單元相互交換數(shù)據(jù)。,SIMD共享存儲模型(PRAM模型),PRAM-EREW,(,Exclusive-Read and Exclusive-Write,),不允許同時讀和同時寫;,PRAM-CREW,(,Concurrent-Read and Exclusive-Write,),允許同時讀但不允許同時寫;,PRAM-CRCW,(,Concurrent-Read and Concurrent-Write,),允許同時讀和同時寫。,優(yōu)點:,適合于并行算法的表達、分析和比較;,使用簡單,很多諸如處理器間通信、存儲管理和進程同步等并行計算機的低級細節(jié)均隱含于模型中;,易于設(shè)計算法和稍加修改便可運行在不同的并行計算機上;,且有可能加入一些諸如同步和通信等需要考慮的方面。,同步并行計算模型SIMD共享存儲模型假定存在著一個容量無限大,17,同步并行計算模型,SIMD分布存儲模型,采用一維線性連接的,SIMD,模型,簡記為,SIMD-LC,采用網(wǎng)孔連接的,SIMD,模型,簡記為,SIMD-MC,采用樹形連接的,SIMD,模型,簡記為,SIMD-TC,采用樹網(wǎng)連接的,SIMD,模型,簡記為,SIMD-MT,采用立方連接的,SIMD,模型,簡記為,SIMD-CC,采用立方環(huán)連接的,SIMD,模型,簡記為,SIMD-CCC,采用洗牌交換連接的,SIMD,模型,簡記為,SIMD-SE,采用蝶形連接的,SIMD,模型,簡介為,SIMD-BF,采用多級互聯(lián)網(wǎng)絡(luò)連接的,SIMD,模型,簡記為,SIMD-MIN,同步并行計算模型SIMD分布存儲模型,18,MIMD,異步計算模型,A,PRAM,模型,APRAM特點:,每個處理器都有其本地存儲器、局部時鐘和局部程序,處理器間的通信經(jīng)過共享全局存儲器,無全局時鐘,各處理器異步地獨立執(zhí)行各自的指令,處理器任何時間依賴關(guān)系需明確地在各處理器的程序中加入同步障(,Synchronization Barrier,),一條指令可在非確定但有限的時間內(nèi)完成。,MIMD異步計算模型APRAM模型APRAM特點:,19,MIMD,異步計算模型,PRAM,模型,APRAM,模型中有四類指令,:,全局讀,將全局存儲單元中的內(nèi)容讀入本地存儲器單元中,局部操作,對本地存儲器中的數(shù)執(zhí)行操作,其結(jié)果存入本地存儲器中,全局寫,將本地存儲器單元中的內(nèi)容寫入全本地存儲器單元中,同步,同步是計算中的一個邏輯點,在該點各處理器均需等待別的處理器到達后才能繼續(xù)執(zhí)行其局部程序,MIMD異步計算模型PRAM模型APRAM模型中有四類指,20,MIMD異步計算模型BSP模型,大同步并行,BSP,(,Bulk Synchronous Parallel,),模型,作為計算機語言和體系結(jié)構(gòu)之間的橋梁,由下述三個參數(shù)描述分布存儲的并行計算機模型:,處理器,/,存儲器模塊(下文簡稱處理器);,處

注意事項

本文(吉林大學多核程序設(shè)計第二章并行程序設(shè)計基礎(chǔ)并行計算基礎(chǔ)課件)為本站會員(494895****12427)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網(wǎng)速或其他原因下載失敗請重新下載,重復下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  sobing.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!