PTT評價

Re: [閒聊] A卡在CPU瓶頸的狀況下能較N卡快

看板PC_Shopping標題Re: [閒聊] A卡在CPU瓶頸的狀況下能較N卡快作者
oopFoo
(3d)
時間推噓10 推:10 噓:0 →:27

怒刪,XD,瞎子領路,亂扯一通。

問題是在State Changes,講了快20年了,外行人還是亂講一通。

2014年Nv還特別再講一次,
https://developer.nvidia.com/content/how-modern-opengl-can-radically-reduce-driver-overhead-0
https://reurl.cc/0DKWr6
http://media.steampowered.com/apps/steamdevdays/slides/beyondporting.pdf

最重要的一張圖
https://i.imgur.com/AnKac7V.jpg


Nv的驅動程式,在state changes時作很嚴謹的validation跟compilation,所以吃cpu,Amd驅動程式,嗯你知道的。

這幾個遊戲,從benchmark來看,就知道繪圖引擎寫的xx的,一定是State Changes亂換,batch沒做好,花的時間都在validation跟compilation。3090vs5600xt在1080p差不到2x?有點經驗的都知道,被State Changes打敗了。

--

※ PTT 留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.10.31.27 (臺灣)
PTT 網址

panex0845 03/11 22:42State Changes不夠嚴謹(O) State Changes處理慢(X)

panex0845 03/11 22:42嗯嗯 我好像突然都理解了

oopFoo 03/11 22:44沒寫過程式?optimizing compiling一定慢

henry46277 03/11 22:47你最重要的一張圖 看不到

henry46277 03/11 22:48縮一下網址好嗎?

LoveShibeInu03/11 22:48長知識

※ 編輯: oopFoo (101.10.31.27 臺灣), 03/11/2021 22:51:31

Bencrie 03/11 22:52咦?可是我去年寫 Vulkan 的時候 NV 的 validation

Bencrie 03/11 22:53好像還蠻鬆的說。intel 上面會炸的 code 在 NV 上

Bencrie 03/11 22:53會過 XD

跟Nv driver team聯絡,如果真有bugs他們會修正。他們反應很快。

sporocyst 03/12 00:18所以怎麼證明NV比較嚴謹?NV自己說是就是?

Amd遊戲一大堆崩潰,這還不夠證明

otaku690 03/12 02:24這是for oepngl好嗎? 現代API DX12/vulkan/metal

otaku690 03/12 02:25的validation幾乎都要application自己負責了

validation是driver永遠跑不掉的責任。Vulkan只是低階,State Changes的問題沒變

※ 編輯: oopFoo (101.10.31.27 臺灣), 03/12/2021 06:57:22

henry46277 03/12 07:53那A卡驅動現在不會了 是不是也沒比較嚴謹

oopFoo 03/12 08:02AMD的driver是有在改進,但人手不足資源不夠,不然

henry46277 03/12 08:03你這個是說在任何程式執行時都會套用這些驗證 而這

henry46277 03/12 08:03些驗證會吃 CPU的運算效能 聽你的意思是一種糾錯機

henry46277 03/12 08:03制? 所以 CPU異常的時候 N卡也會跟著異常?

oopFoo 03/12 08:03AMD的gpu其實沒那麼差。

henry46277 03/12 08:08就是說失去程式崩潰的預防機制?

oopFoo 03/12 08:21簡單來講,你貼圖handle有存在?檢查,buffer size對

oopFoo 03/12 08:22嗎?檢查。一堆東西要檢查,不然gpu傻傻執行就崩潰

oopFoo 03/12 08:23然後這些都是cpu來檢查。還有state changes的時候

oopFoo 03/12 08:24gpu的code要recompile,這都要靠cpu來作。

henry46277 03/12 09:23原來如此 所以一個遊戲越容易出錯 就越容易讓N卡驅

henry46277 03/12 09:23動更依賴 CPU摟

oopFoo 03/12 09:43應該是這麼說,遊戲其實常常傳錯誤參數,但驅動程式

oopFoo 03/12 09:43不能讓這些錯誤造成遊戲崩潰,所以你傳的參數要檢查

oopFoo 03/12 09:45然後修正。但不管遊戲有沒有錯誤,驅動程式都會仔細

oopFoo 03/12 09:45檢查參數,這會花一些時間。

oopFoo 03/12 09:48但,花時間最多的應該是compile gpu code

oopFoo 03/12 09:49Nv的gpu code確實效率佳

tint 03/12 12:34N卡在Kepler架構後 其實Scheduling的過程一部份會

tint 03/12 12:34會交給CPU來處理 所以對CPU的依賴有稍微提高

kuma660224 03/12 23:46那也可能是客戶需求問題衍生結果

kuma660224 03/12 23:46AMD顧慮家機客戶,常常CPU很鳥

kuma660224 03/12 23:47驅動必須盡可能吃最少cpu資源

kuma660224 03/12 23:48而PC GPU是家機架構同系列的產物