




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第一章 基本概念第二章 指令系統(tǒng)及CPU組成第三章 存儲(chǔ)系統(tǒng)第四章 輸入輸出系統(tǒng)第五章 標(biāo)量處理機(jī)第六章 向量處理機(jī)第七章 互連網(wǎng)絡(luò)第八章 并行處理機(jī)第九章 多處理機(jī)計(jì)算機(jī)組成與系統(tǒng)結(jié)構(gòu)10/2/20221第一章 基本概念計(jì)算機(jī)組成與系統(tǒng)結(jié)構(gòu)9/24/20221兩個(gè)或兩個(gè)以上處理機(jī)(包括PU和CU),通過高速互連網(wǎng)絡(luò)連接起來,在統(tǒng)一的操作系統(tǒng)管理下,實(shí)現(xiàn)指令以上級(jí)(任務(wù)級(jí)、作業(yè)級(jí))并行。按照Flynn分類法,多處理機(jī)系統(tǒng)屬于MIMD計(jì)算機(jī)。9.1 多處理機(jī)結(jié)構(gòu)9.2 多處理機(jī)性能模型9.3 多處理機(jī)的Cache一致性9.4 多處理機(jī)實(shí)例9.5 多處理機(jī)并行算法第九章 多處理機(jī)10/2/2022
2、2兩個(gè)或兩個(gè)以上處理機(jī)(包括PU和CU),通過高速互連網(wǎng)絡(luò)連接9.1 多處理機(jī)結(jié)構(gòu)多處理機(jī)系統(tǒng)由多個(gè)獨(dú)立的處理機(jī)組成,每個(gè)處理機(jī)都能夠獨(dú)立執(zhí)行自己的程序。它有多種分類方法:以松散偶合多處理機(jī)和緊密偶合多處理機(jī)兩種類型結(jié)構(gòu)說明多處理機(jī)的基本結(jié)構(gòu)和特點(diǎn)。9.1.1 松散偶合多處理機(jī)9.1.2 緊密偶合多處理機(jī)9.1.3 多處理機(jī)系統(tǒng)的特點(diǎn)10/2/202239.1 多處理機(jī)結(jié)構(gòu)多處理機(jī)系統(tǒng)由多個(gè)獨(dú)立的處理機(jī)組成,每個(gè)多處理機(jī)系統(tǒng)有多種分類方法:按照處理機(jī)之間的連接程度:緊密偶合和松散偶合多處理機(jī)按照是否共享主存儲(chǔ)器:共享存儲(chǔ)器和分布存儲(chǔ)器多處理機(jī)按照處理機(jī)是否相同:同構(gòu)型和異構(gòu)型多處理機(jī)按照處理機(jī)
3、的個(gè)數(shù):大規(guī)模并行處理機(jī)MPP和對(duì)稱多處理機(jī)SMP按照PE與IOP之間互連方式:對(duì)稱型:每個(gè)IOP能夠連接到所有PE上非對(duì)稱型:每個(gè)IOP只與一個(gè)PE連接。冗余對(duì)稱型:一個(gè)PE與多個(gè)IOP連接。按照存儲(chǔ)器的訪問方式:均均存儲(chǔ)器,UMA模型非均均存儲(chǔ)器,NUMA模型只有Cache,COMA模型多向量處理機(jī),機(jī)群系統(tǒng)(Cluster)等也稱為多處理機(jī)系統(tǒng)。10/2/20224多處理機(jī)系統(tǒng)有多種分類方法:9/24/20224處理機(jī)之間的連接頻帶比較低通過輸入輸出接口,處理機(jī)之間互為外圍設(shè)備進(jìn)行連接。例如,IBM公司的機(jī)器都可以通過通道到通道的連接器CTC (Channel To Channel)把兩
4、個(gè)不同計(jì)算機(jī)系統(tǒng)的IOP連接起來。通過并行口或串行口把多臺(tái)計(jì)算機(jī)連接起來。例如,用串行口加一個(gè)MODEL撥號(hào)上網(wǎng),也可以直接連接;多臺(tái)計(jì)算機(jī)之間的連接需要有多個(gè)接口。通過Ethernet網(wǎng)絡(luò)接口連接多臺(tái)計(jì)算機(jī)。速度達(dá)10Mb、100Mb、1Gb,Mynet已經(jīng)達(dá)到1.28Gb和2.56Gb。當(dāng)通信速度要求更高時(shí),可以通過一個(gè)通道和仲裁開關(guān)CAS (Channel and Arbiter Switch)直接載存儲(chǔ)器總線之間建立連接。在CAS中有一個(gè)高速的通信緩沖存儲(chǔ)器。9.1.1 松散偶合多處理機(jī)10/2/20225處理機(jī)之間的連接頻帶比較低9.1.1 松散偶合多處理機(jī)9/210/2/20226
5、9/24/2022610/2/202279/24/20227處理機(jī)之間共享主存儲(chǔ)器,通過高速總線或高速開關(guān)連接。每個(gè)CPU能夠訪問任意一個(gè)存儲(chǔ)器模塊通過映象部件MAP把全局邏輯地址變換成局部物理地址通過互連網(wǎng)絡(luò)尋找合適的路徑,并分解訪問存儲(chǔ)器的沖突多個(gè)輸入輸出處理機(jī)IOP也連接在互連網(wǎng)絡(luò)上,輸入輸出設(shè)備與CPU共享主存儲(chǔ)器。處理機(jī)個(gè)數(shù)不能太多,一般幾個(gè)到十幾個(gè)。緊密偶合方式要求有很高通信頻帶。可以采用如下措施:(1)采用高速互連網(wǎng)絡(luò)(2)增加存儲(chǔ)模塊個(gè)數(shù),一般nm,取12倍之間。(3)每個(gè)存儲(chǔ)模塊再分成多個(gè)小模塊,并采用流水線方式工作。(4)每個(gè)CPU都有自己的局部存儲(chǔ)器LM。(5)每個(gè)CPU
6、設(shè)置一個(gè)Cache。9.1.2 緊密偶合多處理機(jī)10/2/20228處理機(jī)之間共享主存儲(chǔ)器,通過高速總線或高速開關(guān)連接。9.1.10/2/202299/24/2022910/2/2022109/24/2022101、結(jié)構(gòu)靈活并行處理機(jī):專用,PE數(shù)很多(幾千個(gè)),固定有限的通信多處理機(jī): 通用,幾十個(gè), 高速靈活的通信2、程序并行性并行處理機(jī)的并行性存在于指令內(nèi)部,識(shí)別比較容易。多處理機(jī)的并行性存在于指令外部,在多個(gè)任務(wù)之間,識(shí)別難度較大。一個(gè)簡(jiǎn)單的例子:Y = A+B*C*D/E+F。用兩個(gè)處理機(jī):CPU1:B*C, A+F, A+B*C*D/E+FCPU2:D/E, B*C*D/E,9.1
7、.3 多處理機(jī)系統(tǒng)的特點(diǎn)10/2/2022111、結(jié)構(gòu)靈活9.1.3 多處理機(jī)系統(tǒng)的特點(diǎn)9/24/20223、并行任務(wù)派生并行處理機(jī)把同種操作集中,由指令直接啟動(dòng)各PE同時(shí)工作。多處理機(jī)用專門的指令來表示并發(fā)關(guān)系,一個(gè)任務(wù)開始執(zhí)行時(shí)能夠派生出與它并行執(zhí)行的另一些任務(wù)。如果任務(wù)數(shù)多于處理機(jī)數(shù),多余的任務(wù)進(jìn)入排隊(duì)器等待。4、進(jìn)程同步并行處理機(jī)僅一個(gè)CU,自然是同步的。多處理機(jī)執(zhí)行不同的指令,工作進(jìn)度不會(huì)也不必保持相同。先做完的要停下等待。有數(shù)據(jù)相關(guān)和控制相關(guān)也要停下等待。要采取特殊的同步措施來保持程序所要求的正確順序。5、資源分配和進(jìn)程調(diào)度并行處理機(jī)的PE是固定的,用屏蔽改變實(shí)際參加操作的PE數(shù)目
8、。多處理機(jī)執(zhí)行并發(fā)任務(wù),需用處理機(jī)的數(shù)目不固定,各處理機(jī)進(jìn)出任務(wù)的時(shí)刻不相同,所需共享資源的品種、數(shù)量隨時(shí)變化。資源分配和進(jìn)程調(diào)度問題,對(duì)整個(gè)系統(tǒng)的效率有很大的影響。10/2/2022123、并行任務(wù)派生9/24/202212引起峰值性能下降的原因:(1)由于處理機(jī)之間通信而產(chǎn)生的延遲。(2)一臺(tái)處理機(jī)與其它處理機(jī)同步所需的開銷。(3)當(dāng)沒有足夠多任務(wù)時(shí),一臺(tái)或多臺(tái)處理機(jī)處于空閑狀態(tài)。(4)由于一臺(tái)或多臺(tái)處理機(jī)執(zhí)行無用的工作。(5)系統(tǒng)控制和操作調(diào)度所需的開銷。研究多處理機(jī)的目的: 單處理機(jī)的速度提高很快,為什么還要研究多處理機(jī)?提前5年得到速度高10倍的機(jī)器。 或用1/10的價(jià)格獲得一臺(tái)高性
9、能的機(jī)器。在某些適合進(jìn)行并行處理得應(yīng)用領(lǐng)域,可以達(dá)到:提前10年得到速度高100倍的機(jī)器。 或用1/100的價(jià)格獲得一臺(tái)高性能的機(jī)器。9.2 多處理機(jī)性能模型10/2/202213引起峰值性能下降的原因:9.2 多處理機(jī)性能模型9/24/2并行性在很大程度上依賴于R/C比值,其中:R代表程序執(zhí)行時(shí)間,C代表通信開銷。通常:R/C比值小,并行性低。R/C比值大,并行性高。如果把作業(yè)分解成較大的塊,就能得到較大的R/C比值,但是所得到的并行性比最大可能的并行性要小得多。R/C比值是衡量任務(wù)粒度(Task Granularity)大小的尺度。粗粒度(Coarsegrain)并行:R/C比值比較大,通
10、信開銷小。細(xì)粒度(Finegrain)并行:R/C比值比較小,通信開銷大。細(xì)粒度并行需要的處理機(jī)多,粗粒度并行需要的處理機(jī)少。細(xì)粒度并行性的基本原理是把一個(gè)程序盡可能地分解成能并行執(zhí)行的小任務(wù)。在極端情況下,一個(gè)小任務(wù)只完成一個(gè)操作。指令級(jí)并行。10/2/202214并行性在很大程度上依賴于R/C比值,9/24/202214目標(biāo):由M個(gè)任務(wù)組成的程序,在N臺(tái)處理機(jī)組成的系統(tǒng)上運(yùn)行,求最短執(zhí)行時(shí)間?為了簡(jiǎn)單起見,基本模型僅考慮由兩臺(tái)處理機(jī)組成的系統(tǒng)。 總處理時(shí)間Rmax(MK,K)C(MK)K 其中:R:每個(gè)任務(wù)的執(zhí)行時(shí)間, C:通信開銷, K:任務(wù)分配參數(shù)。直觀看: 當(dāng)通信時(shí)間比較小時(shí),把M個(gè)
11、任務(wù)平均分給兩臺(tái)處理機(jī), 當(dāng)通信時(shí)間很大時(shí),把M個(gè)任務(wù)分配給一臺(tái)處理機(jī)。9.2.1 基本模型10/2/202215目標(biāo):由M個(gè)任務(wù)組成的程序,在N臺(tái)處理機(jī)組成的系統(tǒng)上運(yùn)行,求10/2/2022169/24/202216通信時(shí)間: C(M-K)K是一個(gè)開口向下的二次函數(shù), 任務(wù)執(zhí)行時(shí)間是兩根相交的直線。 當(dāng)通信時(shí)間比較大時(shí),總時(shí)間的最小值發(fā)生的兩個(gè)端點(diǎn), 當(dāng)通信時(shí)間比較小時(shí),總時(shí)間的最小值發(fā)生的中點(diǎn)。結(jié)論: (1)總時(shí)間的最小值只可能出現(xiàn)在中點(diǎn)或兩個(gè)端點(diǎn), (2)如果總時(shí)間的最小值發(fā)生在中點(diǎn) 即M個(gè)任務(wù)平均分給兩臺(tái)處理機(jī),必須滿足: M R R M/2 + C M/2 M/2 R/C M/2總時(shí)
12、間最短的結(jié)論:當(dāng)R/CM/2時(shí),把所有任務(wù)分配給同一臺(tái)處理機(jī),K0;當(dāng)R/CM/2時(shí),把任務(wù)平均地分配給兩臺(tái)處理機(jī),KM/2。10/2/202217通信時(shí)間:9/24/202217M個(gè)任務(wù)分配給N臺(tái)處理機(jī),求總處理時(shí)間的最小值。實(shí)際的最小值發(fā)生在極端分配情況下,或者將所有的任務(wù)集中在一臺(tái)處理機(jī)上,或者將任務(wù)平均分配給所有處理機(jī)。先討論平均分配方法:個(gè)任務(wù)平均分給臺(tái)處理機(jī)(P):11個(gè)任務(wù)平均分給臺(tái)處理機(jī)(P):9.2.2 N臺(tái)處理機(jī)系統(tǒng)的基本模型10/2/202218M個(gè)任務(wù)分配給N臺(tái)處理機(jī),求總處理時(shí)間的最小值。9.2.2 M個(gè)任務(wù)平均分配給N臺(tái)處理機(jī)的最佳分配方法:有 臺(tái)處理機(jī),每臺(tái)分給
13、個(gè)任務(wù);如果M/N0,則:另有1臺(tái)處理機(jī)分得剩下的 個(gè)任務(wù);剩下的 臺(tái)處理機(jī)不分配任何任務(wù)。例如:101個(gè)任務(wù)平均分給50臺(tái)處理機(jī): 有33臺(tái)處理機(jī),每臺(tái)分給3個(gè)任務(wù); 另有臺(tái)處理機(jī)分給個(gè)任務(wù); 剩下的16臺(tái)處理機(jī)不分配任務(wù)。10/2/202219M個(gè)任務(wù)平均分配給N臺(tái)處理機(jī)的最佳分配方法:9/24/202假設(shè)Ki個(gè)任務(wù)分給了第臺(tái)處理機(jī):第一項(xiàng)求出N臺(tái)處理機(jī)中最大執(zhí)行時(shí)間;第二項(xiàng)計(jì)算出Ki與(MKi)任務(wù)之間兩兩通信的開銷時(shí)間;第二項(xiàng)是關(guān)于Ki的二次函數(shù)。其中,Ki最多有3個(gè)取值: 、 、0當(dāng) M 是 N 的倍數(shù)時(shí),當(dāng)R/CM/2時(shí)采用平均分配方法, 當(dāng)R/CM/2時(shí)采用集中分配方法。10/2
14、/202220假設(shè)Ki個(gè)任務(wù)分給了第臺(tái)處理機(jī):9/24/202220多處理機(jī)系統(tǒng)的加速比:一個(gè)計(jì)算問題在一臺(tái)處理機(jī)上運(yùn)行時(shí)間與在多處理機(jī)系統(tǒng)上運(yùn)行時(shí)間的比值稱為多處理機(jī)系統(tǒng)的加速比當(dāng)M是N的倍數(shù)時(shí),有:如果M和N較小,R/C較大,即分母中的第一項(xiàng)遠(yuǎn)大于第二項(xiàng),則加速比與處理機(jī)臺(tái)數(shù)N成正比。當(dāng)處理機(jī)臺(tái)數(shù)N很大,加速比 ,趨近于一個(gè)常數(shù)。這時(shí)如果再增加處理機(jī),性能的提高很小。10/2/202221多處理機(jī)系統(tǒng)的加速比:9/24/202221每個(gè)任務(wù)要和其它所有任務(wù)通信,而通信的內(nèi)容相同。把M個(gè)任務(wù)分配給N臺(tái)處理機(jī)時(shí),當(dāng)M是N的倍數(shù)時(shí),總處理時(shí)間RMNCN很明顯,這個(gè)函數(shù)有一個(gè)極小值。 (RMNCN
15、)N0 解得:因此得到最小的總處理時(shí)間:這種模型的加速比為:當(dāng)M是N的倍數(shù)時(shí),該多處理機(jī)系統(tǒng)的最大加速比為:9.2.3 通信開銷為線性函數(shù)的模型10/2/202222每個(gè)任務(wù)要和其它所有任務(wù)通信,而通信的內(nèi)容相同。9.2.3 由于通信與計(jì)算可以在兩個(gè)獨(dú)立的功能部件中進(jìn)行,因此,能夠采用重疊或流水線方式并行進(jìn)行。一個(gè)理想模型,通信與計(jì)算完全重疊。對(duì)于兩臺(tái)處理機(jī)的系統(tǒng):當(dāng)R/CM/2時(shí),執(zhí)行時(shí)間與通信時(shí)間的交點(diǎn)就是總處理時(shí)間的最小值; 當(dāng)R/CM/2時(shí),采用平均分配方法,在這一點(diǎn)運(yùn)行時(shí)間足夠長(zhǎng),完全能夠屏蔽通信時(shí)間。9.2.4 通信與計(jì)算完全重疊的模型10/2/202223由于通信與計(jì)算可以在兩個(gè)
16、獨(dú)立的功能部件中進(jìn)行,因此,能夠采用10/2/2022249/24/202224直線與二次曲線的交點(diǎn)是關(guān)鍵點(diǎn):R(MK)C(MK)K即:KR/C (其中:1KM/2)總處理時(shí)間R(MR/C),兩臺(tái)處理機(jī)系統(tǒng)的加速比在1與2之間;當(dāng)R/CM/2,即把任務(wù)平均分配給兩臺(tái)處理機(jī)時(shí),加速比最大;當(dāng)R/C逐漸減為1時(shí),加速比也逐漸減為1,最優(yōu)分配變得越來越不均衡了。至于N臺(tái)處理機(jī)的系統(tǒng):當(dāng)N比較大時(shí),近似為:處理機(jī)數(shù)目N由下面一個(gè)關(guān)于R/C和M的函數(shù)式 給出。10/2/202225直線與二次曲線的交點(diǎn)是關(guān)鍵點(diǎn):R(MK)C(MK)K9通信鏈路隨的增加而增加,讓每臺(tái)處理機(jī)與別的任何一臺(tái)處理機(jī)都有專門的鏈路
17、相連。當(dāng)任務(wù)數(shù)M是處理機(jī)數(shù)N的倍數(shù)時(shí),盡可能平分任務(wù)可以使總處理時(shí)間達(dá)到最?。喊烟幚頇C(jī)臺(tái)數(shù)作為自變量,這個(gè)函數(shù)有一個(gè)極大值。由于分母大于1,因此總處理時(shí)間的極大值出現(xiàn)在2時(shí),當(dāng)=2時(shí),隨著處理機(jī)臺(tái)增加,總處理時(shí)間肯定減小。9.2.5 具有多條通信鏈的模型10/2/202226通信鏈路隨的增加而增加,讓每臺(tái)處理機(jī)與別的任何一臺(tái)處理機(jī)都為了驗(yàn)證N臺(tái)處理機(jī)是否比一臺(tái)處理機(jī)效果更佳:相等點(diǎn)在:在相等點(diǎn)參數(shù)R/C與N成反比例,N越大,允許的粒度越小;N臺(tái)處理機(jī)的總性能等價(jià)于一臺(tái)處理機(jī)??偨Y(jié)上面幾個(gè)模型,可以得出如下結(jié)論:(1)多處理機(jī)系統(tǒng)結(jié)構(gòu)所需的額外開銷,包括調(diào)度,對(duì)共享資源的競(jìng)爭(zhēng),同步,處理機(jī)之間通
18、信等。(2)當(dāng)處理機(jī)臺(tái)數(shù)增加時(shí),額外開銷時(shí)間也增加。實(shí)際上,額外開銷的增加可能比處理機(jī)數(shù)目的線性增加更快。(3)R/C比值越大,越有利于計(jì)算過程。如果采用粗粒度,能夠獲得較大的R/C比值;但是并行程度將大為降低。(4)為了使價(jià)格和性能都比較合理,處理機(jī)數(shù)目存在一個(gè)極大值,這個(gè)值主要依賴于機(jī)器的系統(tǒng)結(jié)構(gòu)、基本技術(shù)(尤其是通信技術(shù))和具體的應(yīng)用問題。10/2/202227為了驗(yàn)證N臺(tái)處理機(jī)是否比一臺(tái)處理機(jī)效果更佳:9/24/202在并行處理機(jī)和多處理機(jī)系統(tǒng)中,采用局部Cache會(huì)引起Cache與共享存儲(chǔ)器之間的一致性問題。出現(xiàn)不一致性問題的原因有三個(gè):共享可寫的數(shù)據(jù)進(jìn)程遷移I/O傳輸。9.3.1
19、問題由來9.3.2 監(jiān)聽協(xié)議9.3.3 基于目錄的協(xié)議9.3 多處理機(jī)的Cache一致性10/2/202228在并行處理機(jī)和多處理機(jī)系統(tǒng)中,采用局部Cache會(huì)引起Cac1、寫共享數(shù)據(jù)引起的不一致性使用多個(gè)局部Cache時(shí),可能發(fā)生Cache不一致性問題:當(dāng)P1把X的值寫為X之后,如果P1采用寫通過方式,內(nèi)存中的內(nèi)容也變?yōu)閄,但是P2處理機(jī)Cache中的內(nèi)容還是X。 如果P1采用寫回策法,內(nèi)存中的內(nèi)容還是X,當(dāng)P2處理機(jī)要讀X時(shí),讀到的是X而不是X。9.3.1 問題由來10/2/2022291、寫共享數(shù)據(jù)引起的不一致性9.3.1 問題由來9/24/22、進(jìn)程遷移引起的數(shù)據(jù)不一致性P1和P2中都
20、有共享數(shù)據(jù)X的拷貝,P2修改了X,并采用寫通過方式,所以內(nèi)存中的X修改成了X。如果該進(jìn)程遷移到P1上,P1的Cache中仍然是X。P1中有共享數(shù)據(jù)X的拷貝,而P2中沒有該共享數(shù)據(jù),P1進(jìn)程對(duì)X進(jìn)行了修改,如果該進(jìn)程遷移到了P2上,P2運(yùn)行時(shí)從內(nèi)存中讀到是X。10/2/2022302、進(jìn)程遷移引起的數(shù)據(jù)不一致性9/24/2022303、I/O造成數(shù)據(jù)不一致性如果P1和P2在各自的局部Cache中都有X的拷貝,當(dāng)I/O將一個(gè)新數(shù)據(jù)X寫入存儲(chǔ)器時(shí)就導(dǎo)致存儲(chǔ)器和Cache的數(shù)據(jù)不一致。如果兩個(gè)局部Cache中都有X的拷貝,并采用寫回方式,當(dāng)P1把X修改成X之后;輸出部件讀X,存儲(chǔ)器把X傳給輸出部件一種
21、解決I/O操作引起數(shù)據(jù)不一致性的方法是把I/O處理機(jī)分別連接到各自的局部Cache上。10/2/2022313、I/O造成數(shù)據(jù)不一致性9/24/202231有兩類解決Cache不一致性問題的協(xié)議:在總線互連的多處理機(jī)系統(tǒng)中,通常采用監(jiān)聽協(xié)議。在其他多處理機(jī)系統(tǒng)中,通常采用基于目錄協(xié)議。1、兩種監(jiān)聽協(xié)議使用監(jiān)聽協(xié)議,有兩種方法:方法一:寫無效(Write Invalidate)策略,在本地Cache的數(shù)據(jù)塊修改時(shí)使遠(yuǎn)程數(shù)據(jù)塊都無效。方法二:寫更新(Write Update)策略,在本地Cache數(shù)據(jù)塊修改時(shí)通過總線把新的數(shù)據(jù)塊廣播給含該塊的所有其他Cache采用寫無效或?qū)懜虏呗耘cCache采用
22、寫回方式(Write Back)還是寫通過方式(Write Through)無關(guān)。如果Cache采用的寫通過方式,在使遠(yuǎn)程數(shù)據(jù)塊無效或更新其他Cache的同時(shí),還要同時(shí)修改共享存儲(chǔ)器中的內(nèi)容。9.3.2 監(jiān)聽協(xié)議10/2/202232有兩類解決Cache不一致性問題的協(xié)議:9.3.2 監(jiān)聽協(xié)議由于寫更新策略在本地Cache修改時(shí)需要通過總線把修改過的數(shù)據(jù)塊廣播給所有含該數(shù)據(jù)塊的其他Cache,增加了總線的負(fù)擔(dān)。大部分多處理機(jī)系統(tǒng)使用寫無效策略。10/2/202233由于寫更新策略在本地Cache修改時(shí)需要通過總線把修改過的數(shù)2、采用寫通過方式的Cache數(shù)據(jù)塊有兩種狀態(tài): 有效和無效。有效表示
23、該數(shù)據(jù)塊內(nèi)容正確,兩種狀態(tài)的轉(zhuǎn)換如下圖:采用寫通過方式的Cache狀態(tài)圖RL、WL表示本地處理機(jī)對(duì)Cache的讀和寫操作,RR、WR表示遠(yuǎn)程處理機(jī)對(duì)Cache中相同內(nèi)容數(shù)據(jù)的讀和寫操作。10/2/2022342、采用寫通過方式的Cache9/24/2022343、采用寫回方式的Cache只讀狀態(tài)表示整個(gè)系統(tǒng)中有多個(gè)數(shù)據(jù)塊拷貝是正確的,讀寫狀態(tài)表示數(shù)據(jù)塊至少被修改過一次,存儲(chǔ)器中相應(yīng)數(shù)據(jù)塊還沒有修改,即在整個(gè)系統(tǒng)中只有一個(gè)數(shù)據(jù)塊拷貝是正確的。對(duì)于只讀的數(shù)據(jù)塊,本地的和遠(yuǎn)程的讀操作都是安全的,本地的寫操作將使?fàn)顟B(tài)轉(zhuǎn)移為讀寫,遠(yuǎn)程的寫操作將使之變?yōu)闊o效。對(duì)于讀寫狀態(tài)的數(shù)據(jù)塊,本地的讀、寫操作都是安全
24、的,而遠(yuǎn)程的讀操作將數(shù)據(jù)塊傳遞給遠(yuǎn)程處理機(jī)的Cache,使兩個(gè)Cache都轉(zhuǎn)移至只讀狀態(tài),遠(yuǎn)程寫操作使遠(yuǎn)程處理機(jī)Cache轉(zhuǎn)移至讀寫狀態(tài),而本地Cache轉(zhuǎn)移至無效狀態(tài)。對(duì)于無效狀態(tài),本地讀操作,使?fàn)顟B(tài)轉(zhuǎn)移至只讀;本地寫操作,使?fàn)顟B(tài)轉(zhuǎn)移至讀寫,同時(shí)使其他Cache中相應(yīng)數(shù)據(jù)塊的狀態(tài)轉(zhuǎn)移為無效狀態(tài);其他操作不會(huì)引起從無效狀態(tài)向其他狀態(tài)的轉(zhuǎn)移。10/2/2022353、采用寫回方式的Cache9/24/202235RL:本地處理機(jī)對(duì)Cache的讀操作WL:本地處理機(jī)對(duì)Cache的寫操作 RR:遠(yuǎn)程處理機(jī)對(duì)Cache中相同內(nèi)容數(shù)據(jù)的讀操作 WR:遠(yuǎn)程處理機(jī)對(duì)Cache中相同內(nèi)容數(shù)據(jù)的寫操作10/2/
25、202236RL:本地處理機(jī)對(duì)Cache的讀操作9/24/2022364、寫一次(Write-Once)協(xié)議方法:第一次寫Cache采用寫通過方式,以后采用寫回方式。整個(gè)系統(tǒng)中只有一份正確的拷貝。為了區(qū)分第一次寫,把“讀寫”狀態(tài)分為:“保留(Reserved)”和“重寫(Dirty)”。共有4種狀態(tài)(1) 有效(Valid, 相當(dāng)于寫回方式中的只讀):(2) 無效(Invalid):在Cache中找不到或Cache中的數(shù)據(jù)塊已作廢。(3) 保留(Reserved):數(shù)據(jù)從存儲(chǔ)器讀入Cache后只被寫過一次,Cache和存儲(chǔ)器中的拷貝都是正確。(4) 重寫(Dirty):Cache中的數(shù)據(jù)塊被寫
26、過多次,而且是唯一正確的數(shù)據(jù)塊,此時(shí)存儲(chǔ)器中的數(shù)據(jù)塊也不是正確的。寫一次協(xié)議的主要優(yōu)缺點(diǎn):優(yōu)點(diǎn):減少大量的無效操作,提高了總線效率。缺點(diǎn):當(dāng)主存儲(chǔ)器的內(nèi)容無效時(shí),讀缺失引起的總線讀操作必須禁止訪問主存儲(chǔ)器,而大多數(shù)總線不支持這種操作。 IEEE Futurebus+總線支持該操作。10/2/2022374、寫一次(Write-Once)協(xié)議9/24/202237寫一次協(xié)議的狀態(tài)圖RL:本地處理機(jī)對(duì)Cache的讀操作WL:本地處理機(jī)對(duì)Cache的寫操作 RR:遠(yuǎn)程處理機(jī)對(duì)Cache中相同內(nèi)容數(shù)據(jù)的讀操作 WR:遠(yuǎn)程處理機(jī)對(duì)Cache中相同內(nèi)容數(shù)據(jù)的寫操作10/2/202238寫一次協(xié)議的狀態(tài)圖9
27、/24/202238CPU讀Cache:有兩種可能性。 (1)數(shù)據(jù)塊在Cache中存在(包括有效、保留或重寫),CPU直接讀取數(shù)據(jù)。 (2)Cache中的數(shù)據(jù)塊處于無效狀態(tài)。 如果存在處于有效、保留或重寫狀態(tài)的相應(yīng)數(shù)據(jù)塊,則將其調(diào)入本地Cache;在相應(yīng)數(shù)據(jù)塊處于重寫狀態(tài)時(shí),還要同時(shí)禁止存儲(chǔ)器操作。 如果不存在處于有效、保留或重寫狀態(tài)的相應(yīng)數(shù)據(jù)塊,則直接從存儲(chǔ)器中讀入(只有存儲(chǔ)器中是唯一正確的拷貝)。 把讀入Cache中的相應(yīng)數(shù)據(jù)塊置為“有效”狀態(tài)。10/2/202239CPU讀Cache:有兩種可能性。9/24/202239CPU寫Cache:也有兩種可能。 (1)寫命中,當(dāng)Cache處于“
28、有效”狀態(tài)時(shí),采用寫通過方式,把寫入Cache的內(nèi)容同時(shí)寫入存儲(chǔ)器,將Cache的狀態(tài)轉(zhuǎn)移為“保留”,將其他Cache的相應(yīng)數(shù)據(jù)塊狀態(tài)置為“無效”; 當(dāng)Cache處于“保留”或“重寫”態(tài)時(shí),使用寫回方式,Cache的狀態(tài)轉(zhuǎn)移至“重寫”,其他的存有相同內(nèi)容的Cache處于“無效”態(tài)。 (2)寫不命中,將數(shù)據(jù)塊調(diào)入Cache,采用寫通過方式,同時(shí)寫存儲(chǔ)器;將本地Cache的狀態(tài)置為“保留”,同時(shí)將其他Cache的狀態(tài)置為“無效”。10/2/202240CPU寫Cache:也有兩種可能。9/24/202240 在非總線結(jié)構(gòu)的多處理機(jī)系統(tǒng)中,采用基于目錄的Cache一致性協(xié)議。1、Cache目錄結(jié)構(gòu)C
29、ache目錄中存放的內(nèi)容是大量的指針,用以指明塊拷貝的地址,每個(gè)目錄項(xiàng)還有一個(gè)重寫位,指明是否有一個(gè)Cache允許寫入數(shù)據(jù)。根據(jù)Cache目錄的存放形式,有集中式和分布式兩種。根據(jù)目錄的結(jié)構(gòu),目錄協(xié)議分成三類:全映射(Full-Map)目錄:存放全局存儲(chǔ)器每個(gè)塊的有關(guān)數(shù)據(jù)。有限(Limited)目錄:每個(gè)目錄項(xiàng)的指針數(shù)固定。鏈?zhǔn)?Chained)目錄:把目錄分布到所有Cache中。9.3.3 基于目錄的協(xié)議10/2/202241 在非總線結(jié)構(gòu)的多處理機(jī)系統(tǒng)中,采用基于目錄的Cache一目錄的使用規(guī)則: 當(dāng)一個(gè)CPU對(duì)Cache進(jìn)行寫操作時(shí),要根據(jù)Cache目錄中的內(nèi)容將所有其他存有相同內(nèi)容的所
30、有Cache拷貝無效,并置重寫位。 在CPU對(duì)Cache進(jìn)行讀操作時(shí),如果讀命中,澤直接讀Cache即可。 如果重寫位為“0”,則從主存或其他Cache中讀入該塊,并修改目錄。10/2/202242目錄的使用規(guī)則:9/24/2022422、全映射目錄目錄項(xiàng)中有N個(gè)處理機(jī)位和一個(gè)重寫位。處理機(jī)位表示相應(yīng)處理機(jī)對(duì)應(yīng)的Cache塊的狀態(tài)。只有一個(gè)處理機(jī)的重寫位為“1”,則該處理機(jī)可以對(duì)該塊進(jìn)行寫操作。Cache的每個(gè)數(shù)據(jù)塊有兩個(gè)狀態(tài)位。一位表示數(shù)據(jù)塊是否有效,另一位表示有效塊是否允許寫。10/2/2022432、全映射目錄9/24/202243從第二種狀態(tài)(b)轉(zhuǎn)移至第三種狀態(tài)(c)的過程如下:(1
31、)Cache3發(fā)現(xiàn)包含X單元的塊是有效的,但是不允許寫(2)Cache3向包含X單元的存儲(chǔ)器模塊發(fā)寫請(qǐng)求,并暫停P3工作(3)該存儲(chǔ)器模塊發(fā)無效請(qǐng)求至Cache1和Cache2(4)Cache1和Cache2接到無效請(qǐng)求后,將對(duì)應(yīng)塊置為無效態(tài), 并發(fā)回答信號(hào)給存儲(chǔ)器模塊。(5)存儲(chǔ)器模塊接到Cache1和Cache2的回答信號(hào)后,置重寫位為“1”,清除指向Cache1和Cache2的指針,發(fā)允許寫信號(hào)到Cache3。(6)Cache3接到允許寫信號(hào),更新Cache狀態(tài),并激活P3。優(yōu)點(diǎn):全映射目錄協(xié)議的效率比較高。缺點(diǎn):開銷與處理機(jī)數(shù)目的平方成正比, 不具有擴(kuò)展性。10/2/202244從第二
32、種狀態(tài)(b)轉(zhuǎn)移至第三種狀態(tài)(c)的過程如下:9/243、有限目錄當(dāng)處理機(jī)數(shù)目為N時(shí),限制目錄大小為O(N log2 N)。目錄指針需要對(duì)N進(jìn)行二進(jìn)制編碼,每個(gè)指針占log2 N位,目錄所占的總存儲(chǔ)空間與(Nlog2 N)成正比。當(dāng)Cache1和Cache2中都有X的拷貝時(shí),若P3請(qǐng)求訪問X,則必須在在Cache1和Cache2中選擇一個(gè)使之無效,這種替換過程稱為驅(qū)逐。有限目錄的驅(qū)逐需要一種驅(qū)逐策略,驅(qū)逐策略的好壞對(duì)系統(tǒng)的性能具有很大的影響。驅(qū)逐策略與Cache替換策略在很多方面是相同的。10/2/2022453、有限目錄9/24/20224510/2/2022469/24/2022464.
33、鏈?zhǔn)侥夸浲ㄟ^維護(hù)一個(gè)目錄指針鏈來跟蹤共享數(shù)據(jù)拷貝。當(dāng)P1讀X時(shí),存儲(chǔ)器送X到Cache1,同時(shí)寫Cache1的一個(gè)鏈結(jié)束指針CT,在存儲(chǔ)器中也保存一個(gè)指向Cache1的指針。當(dāng)P2讀X時(shí),存儲(chǔ)器送X給Cache2,同時(shí)給Cache2一個(gè)指向Cache1的指針,存儲(chǔ)器則保存一個(gè)指向Cache2的指針。當(dāng)某一個(gè)處理機(jī)需要寫X時(shí),它必須沿整個(gè)目錄鏈發(fā)送一個(gè)數(shù)據(jù)無效信息。在收到所有相關(guān)處理機(jī)的回答信號(hào)之后,存儲(chǔ)器才給該處理機(jī)寫允許權(quán)。當(dāng)Cache中的數(shù)據(jù)塊需要替換時(shí),要把該Cache從目錄鏈中刪除。有如下解決辦法: (1)把Cachei+1的指針指向Cachei-1。在Cachei中存放新數(shù)據(jù)塊。 (
34、2)使Cachei及在鏈中位于其后的所有Cache中的單元X無效。 (3)使用雙向鏈。在替換時(shí)不再需要遍歷整個(gè)鏈。 但指針增加了一倍,一致性協(xié)議也更加復(fù)雜。10/2/2022474. 鏈?zhǔn)侥夸?/24/202247優(yōu)點(diǎn):不限制共享數(shù)據(jù)塊的拷貝數(shù)目,又保持了可擴(kuò)展性。指針的長(zhǎng)度以處理機(jī)數(shù)目的對(duì)數(shù)關(guān)系增長(zhǎng),Cache的每個(gè)數(shù)據(jù)塊的指針數(shù)目與處理機(jī)數(shù)目無關(guān)。缺點(diǎn):鏈?zhǔn)侥夸浀膹?fù)雜程度超過了前兩種目錄。10/2/202248優(yōu)點(diǎn):不限制共享數(shù)據(jù)塊的拷貝數(shù)目,又保持了可擴(kuò)展性。9/24多處理機(jī)系統(tǒng)主要有四大類: (1)多向量處理機(jī)系統(tǒng): 如:CRAY YMP-90,NEC SX-3和FUJITSU VP-
35、2000 (2)SMP(Symmetry MultiProcessors)對(duì)稱多處理機(jī) SMP(Shared Memory mulptiProcessors)共享存儲(chǔ)多處理機(jī) 如:SGI Challenge、Sun SparcCenter 2000 (3)MPP(massively parallel processing)大規(guī)模并行處理機(jī) 如:Intel Paragon,CM-5,Cray T3D (4)Cluster 機(jī)群系統(tǒng)(NOW或COM)9.4.1 大規(guī)模并行處理機(jī)(MPP)9.4.2 對(duì)稱多處理機(jī)(SMP)9.4.3 機(jī)群系統(tǒng)(Cluster)9.4 多處理機(jī)實(shí)例10/2/20224
36、9多處理機(jī)系統(tǒng)主要有四大類:9.4 多處理機(jī)實(shí)例9/24/20科學(xué)計(jì)算中的重大課題要求提供的性能:(1)Teraflops計(jì)算能力(2)Terabyte主存儲(chǔ)器(3)Terabyte/s 輸入輸出頻帶寬度目前,速度還慢1000倍左右,存儲(chǔ)容量和I/O帶寬差距更大??茖W(xué)計(jì)算中的重大課題:全球氣候預(yù)報(bào)、基因工程、飛行動(dòng)力學(xué)、海洋環(huán)流、流體動(dòng)力學(xué)、超導(dǎo)建模、半導(dǎo)體建模、量子染色動(dòng)力學(xué)、視覺采用的關(guān)鍵技術(shù):VLSI技術(shù)、可擴(kuò)展技術(shù)、共享虛擬存儲(chǔ)技術(shù)虛擬共享存儲(chǔ)器(Shared Virtual Memory)也稱為:共享分布存儲(chǔ)器(Distributed Shared Memory)物理上分布存儲(chǔ)器,邏
37、輯上共享存儲(chǔ)器。9.4.1 大規(guī)模并行處理機(jī)(MPP)10/2/202250科學(xué)計(jì)算中的重大課題要求提供的性能:9.4.1 大規(guī)模并虛擬共享存儲(chǔ)器的優(yōu)點(diǎn): 編程容易,系統(tǒng)結(jié)構(gòu)靈活,可擴(kuò)充性好,有較好的軟件移植性。與消息傳遞方式相比:程序的運(yùn)行效率高,主要原因:(1)數(shù)據(jù)塊緩存在本地(內(nèi)存或Cache中),可以多次使用。(2)通信時(shí)間分散,提高了并行性。(3)擴(kuò)大存儲(chǔ)空間,減少換頁操作。虛擬共享存儲(chǔ)器實(shí)現(xiàn)途徑:(1)硬件實(shí)現(xiàn),利用Cache技術(shù)。需要增加專用硬件。(2)操作系統(tǒng)和庫實(shí)現(xiàn),通過虛擬存儲(chǔ)機(jī)制取得共享和一致性。 在松耦合的分布存儲(chǔ)多處理機(jī)上,不需要增加任何硬件。(3)編譯實(shí)現(xiàn),自動(dòng)將共
38、享訪問轉(zhuǎn)換成同步和一致原語。 大多數(shù)系統(tǒng)采用途徑(1)和(2),或這兩種途徑結(jié)合實(shí)現(xiàn)。10/2/202251虛擬共享存儲(chǔ)器的優(yōu)點(diǎn):9/24/2022511、同步MIMD機(jī)器SIMD與MIMD的優(yōu)點(diǎn)結(jié)合在一起。CM-5同時(shí)支持SIMD與MIMD兩種并行計(jì)算方式。數(shù)據(jù)并行可以采用SIMD、多SIMD或同步MIMD模式。32到16384個(gè)處理器結(jié)點(diǎn),每個(gè)結(jié)點(diǎn)有一個(gè)SPARC處理機(jī),32MB存儲(chǔ)器,64位浮點(diǎn)和整數(shù)操作,128Mflops向量處理部件10/2/2022521、同步MIMD機(jī)器9/24/202252控制處理機(jī)到幾十臺(tái),根據(jù)需要配置存儲(chǔ)器和磁盤。輸入輸出接口與圖形設(shè)備、海量存儲(chǔ)器及高性能網(wǎng)
39、絡(luò)相連。占地面積為30米30米,峰值速度超過Tflops。三個(gè)網(wǎng)絡(luò):數(shù)據(jù)網(wǎng)絡(luò)、控制網(wǎng)絡(luò)和診斷網(wǎng)絡(luò)。數(shù)據(jù)網(wǎng)絡(luò)提供點(diǎn)對(duì)點(diǎn)通信??刂凭W(wǎng)絡(luò)提供廣播、同步、掃描和系統(tǒng)管理功能。診斷網(wǎng)絡(luò)從后臺(tái)訪問所有系統(tǒng)硬件, 測(cè)試系統(tǒng)完整性,檢測(cè)和隔離錯(cuò)誤。數(shù)據(jù)網(wǎng)絡(luò)和控制網(wǎng)絡(luò)有很好的可擴(kuò)展性,與處理機(jī)類型無關(guān)??梢詣澐殖梢粋€(gè)或多個(gè)分區(qū)供用戶使用每個(gè)分區(qū)一臺(tái)控制處理機(jī),一組處理結(jié)點(diǎn),數(shù)據(jù)和控制網(wǎng)絡(luò)的專用部分。允許任何分區(qū)中的進(jìn)程可以訪問任何I/O設(shè)備。10/2/202253控制處理機(jī)到幾十臺(tái),根據(jù)需要配置存儲(chǔ)器和磁盤。9/24/22、CM-5網(wǎng)絡(luò)結(jié)構(gòu)數(shù)據(jù)網(wǎng)絡(luò)采用胖樹型網(wǎng),數(shù)據(jù)處理結(jié)點(diǎn)、控制處理機(jī)和I/O通道都位于胖樹的葉
40、子上。利用胖樹的層次結(jié)構(gòu)特性,可以劃分一棵子樹給一個(gè)用戶。采用4元胖樹實(shí)現(xiàn),每個(gè)內(nèi)部開關(guān)結(jié)點(diǎn)由n個(gè)尋徑器芯片組成。每個(gè)尋徑器與4個(gè)子芯片和2個(gè)或4個(gè)父芯片相連??梢苑峙洳煌淖訕涮幚聿煌淖鳂I(yè),子樹的大小可以任意。為了把消息從一臺(tái)處理機(jī)傳送到另一臺(tái)處理機(jī),首先沿樹將消息向上傳送到離兩臺(tái)處理機(jī)最近的公共祖先,然后向下傳送到目的處理機(jī)。每臺(tái)處理機(jī)與數(shù)據(jù)網(wǎng)絡(luò)有兩條連接通路,每個(gè)葉子結(jié)點(diǎn)的輸入和輸出的頻寬為40兆字節(jié)/秒。當(dāng)一個(gè)消息沿樹向上傳送時(shí),使用哪條父連接通路則有幾種選擇。10/2/2022542、CM-5網(wǎng)絡(luò)結(jié)構(gòu)9/24/20225410/2/2022559/24/2022553、控制處理機(jī)控
41、制處理機(jī)由CPU、存儲(chǔ)器、本地磁盤、網(wǎng)絡(luò)接口、以太網(wǎng)組成。它相當(dāng)于一臺(tái)標(biāo)準(zhǔn)工作站。網(wǎng)絡(luò)接口通過控制網(wǎng)絡(luò)和數(shù)據(jù)網(wǎng)絡(luò)使處理機(jī)與系統(tǒng)的其它部分相連??刂铺幚頇C(jī)專門執(zhí)行管理功能,不需要高性能的運(yùn)算部件。每臺(tái)控制處理機(jī)都能夠運(yùn)行操作系統(tǒng),負(fù)責(zé)并行處理資源的管理。一部分控制處理機(jī)管理用戶區(qū)的計(jì)算資源,其它管理I/O資源。10/2/2022563、控制處理機(jī)9/24/2022564、處理結(jié)點(diǎn)SPARC處理器,重疊寄存器窗技術(shù),實(shí)現(xiàn)快速的進(jìn)程切換,使不同時(shí)間不同用戶分區(qū)能夠動(dòng)態(tài)地使用處理結(jié)點(diǎn)。通過控制網(wǎng)絡(luò)和數(shù)據(jù)網(wǎng)絡(luò)將結(jié)點(diǎn)與系統(tǒng)的其它部分相連。向量部件執(zhí)行由標(biāo)量處理機(jī)發(fā)出的向量指令,每個(gè)向量部件有一個(gè)流水ALU
42、和64個(gè)64位的寄存器。每條向量指令可能傳送給一個(gè)向量部件、或一對(duì)向量部件、或同時(shí)廣播給所有4個(gè)向量部件。標(biāo)量處理機(jī)負(fù)責(zé)地址轉(zhuǎn)換和循環(huán)控制,向量處理部件的操作與標(biāo)量處理部件并行執(zhí)行。每個(gè)結(jié)點(diǎn)的峰值速度為128Mflops。16384個(gè)處理結(jié)點(diǎn)的總峰值速度為:21427221 Mflops=2Tflops網(wǎng)絡(luò)的系統(tǒng)結(jié)構(gòu)設(shè)計(jì),做到與所選擇的處理器無關(guān)。提供更換處理機(jī)提供系統(tǒng)的性能。10/2/2022574、處理結(jié)點(diǎn)9/24/20225710/2/2022589/24/20225810/2/2022599/24/2022591、概述SMP稱為共享存儲(chǔ)多處理機(jī)(Shared Memory mulpti
43、Processors),也稱為對(duì)稱多處理機(jī)(Symmetry MultiProcessors)。有三種模型:(1) UMA多處理機(jī)均勻存儲(chǔ)器存取模型 (Uniform Memory Access)存儲(chǔ)器被所有處理機(jī)均勻共享處理機(jī)對(duì)所有存儲(chǔ)單元具有相同的存取時(shí)間。每臺(tái)處理機(jī)有局部Cache。外圍設(shè)備可以共享。9.4.2 對(duì)稱多處理機(jī)(SMP)10/2/2022601、概述9.4.2 對(duì)稱多處理機(jī)(SMP)9/24/2022(2) NUMA多處理機(jī)非均勻存儲(chǔ)器存?。∟onuniform Memory Access)模型存儲(chǔ)器訪問時(shí)間隨存儲(chǔ)單元的位置不同而變化。共享存儲(chǔ)器在物理上是分布在所有處理機(jī)中
44、的本地存儲(chǔ)器。所有局部存儲(chǔ)器地址空間的集合就組成了全局地址空間。處理機(jī)訪問本地存儲(chǔ)器比較快,訪問屬于另一臺(tái)處理機(jī)的遠(yuǎn)程存儲(chǔ)器則比較慢,因?yàn)橥ㄟ^互連網(wǎng)絡(luò)會(huì)產(chǎn)生附加的時(shí)間延遲。10/2/202261(2) NUMA多處理機(jī)9/24/202261(3)COMA多處理機(jī)只有Cache的存儲(chǔ)器結(jié)構(gòu)(Cache-Only Memory Architecture)模型COMA是一種只用Cache的多處理機(jī)系統(tǒng)實(shí)際上,COMA模型是NUMA模型的一種特例,后者分布存儲(chǔ)器換成了Cache。在每個(gè)處理機(jī)結(jié)點(diǎn)上沒有主存儲(chǔ)器,全部Cache組成了全局虛擬地址空間。遠(yuǎn)程Cache訪問則借助于分布的Cache目錄進(jìn)行。共
45、享存儲(chǔ)系統(tǒng)擁有統(tǒng)一的尋址空間,程序員不必參與數(shù)據(jù)分配和傳輸。10/2/202262(3)COMA多處理機(jī)9/24/2022622、S2MP結(jié)構(gòu)1996年SGI Origin 2000服務(wù)器,采用S2MP并行體系結(jié)構(gòu)S2MP實(shí)際上是NUMA多處理機(jī)系統(tǒng),采用分布存儲(chǔ)器,并通過cache對(duì)系統(tǒng)的共享和局部數(shù)據(jù)都進(jìn)行緩存,以達(dá)到高性能。從用戶編程角度看,S2MP是一種共享存儲(chǔ)的多處理機(jī)系統(tǒng)。S2MP的主要特點(diǎn):易編程、可擴(kuò)展(1)編程簡(jiǎn)單,使用方便。(2)可擴(kuò)展性好,增加處理器數(shù)目不受總線帶寬的限制。(3)通信開銷小,可以開發(fā)程序中的細(xì)粒度并行性。S2MP的關(guān)鍵技術(shù):(1)高速無阻塞互連網(wǎng)絡(luò),增加系
46、統(tǒng)的通信帶寬。(2)分布式存儲(chǔ)器,隨處理器數(shù)目的增加自動(dòng)增加存儲(chǔ)器帶寬。(3)引入cache,降低訪存時(shí)延。(4)所有存儲(chǔ)器統(tǒng)一編址,提供單一的地址空間。(5)每個(gè)處理器結(jié)點(diǎn)上有一個(gè)目錄存儲(chǔ)器,維護(hù)cache一致性。10/2/2022632、S2MP結(jié)構(gòu)9/24/20226310/2/2022649/24/2022643. SGI Origin2000系列服務(wù)器Origin 2000將SMP、MPP、Cluster的優(yōu)點(diǎn)結(jié)合起來SMP易編程,MPP可擴(kuò)展性,Cluster可用性好。有4種機(jī)型:Origin 2000,塔式系統(tǒng),最多4個(gè)處理器。Origin 2000 Deskside,桌邊服務(wù)器
47、,最多8個(gè)處理器。Origin 2000 Rack,機(jī)柜服務(wù)器,處理器數(shù)目最多為16個(gè)。Cray Origin 2000,支持128個(gè)處理器。Origin 2000是S2MP結(jié)構(gòu)的典型實(shí)現(xiàn),地址空間成指數(shù)增長(zhǎng),連續(xù)可擴(kuò)展,最多可以擴(kuò)展至1024個(gè)處理器,具有高帶寬和低時(shí)延。關(guān)鍵技術(shù):Cray Link多重交叉開關(guān)互連技術(shù)Cellular IRIX蜂窩式操作系統(tǒng)10/2/2022653. SGI Origin2000系列服務(wù)器9/24/202Origin 2000系列服務(wù)器結(jié)構(gòu):(1) 結(jié)點(diǎn)板每個(gè)結(jié)點(diǎn)板(主板)有一到兩個(gè)R10000處理器、二級(jí)cache、主存儲(chǔ)器、錄存儲(chǔ)器、HUB、I/O接口、
48、互連網(wǎng)絡(luò)路由器接口。10/2/202266Origin 2000系列服務(wù)器結(jié)構(gòu):9/24/202266(2) HUB結(jié)構(gòu)四個(gè)雙向的端口,每個(gè)端口的雙工帶寬1.6GB/S。四個(gè)端口分別連接到處理器、主存儲(chǔ)器、XIO和互連網(wǎng)絡(luò)。四個(gè)端口在內(nèi)部以交叉開關(guān)互連。10/2/202267(2) HUB結(jié)構(gòu)9/24/202267(3) 存儲(chǔ)系統(tǒng)有一個(gè)統(tǒng)一的共享地址空間,存儲(chǔ)系統(tǒng)共分為四個(gè)層次:第一層:寄存器堆,訪問延遲時(shí)間最短;第二層:cache,主cache在CPU芯片上,二級(jí)cache在結(jié)點(diǎn)板上;第三層:本地存儲(chǔ)器,包括主存儲(chǔ)器和目錄存儲(chǔ)器;第四層:遠(yuǎn)程cache,用于減少訪問共享存儲(chǔ)器所需的時(shí)間。(4
49、)互連網(wǎng)絡(luò)互連網(wǎng)絡(luò)是一組開關(guān)組成,稱為路由器;允許多個(gè)傳輸同時(shí)發(fā)生;速度極高,每條鏈路帶寬達(dá)到1.6GB/S;互連網(wǎng)絡(luò)不需要仲裁,也不存在競(jìng)爭(zhēng);路由器的核心是6路全交叉開關(guān)。峰值通信帶寬9.6GB/S。10/2/202268(3) 存儲(chǔ)系統(tǒng)9/24/20226810/2/2022699/24/202269(5) 擴(kuò)展連接方式:可以構(gòu)成 4、16、32、64、128個(gè)處理器的互連拓?fù)浣Y(jié)構(gòu)。兩個(gè)結(jié)點(diǎn)板通過HUB直接連接得到4個(gè)處理器的機(jī)器。由于路由器提供了兩條連接結(jié)點(diǎn)板的鏈路,由一個(gè)路由器和兩個(gè)結(jié)點(diǎn)板構(gòu)成一個(gè)模塊,利用路由器的其他4個(gè)接口可以擴(kuò)展到不同的規(guī)模。使用其中的2條鏈路,可以連接16個(gè)處理
50、器。使用其中的3條鏈路,形成一個(gè)立方體,可以連接32個(gè)處理器。使用4條鏈路,構(gòu)成一個(gè)4維超立方體,可以連接64個(gè)處理器。采用Cray Router,最大配置可以達(dá)到128個(gè)處理器。圖中:P是處理器、N是結(jié)點(diǎn)板、H表示HUB、R表示路由器。10/2/202270(5) 擴(kuò)展連接方式:9/24/20227010/2/2022719/24/20227110/2/2022729/24/2022721、機(jī)群系統(tǒng)的組成機(jī)群系統(tǒng)是利用高速網(wǎng)絡(luò)將一組高性能工作站或高檔PC機(jī)連接起來,在并行程序設(shè)計(jì)以及可視化人機(jī)交互集成開發(fā)環(huán)境支持下,統(tǒng)一調(diào)度,協(xié)調(diào)處理,實(shí)現(xiàn)高效并行處理的系統(tǒng)。Cluster、NOW、COM從
51、結(jié)構(gòu)和結(jié)點(diǎn)間的通信方式來看,屬于分布存儲(chǔ)系統(tǒng)。機(jī)群系統(tǒng)中的主機(jī)和網(wǎng)絡(luò)可以是同構(gòu)的,也可以是異構(gòu)的。微處理機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)和并行編程環(huán)境的發(fā)展使得機(jī)群系統(tǒng)這一新的并行處理系統(tǒng)形式正成為當(dāng)前研究的熱點(diǎn)。(1)微處理器的性能不斷提高。(2)網(wǎng)絡(luò)技術(shù)的進(jìn)步使松散耦合系統(tǒng)的通信瓶頸逐步得到緩解。(3)并行編程環(huán)境使新編并行程序或改寫串行程序更為容易。9.3.4 機(jī)群系統(tǒng)(Cluster)10/2/2022731、機(jī)群系統(tǒng)的組成9.3.4 機(jī)群系統(tǒng)(Cluster)9/2、機(jī)群系統(tǒng)的特點(diǎn)(1)系統(tǒng)開發(fā)周期短。(2)用戶投資風(fēng)險(xiǎn)小。(3)系統(tǒng)價(jià)格低。(4)節(jié)約系統(tǒng)資源。UC Berkeley計(jì)算機(jī)系100多臺(tái)工作站的使用情況調(diào)查表明,一般單機(jī)系統(tǒng)的使用率不到10%,而機(jī)群系統(tǒng)中的資源利用率可達(dá)到80%左右。(5)系統(tǒng)擴(kuò)展性好。(6)用戶編程方便。3、機(jī)群系統(tǒng)的關(guān)鍵技術(shù)(1)高效的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 紡織生產(chǎn)效率提升的實(shí)踐試題及答案
- 我的家鄉(xiāng)風(fēng)采活動(dòng)
- 四川省成都市簡(jiǎn)陽市陽安中學(xué)2022-2023學(xué)年高二下學(xué)期3月月考物理試題 含解析
- 面料生產(chǎn)中質(zhì)量監(jiān)控的有效措施研究試題及答案
- 合同協(xié)議書怎么上傳
- 商品合同協(xié)議書
- 工程合作協(xié)議書合同范本
- 母嬰合同協(xié)議書
- 大型車輛買賣合同協(xié)議書
- 保管合同協(xié)議書
- 2024年四川省綿陽市涪城區(qū)綿陽外國語實(shí)驗(yàn)學(xué)校小升初數(shù)學(xué)試卷(一)
- JGJ144-2019外墻外保溫工程技術(shù)標(biāo)準(zhǔn)
- 人教精通六年級(jí)下冊(cè)英語單詞默寫表
- JB-T 8236-2023 滾動(dòng)軸承 雙列和四列圓錐滾子軸承游隙及調(diào)整方法
- MOOC 移動(dòng)通信-河海大學(xué) 中國大學(xué)慕課答案
- 中國女性文化智慧樹知到期末考試答案章節(jié)答案2024年湖南師范大學(xué)
- MOOC 計(jì)算機(jī)網(wǎng)絡(luò)-河南理工大學(xué) 中國大學(xué)慕課答案
- 數(shù)字貿(mào)易學(xué) 課件 第21、22章 數(shù)字自由貿(mào)易與數(shù)字貿(mào)易壁壘、數(shù)字貿(mào)易規(guī)則構(gòu)建與WTO新一輪電子商務(wù)談判
- 第五版、急危重癥護(hù)理學(xué)實(shí)踐與學(xué)習(xí)指導(dǎo)附有答案
- 中小學(xué)必背飛花令詩詞-(春、月、風(fēng)、花、山、江、人、日、動(dòng)物、顏色、數(shù)字)
- 幻想在天空飛翔混聲三部合唱譜
評(píng)論
0/150
提交評(píng)論