在先前的文章中《近距離看GPU計算(2)》,我們談到GPU相比CPU有更大的內(nèi)存帶寬,此言不虛,這也是眾核GPU有源源不斷數(shù)據(jù)彈藥供給,能夠發(fā)揮強大算力的主要原因?;旧螱PU的內(nèi)存帶寬要比CPU多一個數(shù)量級。
但是考慮到GPU運算核心的數(shù)量,平均下來顯存帶寬真的足夠富裕嗎?參考資料1的《Memory bandwidth》文章提供了很有趣的視角,我們在這里介紹下。MOS 6502發(fā)布于1975年,是微型計算機發(fā)展史上非常重要的一塊芯片。
6502一般運行在1M時鐘頻率,每個時鐘可以訪問1Byte內(nèi)存數(shù)據(jù),6502的一條指令需要花費3~5個時鐘,所以平均下來每條指令大概可以獲得4B內(nèi)存數(shù)據(jù)。
與此相對照,Intel的Corei7-7700K是一款目前比較主流的桌面CPU,運行頻率4.2G,內(nèi)存帶寬大概50GB/s。i7-7700K一共有4個處理核心,所以每個核心大概可以均攤到12.5GB/s的內(nèi)存帶寬,也就是每個時鐘可以訪問約3B的內(nèi)存數(shù)據(jù)。
該CPU的IPC(Instruction Per Clock)為1,極優(yōu)化的代碼可以達到的IPC為3,按此計,每條指令可得1B的內(nèi)存數(shù)據(jù),跟老前輩6502相比,已經(jīng)落后不少。
更進一步,現(xiàn)代CPU支持256位長度的SIMD指令,每個時鐘最多執(zhí)行3條指令,類比GPU,我們以32位為一個通道作為單獨執(zhí)行線程,這樣每個時鐘我們一共有24條指令執(zhí)行,所以每條指令可以訪問0.125B內(nèi)存數(shù)據(jù)或者說每8條指令得到1B內(nèi)存數(shù)據(jù)。
我們再回過頭來看看GPU的情形。以NVidiaGeForce GTX 1080Ti為例,內(nèi)存帶寬484GB/s,處理單元工作頻率為1.48G,所以對整個GPU來說,每個時鐘大概可以訪問327B內(nèi)存數(shù)據(jù)。這個GPU一共有28個SM(類似CPU的處理核心),每個SM有128個SP,所以總共有3584個SP(類似先前SIMD32位通道)。
這樣每個SM一個時鐘大概可以訪問11.7B的內(nèi)存數(shù)據(jù),平均到128個SP,一個SP一個時鐘得到0.09B數(shù)據(jù),換個好聽的說法就是每11條指令可以得到1B內(nèi)存數(shù)據(jù),比CPU的指標還惡劣。需要再次重申的是,因為設計目標的問題,CPU其實更關注訪存延遲指標,所以相形之下,內(nèi)存帶寬的壓力對GPU更為顯著。
這也是為什么我們先前說過的GPU也開始配置多級Cache的原因,除了改善訪存延遲,也可以降低內(nèi)存帶寬壓力。另外我們在《GPU歷史之二三事》里也提到Nvidia和AMD都開始擁抱移動GPU常用的TBR(Tile Based Rendering)的繪制技術,內(nèi)存帶寬的壓力也應該是重要的驅(qū)動因素。
而作為軟件人員,在設計算法的時候,我們要重視算法的運算強度(見《Roofline模型初步》),要充分利用片上內(nèi)存包括硬件Cache和軟件Cache(Shared Memory),以及注意內(nèi)存的合并訪問(Memory Coalescing)等等來優(yōu)化內(nèi)存帶寬。
主要參考資料:
https://fgiesen.wordpress.com/2017/04/11/memory-bandwidth/
編輯:jq
-
gpu
+關注
關注
28文章
4949瀏覽量
131274
原文標題:再談GPU的內(nèi)存帶寬
文章出處:【微信號:gh_6fde77c41971,微信公眾號:FPGA干貨】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
術業(yè)有專攻——AI系統(tǒng)主控CPU英特爾至強6新品處理器淺析

【「算力芯片 | 高性能 CPU/GPU/NPU 微架構分析」閱讀體驗】+NVlink技術從應用到原理
從CPU到GPU:渲染技術的演進和趨勢

GPU渲染才是大勢所趨?CPU渲染與GPU渲染的現(xiàn)狀與未來

2024年GPU出貨量增長顯著,超越CPU
FPGA+GPU+CPU國產(chǎn)化人工智能平臺

南亞科技與補丁科技攜手開發(fā)定制超高帶寬內(nèi)存
如何限制容器可以使用的CPU資源

北橋芯片負責與cpu的聯(lián)系并控制內(nèi)存嗎
C2000 CPU內(nèi)存內(nèi)置自檢功能

動畫渲染用GPU還是CPU的選擇思路

蘋果 A18 芯片發(fā)布:CPU 提升 30%、GPU 提升 40%

評論