以preemption的議題而言,這樣的比喻是恰當的。
不過async compute比較像是一條馬路要劃幾線道給兩種不同車輛(汽車和機車來比方好了)使用的情況。
Maxwell 2.0的架構類似只有一條機車專用道(compute),其他都是給汽車走(graphics)。機車和汽車現在可以不用互相排隊了,但是機車道的容量比較小,如果民眾都改騎機車並且走機車專用道,自然就變慢了。但是這些民眾原本可以開車。
引用:
作者orakim
> DX11時螞蟻無法團結 工作分配不到極限 打不贏蝗蟲
> DX12把工作切細 螞蟻能發揮效率 蝗蟲習慣單打獨鬥 要面對平行運算效率下降
用鐵路、馬路來比喻會比較適合
在穩定的運輸量下 時刻表固定,鐵路是非常有效率的交通工具(傳統的GPU rendering是這種)
但問題點是鐵路就一條,遇到其他列車搶道 那就要停下來讓他過;搶道的情形越頻繁鐵路的速度越慢
NV,intel的架構在 DX11就像是鐵路,在傳統圖形運算上是非常有效率的方式
GCN的架構在DX11 就是只有稀稀疏疏車輛的馬路,效率上沒辦法比的上NV,intel
DX12開放多執行緒,讓運算不再單純 NV,intel那種架構就很容易出現搶佔的情形
要讓火車停下來再出發耗費(延遲)的時間會讓它沒有效率;(這部份是context switch)
必須要降低搶佔的情形 (換句話說就是限制遊戲的功能),就出現NV要Oxide 關閉特定功能的狀況
GCN架構DX12與DX11不同點就在於
...
|