是否能將GPU的一個流處理器看做是一顆核心?

流處理器是否能與一顆完整的核心劃等號?


不能。GPU上的一個sp只相當於CPU上SSE裡面的一條通路。你要那麼算的話,CPU核心數應該至少乘個4。


流處理器這個名字各家定義不一樣。

內部和外部的定義可能也不一樣。

對於NV的宣傳資料來說,一個流處理器指的是一路ALU。


不能,見軟硬體介面附錄。

NvidiaGPU執行最小單位是Warp,而AMD則是Wavefront。這倆是GPU調度最基本的單元,也是執行最小單元。而且Warp之間相對獨立。比如一個GPU,有128個Warp,每個Warp又有32或者64個線程,我們認為這就是128核吧,當然SMX中寄存器文件有限,如果SMX中一個Warp用多了,必然會讓別的Warp受影響,但是相對而言比一個超標量流水線內多個Pipeline還是關聯小,So Warp Wavefront當核心就行,如果把SMX CU才當一個核心應該太浪費了。


這只是一個simd的一條lane而已,甚至連硬體上的一個alu都算不上。硬體上sm或者cu中都是使用vec4 alu拼接成一個simd,再由多個simd和控制邏輯,儲存單元組成一個cu或者sm。cu和simd這個層面才能被稱為一個處理器。


單個流處理器沒有獨立的指令地址,指令流一般是一組流處理器(4,16或者64個)共享的。流處理器不能算獨立核心吧


不能,一個單獨的流處理器只相當於中央處理器中的ALU,而其它的諸如指令分發分支預測等都不存在。

不過現在一般都有個最小單元這麼一說,英偉達叫MMX,amd不清楚名字,通常是把多個小流處理器合併在一起配上上述所說的缺失部分,這個可以等同於一個處理器核心。


推薦閱讀:

什麼事讓你對NVIDIA由粉轉黑的?
A卡戰未來?其實那這是A卡的遮羞布
AMD授權中國開發X86伺服器晶元,合作共贏!

TAG:半導體 | NVIDIA英偉達 | AMD | 圖形處理器GPU |