【AMD/NVIDIA】HWS vs SWS: 誰是贏家? - 3C

Zanna avatar
By Zanna
at 2017-04-03T22:04

Table of Contents

原出處:https://www.youtube.com/watch?v=nIoZB-cnjc0

中文翻譯整理:http://www.mykancolle.com/?post=1589
--
NerdTechGasm做了一期影片講述了GCN架構和NVIDIA從Fermi到現在Scheduler的變化
能夠很清楚的解釋為什麼當前GCN的A卡在DX11下性能不及N卡,以及為何DX12下A卡發揮更
好,而N卡CPU佔用率高

典型的DX11遊戲中,Draw Call全在主執行緒上,瓶頸比較嚴重
http://i.imgur.com/kJHAnAH.jpg

使用Command Lists時,將Draw Call打包分給其他核心處理後再交給主執行緒,一定程度
上緩解瓶頸
但並沒有完全解決問題,因為有硬體瓶頸在。
http://i.imgur.com/W5SyD0o.jpg

而NV的DX11驅動永遠都是多執行緒的
通過CMDList “Server”進程實現,“Server”進程監控Draw Call,攔截D raw Call後
分給各個執行緒
這個解決方法很好。
驅動是從AMD開始在BF4上試水Mantle後出來的。
http://i.imgur.com/KQHeT6C.jpg

新的DX11“多執行緒”驅動使得N卡受CPU單執行緒的瓶頸影響小了很多
只能用到1-2個執行緒的優化很差的遊戲突然在N卡上跑的快了很多,同時導致非常吃CPU
的PhysX在N卡上變得幾乎沒有負面影響。
http://i.imgur.com/zPTe8PG.jpg

這也是為什麼N卡在DX11上佔優的原因。
http://i.imgur.com/5IvYekM.png
http://i.imgur.com/Vtj00wx.png
http://i.imgur.com/QocCJxr.png

Draw Call提交到GPU後,調度器決定如何把工作分配給CU/SMX
然後通過HW Warp Scheduler分配給SP/CUDA核心

之前在Fermi上,NVIDIA設計了一個很強大的HWS-GigaThread Engine,類似於目前GCN的
HWS
http://i.imgur.com/h2Dggnk.png

Fermi因為功耗太高被稱為核彈
為了提升能效,在Kepler上NV砍掉和簡化了很多東西,其中就包括HWS,改為軟體,也就
是驅動來進行的SWS。
http://i.imgur.com/Kq7zjHs.png

NV的調度器是基於軟體的,也就是驅動程序。它可以接受許多CMDList,甚至是比較大的
那種,因為它們在執行前都被快取了。
驅動程序確定了工作如何分配到每個SMX。

所以在遊戲時N卡的CPU佔用率會比A卡高不少。

AMD GCN上使用的則是硬體調度器HWS,驅動不負責分配工作,直接交給GPU,然後由HWS決
定工作分配。
設計上HWS更依賴於即時的內容,也就是要保持持續的Draw Call一直進入,而不是
CMDList這種必須打包後分發的龐然大物。
GCN的HWS缺乏妥善支持CMDList的快取/機制。
http://i.imgur.com/3gTBOJK.jpg

如果直接將CMDList送到AMD GPU,驅動就需要重新處理,這會浪費CPU資源。
Polaris的HWS可以快取一點點,主進程瓶頸比之前幾代GCN稍有改善。
http://i.imgur.com/sHyZ5sq.jpg

DX11下對A卡來說最理想的情況,將游戲邏輯(AI、物理、音效等)盡量分配到其他的執
行緒,緩解主執行緒的瓶頸
http://i.imgur.com/qGpvSka.jpg

在DX11下,多執行緒優化良好的遊戲中的情況
http://i.imgur.com/JmkOQX1.jpg

而DX12和Vulkan等low-level API就不一樣了
DX12和Vulkan可以真正完全利用到GCN的HWS的優勢,主執行緒的瓶頸大大降低。
http://i.imgur.com/y1nKUkS.jpg

