GPU = 顯存 + 計(jì)算單元
1、顯存(Global Memory):顯存是在GPU板卡上的DRAM,類似于CPU的內(nèi)存,就是那堆DDR啊,GDDR5啊之類的。特點(diǎn)是容量大(可達(dá)16GB),速度慢,CPU和GPU都可以訪問。
2、計(jì)算單元(Streaming Multiprocessor, SM):執(zhí)行計(jì)算的。每一個(gè)SM都有自己的控制單元(Control Unit),寄存器(Register),緩存(Cache),指令流水線(execution pipelines)。

CUDA core也叫Streaming Processor(SP),SM和SP一個(gè)意思
DP Unit:雙精度核心
GP100里,每一個(gè)SM有兩個(gè)SM Processing Block(SMP),里邊的綠色的就是CUDA Core,CUDA core也叫Streaming Processor(SP),這倆是一個(gè)意思。每一個(gè)SM有自己的指令緩存,L1緩存,共享內(nèi)存。而每一個(gè)SMP有自己的Warp Scheduler、Register File等。要注意的是CUDA Core是Single Precision的,也就是計(jì)算float單精度的。雙精度Double Precision是那個(gè)黃色的模塊。所以一個(gè)SM里邊由32個(gè)DP Unit,由64個(gè)CUDA Core,所以單精度雙精度單元數(shù)量比是2:1。LD/ST 是load store unit,用來內(nèi)存操作的。SFU是Special function unit,用來做cuda的intrinsic function的,類似于__cos()這種。
CUDA Core

包括控制單元Dispatch Port、Operand Collector,以及浮點(diǎn)計(jì)算單元FP Unit、整數(shù)計(jì)算單元Int Unit,另外還包括計(jì)算結(jié)果隊(duì)列。當(dāng)然還有Compare、Logic、Branch等。相當(dāng)于微型CPU。
GPU內(nèi)存架構(gòu)
越靠近SM的內(nèi)存就越快。
- L1 Cache:Pascal架構(gòu)上,L1 Cache和Texture已經(jīng)合為一體(Unified L1/Texture Cache),作為一個(gè)連續(xù)緩存供給warp使用。
- L2 Cache:用來做Global Memory的緩存,容量大,給整個(gè)GPU使用。