CUDA硬件架构知识
生活随笔
收集整理的這篇文章主要介紹了
CUDA硬件架构知识
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
本博文是根據(jù)中科大信息學(xué)院譚立湘老師的課件加上自己的理解整理出來(lái)的
************************************************************************************
1.NVIDIA的GPU顯卡歷程:
Tesla->Fermi->Kepler->Maxwell->Pascal->Volta->Turing(2018)
2.體系結(jié)構(gòu)相關(guān)術(shù)語(yǔ):
-
SP(Streaming Processor):流處理器是GPU運(yùn)算的最基本計(jì)算單元=core。
-
SFU(Special Function Unit):特殊函數(shù)單元用來(lái)執(zhí)行超越函數(shù)指令,比如正弦、余弦、平方根等函數(shù)。
-
Shadercore(渲染核/著色器),SP的另一個(gè)名稱,又稱為CUDA core,始于Fermi架構(gòu)
-
DP (雙精度浮點(diǎn)運(yùn)算單元)
-
SM(Streaming Multiprocessors):流式多處理器是GPU架構(gòu)中的基本計(jì)算單元,也是GPU性能的源泉,由SP、DP、SFU等運(yùn)算單元組成。這是一個(gè)典型的陣列機(jī),其執(zhí)行方式為SIMT(單指令多線程),區(qū)別于傳統(tǒng)的SIMD(單指令流多數(shù)據(jù)流),能夠保證多線程的同時(shí)執(zhí)行。
Tesla的SM:
由8個(gè)SP、2個(gè)SF和一個(gè)執(zhí)行雙精度運(yùn)算的DP組成,同時(shí)還包含了寄存器、共享存儲(chǔ)、常量存儲(chǔ)等單元。
-
SMX: Kepler架構(gòu)中的SM
-
SMM: Maxwell架構(gòu)中的SM
? ? ? ?無(wú)論是SMM還是SMX還是SM都是一回事
-
TPC(Thread Processing Cluster)線程處理器簇:由SM和L1 Cache組成,存在于Tesla架構(gòu)中。
-
TPC(Texture Processing Cluster)紋理處理器簇:出現(xiàn)在Pascal架構(gòu)中。
Tesla架構(gòu)的TPC:
2~3個(gè)SM配合L1 Cache構(gòu)成TPC,Tesla架構(gòu)主要核心型號(hào)有G80和GT200 每個(gè)TPC均由一個(gè)SM控制器進(jìn)行統(tǒng)一控制。
-
GPC(Graph Processing Cluster)圖形處理器簇:類似于TPC,是介于整個(gè)GPU和SM間的硬件單元,始于Fermi構(gòu)架。
-
SPA(Scalable streaming Processor Array)可擴(kuò)展的流處理器陣列:所有處理核心和高速緩存的總和,包含所有的SM、TPC、GPC。與存儲(chǔ)器系統(tǒng)共同組成GPU構(gòu)架。
-
MMC(MeMoryController)存儲(chǔ)控制器:控制存儲(chǔ)訪問(wèn)的單元,合并訪存。每個(gè)存儲(chǔ)控制器可以支持一定位寬的數(shù)據(jù)合并訪存。
-
ROP(raster operation processors)光柵操作單元
-
LD/ST(Load/Store Unit)存儲(chǔ)單元
3.雙warp調(diào)度機(jī)制
在每個(gè)SM前端都有兩個(gè)線程束調(diào)度器(Warp Scheduler)和兩個(gè)指令分發(fā)單元(Instruction Dispatch Unit),并且和SM 其它部分完全獨(dú)立,指令分發(fā)單元和執(zhí)行硬件之間有一個(gè)完整的交叉開(kāi)關(guān),每個(gè)單元都可以向SM內(nèi)的任何單元分配線程。
SM 是以warp為單位調(diào)度線程的,每一個(gè)SM 的兩個(gè)warp調(diào)度單元和兩個(gè)指令分發(fā)單元,允許同時(shí)啟動(dòng)和執(zhí)行兩個(gè)warp。
Fermi雙warp 調(diào)度機(jī)制可以同時(shí)啟動(dòng)兩個(gè)warp,并且將每個(gè)warp的一條指令分發(fā)到一組16個(gè)CUDA Core上、16 個(gè)存取單元中或者是4 個(gè)SFU上執(zhí)行。因?yàn)閣arp 彼此單獨(dú)執(zhí)行,所以Fermi的調(diào)度單元不需要檢查指令流之間的相關(guān)性。
-
Warp(線程束):32線程 。SM內(nèi)以warp為單位并行執(zhí)行
-
–Warp內(nèi)的線程執(zhí)行同一條指令
-
(步調(diào)一致)
-
–Half-warp是存儲(chǔ)操作的基本單位
- ***************************************************************************************************************
-
?CUDA中g(shù)rid、block、thread、warp與SM、SP的關(guān)系<-可以看這里
每一代架構(gòu)內(nèi)容太多了,如果有需要具體架構(gòu)內(nèi)容,可以留言
?
?
?
?
總結(jié)
以上是生活随笔為你收集整理的CUDA硬件架构知识的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: CUDA中grid、block、thre
- 下一篇: CUDA软件系统知识