當然,在N卡上由於沒有HWS,就由驅動來承擔。
並行執行緒越多,合併、優化、分發等工作對於N卡的SWS就越困難。
對於軟體工程師來,說想在DX12上實現NV在DX11上一樣的效率就非常需要技巧。

在3DMark API overhead測試裡的結果並不能直接體現遊戲中的情況,因為真正的遊戲遠
比測試複雜得多。
3DMark測的只是理論上的,在現實中永遠不會出現的場景。
http://i.imgur.com/hJMq4R4.jpg

事先說明,N卡依然能在DX12和Vulkan中獲得性能提升。
只是需要遊戲開發者的大量經驗和調整
比如id Software開發的Doom,採用了Vulkan並且實現了非常高的效率 (可以說是目前優
化的標杆...)
http://i.imgur.com/TxrEvcJ.jpg

那麼硬體和軟體哪個更好?很明顯,目前NVIDIA是贏家。
AMD的賭注是DX12以及Vulkan的快速普及,因為DX11可能很快就會達到瓶頸,開發者就會
轉向下一代API

但DX11的生命週期要長於預期。

就算是現在,很多遊戲依然只集中使用1-2個執行緒,對剩下的執行緒利用不多。
在這種情況下,NV的DX11驅動就能將Draw Call分配給其他空閒CPU資源,增加Draw Call
吞吐量。

真正很好地優化了多執行緒的遊戲很少,大多都是主機移植的。
N卡的SWS帶來的額外CPU overhead雖然會帶來一點負面影響,這也能被更快更多的CPU核
心/執行緒抵消。

在主要利用一個執行緒的遊戲中,N卡會有巨大優勢
而對於A卡,GCN架構會被主執行緒的瓶頸嚴重影響。

所以目前來說NV的SWS更優,在正確的時間點- DX11上提供了更好的性能。
http://i.imgur.com/tePGbn5.jpg

而AMD更需要DX12和Vulkan的普及,也需要遊戲引擎改進對多執行緒的優化,特別是現在
有了Ryzen CPU。
主機上八核的優化優勢還會繼續下去。

而NV更有$,只要肯給工作室砸錢,就可以決定遊戲在PC上如何優化。
在這方面AMD缺乏競爭資源,工程師更少,能贊助給工作室的錢也更少。

同時AMD也必須在硬體設計上更靈活一些,以對抗NV的策略。
Polaris上的Discard Accelerator就是這樣的設計,抵消了x32/x64曲面細分的瓶頸。【
很多遊戲,比如孤島危機2中就用了非常大量且毫無必要的曲面細分(故意的),A卡性能
受到很大影響】
改進的HWS和整數預取也對減輕主執行緒瓶頸有幫助。

Vega將會大幅改善HWS和效率,因為DX11還將維持很長時間。

遊戲將會變得越來越複雜,DX11 Draw Call瓶頸對於AMD來說,即便是多執行緒優化良好
的遊戲裡也會成為主要瓶頸。
http://i.imgur.com/Rqx0jIw.jpg

--
Tags: 3C

All Comments

