在設(shè)計(jì)程序或并發(fā)系統(tǒng)時(shí),需要考慮不同的系統(tǒng)和內(nèi)存架構(gòu)風(fēng)格。 這是非常必要的,因?yàn)橐粋€(gè)系統(tǒng)和內(nèi)存風(fēng)格可能適合于一項(xiàng)任務(wù),但可能會(huì)出錯(cuò)以適應(yīng)其他任務(wù)。
支持并發(fā)的計(jì)算機(jī)系統(tǒng)體系結(jié)構(gòu)
1972年,邁克爾弗林(Michael Flynn)給出了用于分類不同風(fēng)格計(jì)算機(jī)系統(tǒng)體系結(jié)構(gòu)的分類法。 該分類法定義了以下四種不同的樣式 -
顧名思義,這種類型的系統(tǒng)將有一個(gè)連續(xù)的輸入數(shù)據(jù)流和一個(gè)處理單元來執(zhí)行數(shù)據(jù)流。 它們就像具有并行計(jì)算體系結(jié)構(gòu)的單處理器系統(tǒng)一樣。 以下是SISD的架構(gòu) -

SISD的優(yōu)點(diǎn)
SISD架構(gòu)的優(yōu)點(diǎn)如下 -
SISD的缺點(diǎn)
SISD架構(gòu)的缺點(diǎn)如下 -
顧名思義,這種類型的系統(tǒng)會(huì)有多個(gè)輸入數(shù)據(jù)流和多個(gè)處理單元,這些單元可以在任何給定時(shí)間作用于單條指令。 它們就像具有并行計(jì)算架構(gòu)的多處理器系統(tǒng)。 以下是SIMD的架構(gòu) -

SIMD最好的例子就是顯卡。顯卡擁有數(shù)百個(gè)單獨(dú)的處理單元。 如果要談?wù)揝ISD和SIMD之間的計(jì)算差異,那么對(duì)于添加數(shù)組[5,15,20]和[15,25,10],SISD架構(gòu)將不得不執(zhí)行三種不同的添加操作。 另一方面,通過SIMD體系結(jié)構(gòu),我們可以添加一個(gè)單獨(dú)的添加操作。
SIMD的優(yōu)點(diǎn)
SIMD架構(gòu)的優(yōu)點(diǎn)如下 -
SIMD的缺點(diǎn)
SIMD架構(gòu)的缺點(diǎn)如下 -
具有MISD流的系統(tǒng)通過在同一數(shù)據(jù)集上執(zhí)行不同指令來執(zhí)行不同操作的處理單元數(shù)量。 以下是MISD的架構(gòu) -

MISD體系結(jié)構(gòu)尚未商業(yè)化。
在使用MIMD體系結(jié)構(gòu)的系統(tǒng)中,多處理器系統(tǒng)中的每個(gè)處理器可以并行地在不同的一組數(shù)據(jù)集上獨(dú)立地執(zhí)行不同的指令集。 與SIMD體系結(jié)構(gòu)相反,單一操作在多個(gè)數(shù)據(jù)集上執(zhí)行。 以下是MIMD的架構(gòu) -

普通的多處理器使用MIMD體系結(jié)構(gòu)。 這些架構(gòu)基本上應(yīng)用于許多應(yīng)用領(lǐng)域,如計(jì)算機(jī)輔助設(shè)計(jì)/計(jì)算機(jī)輔助制造,仿真,建模,通信交換機(jī)等。
在處理并發(fā)性和并行性等概念的同時(shí),始終需要加速這些程序。 計(jì)算機(jī)設(shè)計(jì)人員發(fā)現(xiàn)的一個(gè)解決方案是創(chuàng)建共享內(nèi)存多計(jì)算機(jī),即具有單個(gè)物理地址空間的計(jì)算機(jī),該計(jì)算機(jī)可以被處理器擁有的所有內(nèi)核訪問。 在這種情況下,可以有多種不同風(fēng)格的架構(gòu),但以下是三種重要的架構(gòu)風(fēng)格 -
UMA(統(tǒng)一內(nèi)存訪問)
在此模型中,所有處理器均勻分享物理內(nèi)存。 所有處理器對(duì)所有內(nèi)存字都有相同的訪問時(shí)間。 每個(gè)處理器可以有一個(gè)私有緩存存儲(chǔ)器。 外圍設(shè)備遵循一套規(guī)則。
當(dāng)所有的處理器對(duì)所有的外圍設(shè)備有相同的訪問權(quán)限時(shí),系統(tǒng)被稱為對(duì)稱多處理器。 當(dāng)只有一個(gè)或幾個(gè)處理器可以訪問外圍設(shè)備時(shí),系統(tǒng)稱為非對(duì)稱多處理器。
非均勻內(nèi)存訪問(NUMA)
在NUMA多處理器模型中,訪問時(shí)間隨內(nèi)存字的位置而變化。 這里,共享存儲(chǔ)器物理地分布在所有處理器中,稱為本地存儲(chǔ)器。 所有本地存儲(chǔ)器的集合形成一個(gè)全局地址空間,所有處理器都可以訪問它。

僅緩存內(nèi)存體系結(jié)構(gòu)(COMA)
COMA模型是NUMA模型的專用版本。 這里,所有分配的主存儲(chǔ)器都被轉(zhuǎn)換成高速緩沖存儲(chǔ)器。
