致謝
SMP、COW、PVP、MPP計(jì)算機(jī)相關(guān)_神.秘.人的博客-CSDN博客_并行向量處理機(jī)
1 并行計(jì)算機(jī)系統(tǒng)及結(jié)構(gòu)模型
1.1 并行計(jì)算
在下面的講解之前,我們先看一下并行計(jì)算的量綱。
1.1.1 并行計(jì)算和計(jì)算機(jī)科學(xué)
隨著計(jì)算機(jī)和計(jì)算機(jī)學(xué)科的發(fā)展,所有的學(xué)科都轉(zhuǎn)向定量化和精確化,因此也出現(xiàn)了很多計(jì)算開頭的學(xué)科,如計(jì)算數(shù)學(xué)、計(jì)算物理、計(jì)算生物等。目前所有的學(xué)科可以歸結(jié)為三大類:即理論科學(xué)、實(shí)驗(yàn)科學(xué)和計(jì)算科學(xué)。其中計(jì)算科學(xué)是一個(gè)交叉學(xué)科,用計(jì)算的方法來解決應(yīng)用問題,但是其中的問題也暴露出來——很多理論模型復(fù)雜或尚未建立、實(shí)驗(yàn)費(fèi)用昂貴或無法進(jìn)行。
為此,很多模型在無法實(shí)際操作的情況下,通過超級(jí)計(jì)算機(jī)的仿真模擬,可以初步探測該模型的可行性。比較常見的應(yīng)用就是氣象局天氣預(yù)報(bào)、原子彈爆炸模擬等。
并行計(jì)算技術(shù)是一個(gè)國家的綜合國力的體現(xiàn),并行計(jì)算在國民經(jīng)濟(jì)、國防建設(shè)和科技發(fā)展中占有重要的戰(zhàn)略地位。在飛機(jī)設(shè)計(jì)、藥物設(shè)計(jì)、全球氣候預(yù)測、人類基因等巨大挑戰(zhàn)性
問題時(shí),并行計(jì)算機(jī)發(fā)揮了巨大的作用。
國家目前正在大力發(fā)展高性能計(jì)算,在軍事上,我國擁有銀河、神威等超級(jí)計(jì)算機(jī);在民用上,我國擁有曙光、聯(lián)想等超級(jí)計(jì)算機(jī)。需要注意的是,在08年時(shí),我國的國產(chǎn)高性能計(jì)算機(jī)就已經(jīng)進(jìn)入TOP500前十位,總數(shù)也在大幅增加。
1.1.2 當(dāng)代科學(xué)與工程問題的計(jì)算需求
并行計(jì)算需求有很多種。一般分為計(jì)算密集型應(yīng)用、數(shù)據(jù)密集型應(yīng)用、通信密集型應(yīng)用。
計(jì)算密集型應(yīng)用應(yīng)用于大型科學(xué)工程計(jì)算,數(shù)值模擬等,其應(yīng)用領(lǐng)域通常在石油、氣象、CAD、核能、制藥、環(huán)境監(jiān)測分析、系統(tǒng)仿真等。
數(shù)據(jù)密集型應(yīng)用則應(yīng)用于數(shù)字圖書館、數(shù)據(jù)倉庫、數(shù)據(jù)挖掘、計(jì)算可視化等,應(yīng)用領(lǐng)域通常在圖書館、銀行、證券、稅務(wù)、決策支持系統(tǒng)等。
通信密集型應(yīng)用應(yīng)用于協(xié)同工作、網(wǎng)格計(jì)算、遙控和遠(yuǎn)程診斷等。其應(yīng)用領(lǐng)域通常在網(wǎng)站、信息中心、搜素引擎、電信、流媒體等。
1.2 并行計(jì)算機(jī)系統(tǒng)互連
1.2.1 系統(tǒng)互連
不同帶寬和距離的互連技術(shù)有多種,比較常用是:廣域網(wǎng)WAN、城域網(wǎng)MAN、局域網(wǎng)WAN、個(gè)人區(qū)域網(wǎng)PAN、總線。廣域網(wǎng)一般跨國,城域網(wǎng)一般城市,局域網(wǎng)一般一棟樓,個(gè)人區(qū)域網(wǎng)一般幾臺(tái)設(shè)備。其中廣域網(wǎng)使用了交換技術(shù)
,而局域網(wǎng)使用的是廣播技術(shù)
。如果是使用總線的話,總線是最快的,你可以理解為總結(jié)傳輸時(shí)不需要網(wǎng)絡(luò),直接用一條USB連接的那種。
網(wǎng)絡(luò)性能指標(biāo)一般由下面的參數(shù)來衡量:
- 節(jié)點(diǎn)度:射入或射出一個(gè)節(jié)點(diǎn)的邊數(shù)。在單向網(wǎng)絡(luò)中,入射和出射之和稱為節(jié)點(diǎn)度。
- 網(wǎng)絡(luò)直徑:網(wǎng)絡(luò)中任何兩個(gè)節(jié)點(diǎn)之間的最長距離,即最大路徑數(shù)。由于網(wǎng)絡(luò)直徑過長會(huì)導(dǎo)致兩臺(tái)計(jì)算機(jī)太遠(yuǎn),通信容易延遲,所以我們一般要求網(wǎng)絡(luò)直徑要盡可能的短。
- 對(duì)剖寬度:對(duì)分網(wǎng)絡(luò)各半所必須移去的最少邊數(shù)。
- 對(duì)剖帶寬:每秒內(nèi),在最小的對(duì)剖平面上通過所有連線的最大消息位數(shù)
1.2.2 靜態(tài)互連網(wǎng)絡(luò)
靜態(tài)互聯(lián)網(wǎng)絡(luò)是處理單元間有著固定連接的一類網(wǎng)絡(luò),在程序執(zhí)行期間,這種點(diǎn)到點(diǎn)的連接保持不變;典型靜態(tài)網(wǎng)絡(luò)有一維線性陣列、二維網(wǎng)孔、樹連接、超立方網(wǎng)絡(luò)、立方環(huán)、洗牌交換網(wǎng)、蝶狀網(wǎng)絡(luò)等。
換而言之,靜態(tài)互連網(wǎng)絡(luò)就是用一個(gè)鏈路把多個(gè)處理器連接起來,構(gòu)成物理意義上的并行計(jì)算機(jī),如果某個(gè)處理器想發(fā)信息給另外一個(gè)處理器,總是能通過這條鏈路來干這種事。
1.2.2.1 一維線性陣列(1-D Linear Array)
一維線性陣列可以看成是單鏈表,即每個(gè)節(jié)點(diǎn)只與左右相鄰相連,故其別名為二近鄰連接
。N個(gè)結(jié)點(diǎn)用N-1條邊串聯(lián)而成,內(nèi)結(jié)點(diǎn)度為2,直徑為N-1,對(duì)剖寬度為1。
這種結(jié)構(gòu)雖然簡單方便,但是恢復(fù)性較差。而且首尾兩個(gè)計(jì)算機(jī)太遠(yuǎn)了,時(shí)延也差。所以在構(gòu)造并行計(jì)算機(jī)時(shí)基本不采用。
如果將上述網(wǎng)絡(luò)拓?fù)涫瘴补?jié)點(diǎn)重合,即可變?yōu)?code>環(huán)。環(huán)可以是單向可以是雙向,其節(jié)點(diǎn)度也是2,直徑為N/2或N-1,對(duì)剖寬度為2。
1.2.2.2 二維網(wǎng)孔(2-D Mesh)
二維網(wǎng)孔是并行計(jì)算機(jī)中較為常用的。設(shè)二維網(wǎng)孔為 n × n \sqrt{n}×\sqrt{n} n?×n?大小。其每個(gè)節(jié)點(diǎn)只與其上下左右的近鄰相連,邊界除外,節(jié)點(diǎn)度為4,網(wǎng)絡(luò)直徑為 2 N ? 1 2 \sqrt{N-1} 2N?1?,對(duì)剖寬度為 N \sqrt {N} N?。
當(dāng)然,二維網(wǎng)孔也有拓展類型,詳見下圖這里不再贅述。
1.2.2.3 樹結(jié)構(gòu)
一般采用樹的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)用的大多數(shù)是二叉樹。除了根、葉節(jié)點(diǎn)以外,每個(gè)內(nèi)節(jié)點(diǎn)只與其父節(jié)點(diǎn)和子節(jié)點(diǎn)相連。
節(jié)點(diǎn)度為3,對(duì)剖寬度為1,而樹的直徑為2[logN]-1。如果盡量增加節(jié)點(diǎn)度,則直徑縮小為2,此時(shí)就變成了星型網(wǎng)絡(luò),其對(duì)剖寬度為[n/2]。
傳統(tǒng)的二叉樹的主要問題是根容易成為通信瓶頸,且時(shí)延很低可恢復(fù)性也很差。,因而出現(xiàn)了新型的胖二叉樹
。
胖樹的含義是:越往根部走,通信鏈路就越寬,這樣能夠有效避免根位置出現(xiàn)通信瓶頸的情況。
星型模式下處于中間位置的節(jié)點(diǎn)會(huì)成為通信瓶頸,因?yàn)樗械耐ㄐ哦家?jīng)由它傳輸。
1.2.2.4 超立方
當(dāng)結(jié)點(diǎn)按正方體的模樣構(gòu)建拓?fù)浣Y(jié)構(gòu),每個(gè)角作為結(jié)點(diǎn)處,那么我們把這個(gè)拓?fù)浣Y(jié)構(gòu)叫做3-立方,將兩個(gè)3-立方對(duì)應(yīng)頂點(diǎn)相連,則可以構(gòu)成4-立方。以此類推,n-立方也可以這么干。
這樣的超立方結(jié)構(gòu)雖然性能較好但是擴(kuò)展性卻不好,因?yàn)槊繑U(kuò)展一次立方,每個(gè)節(jié)點(diǎn)的度數(shù)變高,這樣擴(kuò)展起來很麻煩。
我們也可以把正方體對(duì)應(yīng)的角換成三節(jié)點(diǎn)環(huán),就可以將拓?fù)浣Y(jié)構(gòu)變成立方環(huán)。
如果是4-立方,那么每個(gè)角就要換成4個(gè)結(jié)點(diǎn)構(gòu)成的環(huán)。
1.2.2.5 小結(jié)
對(duì)于網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)來說,節(jié)點(diǎn)度數(shù)衡量其網(wǎng)絡(luò)的復(fù)雜度,而鏈路數(shù)衡量其網(wǎng)絡(luò)的代價(jià)。
1.2.3 動(dòng)態(tài)互連網(wǎng)絡(luò)
動(dòng)態(tài)網(wǎng)絡(luò)是用交換開關(guān)構(gòu)成的,可按應(yīng)用程序的要求動(dòng)態(tài)地改變連接組態(tài);典型的動(dòng)態(tài)網(wǎng)絡(luò)包括總線、交叉開關(guān)和多級(jí)互連網(wǎng)絡(luò)等。
這種網(wǎng)絡(luò)比較普遍的是總線上面掛交換器。我們知道同一時(shí)間段中,一條總線只允許兩頭的設(shè)備進(jìn)行信息交換,而在交換完成后,交換器可以將總線的端口改變,使其連接另外一個(gè)設(shè)備。通過這種方法,可以根據(jù)我們應(yīng)用的需求,動(dòng)態(tài)地選擇我們需要的設(shè)備。
1.2.4 嵌入
在互聯(lián)網(wǎng)絡(luò)中還有另外一個(gè)概念叫嵌入。其做法是將網(wǎng)絡(luò)中的各節(jié)點(diǎn)映射到另一個(gè)網(wǎng)絡(luò)中去。用膨脹系數(shù)來描述嵌入的質(zhì)量,它是指被嵌入網(wǎng)絡(luò)中的一條鏈路在所要嵌入的網(wǎng)絡(luò)中對(duì)應(yīng)所需的最大鏈路數(shù)。如果該系數(shù)為1,則稱為完美嵌入。
對(duì)于環(huán)網(wǎng)和超立方來說,兩者皆可被完美嵌入到2D環(huán)繞網(wǎng)中。
1.2.4 標(biāo)準(zhǔn)互連網(wǎng)絡(luò)
常用的標(biāo)準(zhǔn)互連網(wǎng)絡(luò)如下:
- 光纖分布式數(shù)據(jù)接口(FDDI)
- 快速以太網(wǎng)
- Myrinet
- SCI
- InfiniBand
1.3 并行計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)
1.3.1 并行計(jì)算機(jī)結(jié)構(gòu)模型
1.3.1.1 PVP
PVP也叫并行向量處理機(jī)(Parallel Vector Processor)
,其內(nèi)部含有為數(shù)不多、功能強(qiáng)大的定制向量處理器,以及定制的高帶寬縱橫交叉開關(guān)和高速數(shù)據(jù)訪問。其價(jià)格十分昂貴,因?yàn)槠浣M件都需定制,一般適用于國家部門。
1.3.1.2 SMP
SMP也叫對(duì)稱多處理機(jī)
。其訪存、IO都是對(duì)稱的。其用的處理器大多數(shù)是商用處理器。
目前SMP需要解決的主要問題是Cache的一致性問題。多級(jí)高速緩存可以支持?jǐn)?shù)據(jù)的局部性,而其一致性可由硬件來增強(qiáng)。大多數(shù)SMP系統(tǒng)都是基于總線連接的,占據(jù)了并行計(jì)算機(jī)市場中很大的份額。
1.3.1.3 MMP
MMP也叫大規(guī)模并行處理機(jī)(Massively Parallel Processor)
,其規(guī)模大,性能好。
1.3.1.4 DSM
DSM又叫分布式共享存儲(chǔ)器(Distributed Shared Memory,DSM)
。在DSM中,每個(gè)節(jié)點(diǎn)都有本地內(nèi)存,所有的節(jié)點(diǎn)都有一個(gè)共享空間。
1.3.1.5 COW
COW又叫工作站機(jī)群(Cluster of Workstation)
。工作站機(jī)群的結(jié)構(gòu)技術(shù)起點(diǎn)比較低,可以自己將一些服務(wù)器/微型機(jī)通過以太網(wǎng)連起來,加上相應(yīng)的管理和通訊軟件來搭建自己的工作站機(jī)群。
在集群中,每個(gè)節(jié)點(diǎn)都有本地磁盤,除了沒有顯示器沒有鼠標(biāo)沒有鍵盤之外,基本上其他普通計(jì)算機(jī)該有的它都有。每個(gè)節(jié)點(diǎn)用I/O總線連向?qū)iT設(shè)計(jì)的多級(jí)高速網(wǎng)絡(luò),如前面在標(biāo)準(zhǔn)互連網(wǎng)絡(luò)提到的那些。
機(jī)群也是構(gòu)建并行計(jì)算機(jī)一種很廉價(jià)的方案,其被稱為窮人的解決方案。使用這類并行計(jì)算機(jī)跑并行程序效率很低,但是由于它的性價(jià)比和搭建的簡便性,使得近幾年常被用于做并行科學(xué)計(jì)算和并行商用計(jì)算。
需要注意的是,機(jī)群不適合用于國家級(jí)的計(jì)算,因?yàn)橛缮鲜隹芍瑢?shí)際上機(jī)群可以理解為是很多廉價(jià)的機(jī)器并在一起,而如果要運(yùn)行速度跟快,能處理的數(shù)據(jù)更多,就需要并一個(gè)很大的機(jī)群。而如果機(jī)群并得很大,就會(huì)導(dǎo)致散熱有問題。我們前面說過它們通過總線互聯(lián)的,你總不能一個(gè)計(jì)算機(jī)在東一個(gè)計(jì)算機(jī)在西,然后一條總線連著吧??隙ㄊ墙y(tǒng)一放在一個(gè)地方啊。而如果要處理大型的數(shù)據(jù),一般機(jī)群所處的機(jī)房就要三四層樓那么高,籃球場那么寬,肯定不利于散熱。
1.3.1.6 小結(jié)
實(shí)際上上面的介紹的幾類并行計(jì)算機(jī)結(jié)構(gòu)模型現(xiàn)在已經(jīng)慢慢地趨近于三類:分布共享存儲(chǔ)計(jì)算機(jī)
、分布存儲(chǔ)多計(jì)算機(jī)
、共享存儲(chǔ)多處理機(jī)
。剛剛講過的那幾個(gè)結(jié)構(gòu)模型如下圖所示:
1.3.2 并行計(jì)算機(jī)訪存模型
1.3.2.1 UMA
UMA(Uniform Memory Access)模型是均勻存儲(chǔ)訪問模型的簡稱。其特點(diǎn)是:
- 物理存儲(chǔ)器被所有處理器均勻共享
- 所有處理器訪問任何存儲(chǔ)字取相同的時(shí)間
- 每臺(tái)處理器可帶私有高速緩存
- 外圍設(shè)備也可以一定形式共享
1.3.2.2 NUMA
與UMA與之相對(duì)的是NUMA(Nonuniform Memory Access)模型。它是非均勻存儲(chǔ)訪問模型的簡稱。特點(diǎn)是:
- 被共享的存儲(chǔ)器在物理上是分布在所有的處理器中的,其所有本地存儲(chǔ)器的集合就組成了全局地址空間
- 處理器訪問存儲(chǔ)器的時(shí)間是不一樣的;訪問本地存儲(chǔ)器LM或群內(nèi)共享存儲(chǔ)器CSM較快,而訪問外地的存儲(chǔ)器或全局共享存儲(chǔ)器GSM較慢。
- 每臺(tái)處理器照例可帶私有高速緩存,外設(shè)也可以某種形式共享
1.3.2.3 COMA
COMA(Cache_Only Memory Access)模型是全高速緩存訪問的簡稱,其特點(diǎn)是:
- 各處理器節(jié)點(diǎn)匯總沒有存儲(chǔ)層次結(jié)構(gòu),全部高速緩存組成了全局地址空間
- 利用分布的高速緩存目錄D進(jìn)行遠(yuǎn)程高速緩存的訪問
- COMA中的高速緩存容量一般都大于2級(jí)高速緩存容量
- 使用COMA時(shí),數(shù)據(jù)開始可任意分配,因?yàn)樵谶\(yùn)行時(shí)它最終會(huì)被遷移到要用到它們的地方
1.3.2.4 CC-NUMA
CC-NUMA(Coherent-Cache Nonuniform Memory Access)模型是高速緩存一致性非均勻訪問模型的簡稱。其特點(diǎn)是:
- 大多數(shù)使用基于目錄的高速緩存一致性協(xié)議
- 保留SMP結(jié)構(gòu)易于編程的優(yōu)點(diǎn),也改善常規(guī)SMP的可擴(kuò)放性
- CC-NUMA實(shí)際上是一個(gè)分布共享存儲(chǔ)的DSM多處理機(jī)系統(tǒng)
- 它最顯著的優(yōu)點(diǎn)是程序員無需明確地在節(jié)點(diǎn)上分配數(shù)據(jù),系統(tǒng)的硬件和軟件開始時(shí)自動(dòng)在各節(jié)點(diǎn)分配數(shù)據(jù),在運(yùn)行期間,高速緩存一致性硬件會(huì)自動(dòng)將數(shù)據(jù)遷移到它要用的地方。
1.3.2.5 NoRMA
NoRMA(No-Remote Memory Access)模型是非遠(yuǎn)程存儲(chǔ)訪問模型的簡稱。NORMA的特點(diǎn)是:
- 所有存儲(chǔ)器都是私有的
- 絕大數(shù)NUMA都不支持遠(yuǎn)程存儲(chǔ)器的訪問
- 在DSM中,NORMA就消失了
文章來源:http://www.zghlxwxcb.cn/news/detail-817823.html
1.3.2.6 小結(jié)
文章來源地址http://www.zghlxwxcb.cn/news/detail-817823.html
到了這里,關(guān)于并行計(jì)算(一)——并行計(jì)算機(jī)系統(tǒng)及結(jié)構(gòu)模型的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!