Lucy avatar
By Lucy
at 2017-04-07T23:44
未看先推
Skylar DavisLinda avatar
By Skylar DavisLinda
at 2017-04-10T15:59
讚讚 好文
Agnes avatar
By Agnes
at 2017-04-11T07:44
先推以免別人說我看不懂
Charlotte avatar
By Charlotte
at 2017-04-15T22:12
VEGA再怎麼改善效率,在DX11還是難敵1080Ti吧?
應該主力都放在推DX12,這樣CPU也能受益
Una avatar
By Una
at 2017-04-18T23:02
那也要今年和明年DX12馬上變主流
Christine avatar
By Christine
at 2017-04-20T18:06
預購了EVGA 1080Ti FTW3,但還是觀望VEGA能夠爭氣QQ
Jake avatar
By Jake
at 2017-04-25T13:10
....gamework
Olivia avatar
By Olivia
at 2017-04-27T10:18
下一代主機就會換dx12了 再等幾年amd就會贏了
Madame avatar
By Madame
at 2017-05-01T11:11
要稱多久阿
Mason avatar
By Mason
at 2017-05-05T23:24
沒錯,等到2020年就知道誰的褲子沒穿
Selena avatar
By Selena
at 2017-05-06T14:12
農企一代架構可以馬甲三代...
Selena avatar
By Selena
at 2017-05-07T17:08
然後還能跟NV對打...
Tristan Cohan avatar
By Tristan Cohan
at 2017-05-10T04:53
馬甲的那三代後面被打爆了
Emily avatar
By Emily
at 2017-05-11T00:25
Polaris有做改良和更新到14nm製程
Ida avatar
By Ida
at 2017-05-14T20:17
海水要退還要好幾年勒
Candice avatar
By Candice
at 2017-05-18T18:22
推。
Vanessa avatar
By Vanessa
at 2017-05-23T07:56
馬甲三代的不是GT系列嗎?
Quintina avatar
By Quintina
at 2017-05-27T08:38
id的doom竟然是做了這麼強的編寫能力
Isabella avatar
By Isabella
at 2017-05-30T14:44
Zora avatar
By Zora
at 2017-06-02T04:10
等DX12變主流 NV也不是不能改架構阿……
David avatar
By David
at 2017-06-02T12:46
嗯 改回費米打自己臉嗎? wwwwwww
Hedy avatar
By Hedy
at 2017-06-06T10:13
現在怕的就是AMD追上來後 NV的架構也做深度優化跟改
善了
Joseph avatar
By Joseph
at 2017-06-08T21:20
笑了 DX11一開始是誰佔優勢? A粉多用點腦子看看歷
史吧
James avatar
By James
at 2017-06-13T02:00
腦子哥這篇居然沒用噓了 QAQ
Catherine avatar
By Catherine
at 2017-06-15T21:34
開戰啦!!!
Hazel avatar
By Hazel
at 2017-06-17T03:55
雞排準備好了
Gary avatar
By Gary
at 2017-06-19T14:48
陳三鼎買好了!
Connor avatar
By Connor
at 2017-06-24T11:40
我比較喜歡吃鮑伯啦,排什麼陳三鼎
Charlotte avatar
By Charlotte
at 2017-06-26T09:10
不要 巴伯那天發現用林鳳營 秒打入冷宮
Puput avatar
By Puput
at 2017-06-26T23:52
先推以免別人說我看不懂
Charlotte avatar
By Charlotte
at 2017-06-29T05:00
Dx9都還活的好好的
Leila avatar
By Leila
at 2017-06-30T22:05
可惡 原來未來還是nv的
Genevieve avatar
By Genevieve
at 2017-07-03T13:16
Dissipate: 笑了DX11一開始是誰佔優勢? ← 當然是
Bethany avatar
By Bethany
at 2017-07-08T03:46
A家啦,因為第一張支援DX11的顯卡是5870,而N家的第
Andy avatar
By Andy
at 2017-07-11T20:21
一張支援DX11的顯卡還沒上市勒(GTX480 2010-4上市)
Michael avatar
By Michael
at 2017-07-12T23:07
兩者上市時間足足差了半年!
Blanche avatar
By Blanche
at 2017-07-15T04:35
不止啦 DX應該從8.1之後每代都是A卡先搞好
然後A卡就會爽吃兩年擺爛 然後被NV痛宰又再努力一年
Ina avatar
By Ina
at 2017-07-18T02:06
不過前幾年的落後已經是資金被抽走的問題了
Sierra Rose avatar
By Sierra Rose
at 2017-07-19T15:01
蘇媽把錢投去U,老黃從Maxwell後壓著農企打
Emma avatar
By Emma
at 2017-07-20T14:02
這次Ryzen賣的不錯 Raja應該比較有錢搞研發了QQ
Liam avatar
By Liam
at 2017-07-24T07:26
上次不是蘇媽抽的吧.. 是前CEO Rory
Emma avatar
By Emma
at 2017-07-24T20:57
賣得不錯也是下一代Navi才會受惠吧? VEGA都開發完
了 雖然說開發VEGA是拿M軟的錢就是XD
Erin avatar
By Erin
at 2017-07-29T16:46
這應該要看蘇媽的態度 賣掉RTG一直都是選項之一
Odelette avatar
By Odelette
at 2017-08-01T20:55
為什麼要賣掉RTG? 這樣對AMD有好處嗎?
Blanche avatar
By Blanche
at 2017-08-06T08:40
不過沒人想買 便宜的時候沒人要 貴的時候出不起QQ
Michael avatar
By Michael
at 2017-08-07T06:53
前CEO把錢押去ARM跟K12 雖然也沒搞出啥名堂
Mason avatar
By Mason
at 2017-08-09T02:33
對RTG有好處壓
RTG離開amd 想用的都可以用
Oscar avatar
By Oscar
at 2017-08-11T04:58
賣掉的消息好像一直有 不過賣了搞那麼多年的APU怎
麼辦?
Mason avatar
By Mason
at 2017-08-12T04:46
apu跟RTG授權就好
Charlotte avatar
By Charlotte
at 2017-08-16T02:59
不研發買授權用現成的?
Hardy avatar
By Hardy
at 2017-08-16T10:37
賣掉RTG 微軟和索索會不會抖一下啊..
Rebecca avatar
By Rebecca
at 2017-08-19T02:40
主要的問題是沒多少人懂gaming 作平行運算的規模也
不夠大
當然就是想拐M軟跟S尼來買 表對手
大家都知道蘇媽當初在想捨摸 只是沒人想搞競標
Caitlin avatar
By Caitlin
at 2017-08-23T01:31
這兩家看起來 索索應該買不起RTG啦
可是M軟就算買得起 買他又要幹嘛XD
George avatar
By George
at 2017-08-24T07:28
快兩年前amd要掛的時候蘇媽只要是救命錢都收
Erin avatar
By Erin
at 2017-08-28T17:03
就表S尼
不過M軟新CEO不太想衝xb
Charlotte avatar
By Charlotte
at 2017-08-31T21:19
拐M和S買好像還是會騙錢的感覺XD
Kristin avatar
By Kristin
at 2017-09-02T15:45
lol
Heather avatar
By Heather
at 2017-09-03T05:56
M軟買RTG以後遊戲絕對是Radeon驅動值五千啊
Erin avatar
By Erin
at 2017-09-04T17:24
不太想衝XB怎摸還會有天蠍?
Ingrid avatar
By Ingrid
at 2017-09-08T15:05
不想自己買頭牛啊XD
William avatar
By William
at 2017-09-12T17:57
天蠍只是照既定路線作而已
Leila avatar
By Leila
at 2017-09-13T21:32
不過我不懂 如果M軟買RTG 那CPU還是得跟別人買不是
嗎? 這樣有賺頭嗎?
Gary avatar
By Gary
at 2017-09-16T13:16
搞死索索而已QQ
搞死對手 運氣好就是通吃
Aaliyah avatar
By Aaliyah
at 2017-09-18T16:33
當然婊對手是一招 可是M軟就算沒XB也沒差吧
Quintina avatar
By Quintina
at 2017-09-22T21:13
那RTG獨立出來一間公司 有沒有搞頭?
Hedda avatar
By Hedda
at 2017-09-27T11:08
沒錢QQ
Mason avatar
By Mason
at 2017-09-30T00:53
未看先推大師要出來收割了
Edward Lewis avatar
By Edward Lewis
at 2017-10-02T11:02
說不定連桌上型顯卡都通吃了哩
William avatar
By William
at 2017-10-04T12:25
老黃不致於坐以待斃喇
老黃黑招多的是QQ
Edward Lewis avatar
By Edward Lewis
at 2017-10-08T21:04
M軟的硬體軟體都自家人啊
Hedwig avatar
By Hedwig
at 2017-10-13T09:11
RTG賣給intel有沒有搞頭啊XD
Agatha avatar
By Agatha
at 2017-10-17T19:16
當初Ati據說跟intel也走得很近,結果AMD被溢價收購w
Ati員工當初本來都以為是賣給intel
Agatha avatar
By Agatha
at 2017-10-18T05:52
老黃除非AI那塊全部打水飄 不然穩穩的吧
David avatar
By David
at 2017-10-18T23:42
被intel買走會不會變成統一全世界啊
Selena avatar
By Selena
at 2017-10-19T01:10
賣給Intel大概就準備養老了(?)
Olga avatar
By Olga
at 2017-10-22T08:39
intel沒啥興趣衝GPU
Tom avatar
By Tom
at 2017-10-23T20:36
被intel買走 老黃就跟amd惹
intel當年是有興趣的優 只是出惹拉拉比太糞
Frederica avatar
By Frederica
at 2017-10-25T19:37
RTG部門現在在AMD內部分不到太多資源QQ
Emma avatar
By Emma
at 2017-10-25T22:43
買了我猜跟iGPU現狀差不了多少
我記得Intel喊了沒多久就裝死不是?
Valerie avatar
By Valerie
at 2017-10-30T09:37
現在好很多 2015那時候很慘
現在蘇媽想幹大事都會扯到gpu
Gilbert avatar
By Gilbert
at 2017-11-01T00:21
現在RTG部門的頭頭 Raja 也不是很爽這件事QQ
Edith avatar
By Edith
at 2017-11-04T22:46
cpu沒辦法 沒梗 就市場大 超大
可是想搞dl/ai 那只有找顯卡QQ
Anthony avatar
By Anthony
at 2017-11-08T10:31
14年明明就還好QQ
Harry avatar
By Harry
at 2017-11-09T02:27
GPU大改架構也需要花大錢跟時間,現在AMD還沒那麼多
錢可以讓Raja研發新的架構QQ
結果就是一直在改GCN QQ
Valerie avatar
By Valerie
at 2017-11-11T04:42
今天股價又鳥鳥QQ
Erin avatar
By Erin
at 2017-11-13T18:28
最近應該固件都是這樣吧
股價
Aaliyah avatar
By Aaliyah
at 2017-11-17T04:04
幹嘛改掉GCN? 給我一個改掉GCN的理由
Dinah avatar
By Dinah
at 2017-11-18T20:11
Raja也對GF很無奈不是QQ
Kelly avatar
By Kelly
at 2017-11-20T00:40
無奈沒關係啊 GF做得出Zen AMD大概就超爽了
Suhail Hany avatar
By Suhail Hany
at 2017-11-22T20:46
不然以後給牙膏廠代工GPU好惹
Charlotte avatar
By Charlotte
at 2017-11-24T13:20
何況更大的Polaris都做出來了 該知足了喇
Andy avatar
By Andy
at 2017-11-29T10:59
看不懂,但還是推
Quanna avatar
By Quanna
at 2017-12-02T08:29
我也是看過RTG想賣掉的傳聞
Eartha avatar
By Eartha
at 2017-12-03T05:03
M$和索索都不會買,只能AMD繼續養
住破屋沒辦法惹
Kristin avatar
By Kristin
at 2017-12-04T12:03
上次在版上問人還被嗆說有賺錢幹嘛賣QQ
Kama avatar
By Kama
at 2017-12-08T11:01
價錢不對怎樣都不會買,要喝奶幹啥花大錢養牛
Skylar Davis avatar
By Skylar Davis
at 2017-12-12T04:05
所以我覺得蠻好奇的,怎麼會有這種風聲
Kama avatar
By Kama
at 2017-12-12T15:37
DX12的Indirect Drawing可以將Draw Call的command
存成一種buffer的形式一口氣一次丟給GPU執行
Genevieve avatar
By Genevieve
at 2017-12-14T18:22
教主上面說了 窮 沒錢 什麼都想賣
Sierra Rose avatar
By Sierra Rose
at 2017-12-18T03:31
數百千計Draw Call程式這邊執行一次ExecuteIndirect
就能執行了,軟體商只要好好優化一定能發揮好它
Poppy avatar
By Poppy
at 2017-12-22T15:31
現在應該是暫時沒有賣RTG 的打算了
Steve avatar
By Steve
at 2017-12-27T02:58
NV現在的架構不是也是從廢米一路小改到現在?
Eartha avatar
By Eartha
at 2017-12-28T17:14
Vanessa avatar
By Vanessa
at 2018-01-02T00:37
沒拔 費米跟之後的差距很大 是最近兩三代差不多
Noah avatar
By Noah
at 2018-01-04T22:08
如果GCN被取代,一定是因為GCN 2.0後面要接The New
Isla avatar
By Isla
at 2018-01-09T11:50
GCN沒錯
Ivy avatar
By Ivy
at 2018-01-12T11:43
GPU架構本來就是用改的,不是用換的
Valerie avatar
By Valerie
at 2018-01-17T08:35
修改也只是根據當時軟體趨勢做調整
Odelette avatar
By Odelette
at 2018-01-21T04:23
需求變化很大才會大改。像是從繪圖轉向
GPGPU, 現在又轉向AI...
Joseph avatar
By Joseph
at 2018-01-24T16:56
需求差異大時才換架構。
Necoo avatar
By Necoo
at 2018-01-25T10:17
AMD,許你個未來

