Lecture2 Structure
Shared Memory Structure
- 多個(gè)processor連接到相同的shared memory
- 缺點(diǎn):
- 訪存十分頻繁羡铲,在時(shí)鐘頻率很高的情況下速度會(huì)受影響
- 距離越長(zhǎng)傳輸噪聲越大孝治,限制了發(fā)展
- Hardware: processors, shared global memory
- Software model:
- thread
- shared varialbles
- communications
- synchronization
- CPU內(nèi)部仍然有這樣的結(jié)構(gòu),因?yàn)榫嚯x較小
Clusters (服務(wù)器集群)
- 可擴(kuò)展性好
- 多個(gè)服務(wù)器之間用網(wǎng)絡(luò)互聯(lián)
- 以太網(wǎng):沖突檢測(cè),查錯(cuò)重傳
- 對(duì)于一個(gè)信道而言撤逢,可能有多個(gè)信號(hào)窒朋,那么就查錯(cuò)重傳
- 優(yōu)點(diǎn)是實(shí)現(xiàn)簡(jiǎn)單
- 某些機(jī)器間利用交換機(jī)相連(無(wú)錫超算)
- 速度快
- 利用率低
- 主要有兩種連接方式
- pon 樹結(jié)構(gòu)
- 交換機(jī)和機(jī)器形成樹結(jié)構(gòu)
- 在相同交換機(jī)之間通訊極其迅速
- 跨越橋路的速度減慢
- Torus:
- 三維正方體結(jié)構(gòu)
- 除了和周圍相鄰的機(jī)器相連,也按照指數(shù)增長(zhǎng)和遠(yuǎn)處計(jì)算機(jī)相連
- 直徑為d腋粥,按照O(logd)就能相連
為什么核要設(shè)計(jì)得復(fù)雜晦雨?
- 為了使得C運(yùn)行迅速
- 盡管如此,我們?nèi)匀灰胫芏嗟讓拥募?xì)節(jié)(such as cache)
- 加速器:
- 犧牲可編程性
- CPU和GPU合作:
- 利用PCI插槽
- 一個(gè)大核內(nèi)放多個(gè)小核
- 放兩種核隘冲,因?yàn)閷?duì)于一些舊的代碼闹瞧,我們使用大核跑
- 專門優(yōu)化的程序放到小核上
- 功耗和數(shù)據(jù)搬運(yùn)相關(guān)
加快的方式——并行性和局部性
- 多個(gè)高效的處理器和層次性的存儲(chǔ)結(jié)構(gòu)
- 兩個(gè)處理器,各自有L1緩存展辞,為什么要共用L2緩存:
- 兩個(gè)處理器可能有公用的數(shù)據(jù)
- 增大L2緩存的利用
Memory Hierarchy
pinned memory and pageable memory
pinned memory can directly be tranported by DMA
-
pageable memory has to be exported to pinned memory first:
因?yàn)閜ageable的里面奥邮,元素可能不連續(xù)
DMA只能傳輸成塊的東西
constant memory: 在一個(gè)程序調(diào)用過(guò)程中不發(fā)生改變,在程序調(diào)用一開始就讀入