0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

GPU竟比CPU有更大的內(nèi)存帶寬

B4Pb_gh_6fde77c ? 來源:GPU and Computing ? 作者:GPU and Computing ? 2021-08-04 16:19 ? 次閱讀

在先前的文章中《近距離看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的指標還惡劣。需要再次重申的是,因為設(shè)計目標的問題,CPU其實更關(guān)注訪存延遲指標,所以相形之下,內(nèi)存帶寬的壓力對GPU更為顯著。

這也是為什么我們先前說過的GPU也開始配置多級Cache的原因,除了改善訪存延遲,也可以降低內(nèi)存帶寬壓力。另外我們在《GPU歷史之二三事》里也提到Nvidia和AMD都開始擁抱移動GPU常用的TBR(Tile Based Rendering)的繪制技術(shù),內(nèi)存帶寬的壓力也應(yīng)該是重要的驅(qū)動因素。

而作為軟件人員,在設(shè)計算法的時候,我們要重視算法的運算強度(見《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

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • gpu
    gpu
    +關(guān)注

    關(guān)注

    28

    文章

    4673

    瀏覽量

    128592

原文標題:再談GPU的內(nèi)存帶寬

文章出處:【微信號:gh_6fde77c41971,微信公眾號:FPGA干貨】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

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

    CPU 包括 2 個性能核心和 4 個效率核心, iPhone 15 的 A16 Bionic 快 30%,能耗降低 30% 。 GPU 方面,A18 芯片的 5 核 GPU
    的頭像 發(fā)表于 09-11 12:19 ?515次閱讀
    蘋果 A18 芯片發(fā)布:<b class='flag-5'>CPU</b> 提升 30%、<b class='flag-5'>GPU</b> 提升 40%

    主板內(nèi)存故障燈亮會是cpu的問題嗎

    主板內(nèi)存故障燈亮并不一定是CPU的問題,但CPU內(nèi)存之間的交互確實可能影響這一故障現(xiàn)象。以下是對主板內(nèi)存故障燈亮可能原因的分析: 一、
    的頭像 發(fā)表于 09-02 14:42 ?1834次閱讀

    CPU渲染和GPU渲染優(yōu)劣分析

    使用計算機進行渲染時,兩種流行的系統(tǒng):基于中央處理單元(CPU)或基于圖形處理單元(GPU)。CPU渲染利用計算機的CPU來執(zhí)行場景并將其
    的頭像 發(fā)表于 05-23 08:27 ?507次閱讀
    <b class='flag-5'>CPU</b>渲染和<b class='flag-5'>GPU</b>渲染優(yōu)劣分析

    聊聊GPU背后的大贏家-HBM

    HBM全稱為High Bandwidth Memory,直接翻譯即是高帶寬內(nèi)存,是一款新型的CPU/GPU內(nèi)存芯片。
    的頭像 發(fā)表于 04-20 15:27 ?1437次閱讀
    聊聊<b class='flag-5'>GPU</b>背后的大贏家-HBM

    X-Silicon發(fā)布RISC-V新架構(gòu) 實現(xiàn)CPU/GPU一體化

    X-Silicon 的芯片與其他架構(gòu)不同,其設(shè)計將 CPUGPU 的功能整合到單核架構(gòu)中。這與英特爾和 AMD 的典型設(shè)計不同,前者獨立的 CPU 內(nèi)核和
    發(fā)表于 04-08 11:34 ?526次閱讀
    X-Silicon發(fā)布RISC-V新架構(gòu) 實現(xiàn)<b class='flag-5'>CPU</b>/<b class='flag-5'>GPU</b>一體化

    RISC-V芯片新突破:CPUGPU一體化核心設(shè)計

    X-Silicon 的芯片與其他架構(gòu)不同,其設(shè)計將 CPUGPU 的功能結(jié)合到單核架構(gòu)中。這與 Intel 和 AMD 的典型設(shè)計不同,后者獨立的 CPU 核心和
    發(fā)表于 04-07 10:41 ?642次閱讀
    RISC-V芯片新突破:<b class='flag-5'>CPU</b>與<b class='flag-5'>GPU</b>一體化核心設(shè)計

    gpu是什么和cpu的區(qū)別

    GPUCPU是兩種常見的計算機處理器,它們在結(jié)構(gòu)和功能上有很大的區(qū)別。在這篇文章中,我們將探討GPUCPU的區(qū)別,并詳細介紹它們的原理、應(yīng)用領(lǐng)域和性能特點。 一、概述 1.1
    的頭像 發(fā)表于 02-20 11:24 ?1.8w次閱讀

    詳解GPU硬件架構(gòu)及運行機制

    為什么我們總說GPUCPU要強大,既然GPU強大,為什么不能取代CPU呢?
    的頭像 發(fā)表于 01-26 09:23 ?2116次閱讀
    詳解<b class='flag-5'>GPU</b>硬件架構(gòu)及運行機制

    為什么GPUCPU更快?

    大規(guī)模數(shù)據(jù)集時CPU更快的根本原因。內(nèi)存帶寬GPU內(nèi)存
    的頭像 發(fā)表于 01-26 08:30 ?2157次閱讀
    為什么<b class='flag-5'>GPU</b><b class='flag-5'>比</b><b class='flag-5'>CPU</b>更快?

    DDR6和DDR5內(nèi)存的區(qū)別有多大?怎么選擇更好?

    的型號。 首先,我們來看一下DDR6內(nèi)存。DDR6是目前市場上最新的內(nèi)存技術(shù),它在DDR5的基礎(chǔ)上進行了一些改進。DDR6內(nèi)存的關(guān)鍵特點如下: 1. 帶寬
    的頭像 發(fā)表于 01-12 16:43 ?7923次閱讀

    CPUGPU散熱器設(shè)計的異同及其重要性

    CPUGPU散熱器的設(shè)計異同及其重要性 在計算機的發(fā)展過程中,中央處理單元(CPU)和圖形處理單元(GPU)在性能和熱量產(chǎn)生方面的不斷提升和增加,使得其在長時間工作時產(chǎn)生了大量的熱量
    的頭像 發(fā)表于 01-09 14:00 ?1143次閱讀

    CPUGPU與TPU之間什么區(qū)別?

    CPUGPU與TPU之間什么區(qū)別? CPU(Central Processing Unit,中央處理器)是一種通用處理器,被用于各種計算任務(wù),如操作系統(tǒng)運行、數(shù)據(jù)處理、算法運算等。
    的頭像 發(fā)表于 12-15 10:10 ?6484次閱讀

    CPUGPU之間的主要區(qū)別

    以下是以表格形式提供的CPUGPU之間的一些區(qū)別:中央處理器圖形處理器CPU代表中央處理器。GPU代表圖形處理單元。CPU是通用處理器。
    的頭像 發(fā)表于 12-14 08:28 ?736次閱讀
    <b class='flag-5'>CPU</b>和<b class='flag-5'>GPU</b>之間的主要區(qū)別

    cpugpu的結(jié)構(gòu)區(qū)別

    CPUGPU之所以大不相同,是由于其設(shè)計目標的不同,它們分別針對了兩種不同的應(yīng)用場景。 CPU需要很強的通用性來處理各種不同的數(shù)據(jù)類型,同時又要邏輯判斷又會引入大量的分支跳轉(zhuǎn)和中斷的處理。
    發(fā)表于 11-15 10:24 ?1225次閱讀
    <b class='flag-5'>cpu</b>和<b class='flag-5'>gpu</b>的結(jié)構(gòu)區(qū)別

    CPU、GPU內(nèi)存知識科普

    本文內(nèi)容包括CPU、內(nèi)存GPU知識,本期重點更新GPUCPU部分知識。比如:GPU更新包括架
    的頭像 發(fā)表于 11-13 11:47 ?1801次閱讀
    <b class='flag-5'>CPU</b>、<b class='flag-5'>GPU</b>和<b class='flag-5'>內(nèi)存</b>知識科普