25K文書影音機

Charlie avatar
By Charlie
at 2017-04-03T21:24
已買/未買/已付訂金(元): 未買 預算/用途: 因為之前的電腦已經用了七年左右(i5-750),跑起來有時候有點吃力, 想將一些元件給升級,平常主要的功能為文書、上網、音樂、偶而玩遊戲, 並且因為放置電腦空間的限制,需要採用M-ATX的主板規格,使用M-ATX的機殼 參考了板上一些菜單並根據自己的喜好 ...

10K左右架網站小主機請益

Irma avatar
By Irma
at 2017-04-03T20:08
已買/未買/已付訂金(元): 未買 預算/用途: 練習用虛擬機架server,寫寫網站放在上面run,以後可當文書機。 CPU (中央處理器): Intel Pentium G4600【雙核】3.6GHZ/3M快取/HD630/51W MB (主機板): 技嘉 B250M-D3H(M-ATX/1 ...

Kaby Lake-G in da house

Daph Bay avatar
By Daph Bay
at 2017-04-03T19:05
source https://benchlife.info/intel-kaby-lake-g-confirm-in-roadmap-with-14nm-04032017/ -- Intel 與 AMD 合作的第 7 代 Core i 系列處理器似乎是真的。 早前曾傳出 Intel Core i 系列處 ...

想請較這樣升級對程式編譯速度的改善

Joe avatar
By Joe
at 2017-04-03T18:58
小弟現在使用acer Revo One RL85 規格如下: 處理器:Intel Core i5 5200U(up to 2.70 GHz) 記憶體:DDR3L 1600 4GB 儲存裝置:1TB S-ATA+hybrid 8G SSHD 主要就是用來寫PowerLanguage程式編譯 但現在程式複雜後 ...

ASUS X370-PRO BIOS 0515

Jack avatar
By Jack
at 2017-04-03T18:54
看日期是3/31號發布 不過我直到昨天才看到就是了 更新內容如下: 1.Improve system stability. 2.Enhance memory compatibility 3.Improve CPU temperature monitor function 不知道這個是否已經有把溫度修正還 ...