到底是進步還是退步?顯卡雙雄DirectX11宿命對決

 

自從AMD在2009年9月推出第一張DX11的遊戲卡時,就已經揭開DX11遊戲卡大戰的序幕,而NVIDIA的GTX400系列雖然在第一戰的推出時程晚了半年才問世,不過在DX11的效能表相當優異。一年過去了,

AMD再度推出HD6000系列的DX11遊戲卡,除了整體效能再提升之外,並且強調DX11的相容性和效能調整,也導入全新的電源管理技術。另一方面,NVIDIA這次也迅速推出GTX500系列,除了強化DX11的效能之外,還修正了供電以及散熱的部分!這次兩家推出新卡的時間差不多,實力也相當將近,網路上更是引起熱烈討論,所以兩虎之爭是免不了的,本期將再次進行GTX500和HD6000系列的DX11效能的宿命對決,來看看這一年來兩家死對頭的遊戲顯卡在DX11方面進步多少!

 
 
回顧雙雄跨入DirectX11的心血之路
 
各位還記得在2010年10月份的157期封面故事嗎?當時小編使用AMD的HD5970和NVIDIA的GTX480這兩張旗艦遊戲顯示卡,分別測試了DirectX11的Tessellation效能,但是很明顯HD5970在DirectX11的效能遠不如GTX480,這樣令人傻眼的結果有玩家對此提出了疑問,認為兩家所推出的DirectX11遊戲卡時間相差了半年之久,且世代不同的產品無法做比較,所以晚推出的NVIDIA似乎比較吃香!這樣的說法小編也認同,就產品推出的時程來看的確無法做比較,不過據小編收集到的情資顯示,NVIDIA早在2009年的11月就發表第一代的Fermi核心,雖然說已經準備好應戰AMD全線的HD5000系列產品,不過因為開發上不夠完善,且當時40奈米製程不夠成熟的關係,所以最後還是延遲推出。AMD方面雖然明知到DirectX11公佈的規格需求,也領先NVIDIA半年率先推出DirectX11顯示卡,而且為了要能運行DirectX11,只在上一代的核心中加入了SM5.0指令集和線路修改,由於沒有進一步的針對DirectX11優化調校,所以只要DirectX11的指令運用越多越複雜,效能就會大幅衰退!因為核心架構的設計不夠成熟且對於DirectX11的支援度不高,尤其是DirectX11中最重要的關鍵「Tessellation」透過HD5000系列表現更是顯得無力,或許顧慮到當時並沒有太多遊戲支援DirectX11,甚至在往後的一年內也不會有太多的DirectX11遊戲上市,所以就延續用上一代的Cypress架構並加入DirectX11指令集,在HD5000系列推出之後由於NVIDIA並沒有相對應的產品,AMD也就稱霸獨顯市場大半年!
 
圖 / 這是小編在157期透過微軟所提供的Tessellation測試軟體所做的測試之一,
在圖中左下則是GTX480與HD5970的效能差異,當Tessellation的運
用越多HD5970相較於GTX480的效能衰退幅度就越大。
 
 
 
NVIDIA也在2010年4月GTX480亮相之後才開始有產品回擊,雖然如此,NVIDIA並沒有因此順利通過玩家的考驗,除了性價比相當低之外,就如前段文章所提到第一代Fermi的GF100核心在製程上有瑕疵,導致功耗及溫度過高,加上特殊的外露散熱鰭片設計,有玩家笑稱GTX480為「烤肉架」,在國外甚至有玩家用多張GTX480所產生的廢熱來煮蛋,經過幾個小時之後生雞蛋竟然熟了!直到GTX460(GF104)、GTS450(GF106)這幾張效能優異的規格推出之後,NVIDIA的Fermi才開始表現亮眼且受到各界玩家的矚目。而GTX480所使用的GF100和GTX580的GF110既然架構上並沒有什麼改變,那很悶的是NVIDIA一開始在推出Fermi的時候告訴大家Fermi有512個CUDA,但是GTX480卻只開啟480個CUDA?直到推出GTX580才完整開啟512個CUDA,難不成是GF100在製程上有什麼瓶頸?
 
圖 / GTX480由於GF100核心設計功耗過高,導致運作時溫度過高,
即使使用外露的大型散熱鰭片還是無法解決溫度的問題!
 
 
圖 / 國外有玩家將2張GTX480組成SLI,並在出風口放置一顆生雞蛋,
再利用GTX480產生的高溫廢熱來蒸蛋!(圖片來原為網路)
 
 
 
當開始跨入DirectX11的時代,難免會面臨到技術上的種種問題,就像是AMD雖然HD5000系列產品已有支援DirectX11,但是與NVIDIA的GTX400系列產品相比,不禁讓玩家們認為HD5000系列的DirectX11是個玩笑,毫無匹敵之力!一年後AMD推出HD6000系列顯示卡,這次不用想大家也都知道HD6000系列最大的改變就是DirectX11的效能,從各大網站及平面媒體的測試報告來看,HD6000系列在DirectX11的進步幅度相當大,原廠也表示對這次的新產品相當有信心,同時間讓人吃驚的是NVIDIA竟然繼GTX400系列後又再發表了GTX500系列顯示卡,此消息一公佈讓小編忍不住哇嗚一聲!NVIDIA為了不再讓AMD專美於前,迅速推出GTX500系列來應戰,這真的太瘋狂了!從GTX400推出後到GTX500也不過8個月竟然又推出新產品,玩家們懷疑縮短推出的時程是否也會影響產品的品質呢?但不管如何,AMD和NVIDIA這次新品推出的時程已經相近,理論上算是同一世代的產品,這樣就能名正言順的來場對決!
 
 
從DirectX11看到顯卡的架構改變
 
當我們從上一代產品來看,HD5000和GF400都只是DirectX11的開胃前菜,嚴格說起來技術都還不是真的成熟,實際運行DirectX11的遊戲都只能算是堪用,只要遇到DirectX11運用較多的遊戲,所得到的畫面張數都會讓你傻眼,因為在DirectX11的遊戲中為強調細緻的畫面使用非常大量的光影特效,增加了許多物理效果的反應以及在圖形的細節和複雜度,另外也針對多核心架構的處理器優化,畢竟遊戲的畫質要有所提升就必須增加圖型物件的複雜度,如從今年3D運算軟體測試公司Futuremark所推出的3DMark 11,這是一款全新的DirectX 11測試軟體,測試內容中的場景猶如好萊屋電影般的運鏡手法,不論是光線效果或是景深都讓人看得目不轉睛,但這也表示說接下來的遊戲畫面將會是如此逼真,不過還是需要藉由顯示卡來呈現。
 
小編在157期提到過DirectX 11主要有五大特點,包含Tessellation(細分曲面)、Multi-Threading(多線程處理)、DirectCompute 11(計算著色器)、ShaderModel 5.0(著色器指令集5.0)、Texture Compression(紋理壓縮),期中最重要的一環就是Tessellation,可以稱為鑲崁圖形或細分曲面,但是要構成Tessellation必須要是「頂點相連接」以及「邊密合相連接」所組成的多邊形,透過Tessellation能在不增加繪圖核心的負擔下,有效率的產生極多且複雜的多邊形,大幅提升畫面中物件的立體感。
 
 
圖 / 左圖為Tessellation關閉狀態,右圖開啟Tessellation之後與左圖之間的差異甚大,
例如圖片中龍身上的造型完全不同,右邊的樓梯,在右圖並沒有明顯輪廓,
但是左圖的樓梯呈現立體,包括房屋的屋瓦、地面,
甚至畫面中的每個物件都會變得更立體!
 
 
 
其實Tessellation技術在多年前就已經問世,但是當時的使用環境需要不大,主要還是顯示卡的效能還無法達到水準,所以也就不被看好,但是為什麼需要Tessellation呢?玩家們在玩遊戲的時候難免會被細致的畫面所吸引,但是玩家們或許不知道以往的遊戲畫面中的物件幾乎都是平面的貼圖,只是透過顏色明暗深淺來產生層次,遠看還行,但畫面一拉近感覺就差多了!因為圖形設計師在開發遊戲畫面的時候必須考量時下硬體的效能,一方面也要減輕開發時的負擔,所以較遠的場景畫面或是次要的物件都會使用較粗糙的構圖加上貼圖來呈現,但是藉由顯示卡來運算Tessellation之後,圖形設計師只要在建模時構出簡單的圖形方塊,經由繪圖核心中圖形引擎的Tessellation加以運算,能在一個多邊形區塊內添加難以計算的三角形,接下來是重點唷,各為要仔細聽!透過Tessellation運算過的物件可以產生擁有難以計算的點、線、面,多邊形越多所產生的物件就越平滑,而且還有更大的變形幅度,最後玩家所看到的畫面就更逼真立體,地上的小石頭保證一定是立體的,不會再是平面的貼圖!
 
圖 / 遊戲中的物件都需要透過3D繪圖軟體來建模,以點、線、面三種元素形成圖形,
而Tessellation就是在其中崁入無數三角形讓物件變得更平滑立體。
 
 
 
除了Tessellation在整個圖形運算中佔有相當重要分量之外,大家或許還不知道DirectX11的另一項革命技術「Ray Tracing光線追蹤技術」,這項技術的特點就是能使圖形上的光線和影子更接近真實,我們都知道遊戲中很多看似立體的物件其實都是平面的,包括畫面中的光影的位子也都是固定不變,但是只要透過Ray Tracing技術加以運算之後,能夠真實模擬出現場的光源反射,並且會隨著場景的轉換呈現即時動態效果,3D電影阿凡達製做過程中就是採用「PantaRay光線追蹤引擎」,讓所有的不論是真實人物或是虛擬角色物件都像是真實生活在潘朵拉星球上。上述的這些技術與功能看似酷炫,但實際運作起來是非常複雜的,世代交替的技術對於原廠來說是一大挑戰,要如何讓改進核心架構的效能更是難題,接下來進一步來分析AMD與NVIDIA如何為了DirectX11而改變核心架構!
 
圖一
 
 
圖二
 
圖 / Ray Tracing光線追蹤技術可以呈現物件真實的光源反射,像圖一中的汽車物件的反光會隨著視角改變,
而倒影也會印出真實的效果!圖二則是物件陰影透過Ray Tracing呈現在不平整的地面上,
影子會隨著高低起伏而改變造型,達到動態光影效果。
 
 

第二代DirectX11顯示卡戰力分析

 

 

 

 

 

 

規格表中的顯卡就是AMD與NVIDIA上下兩代最高階的單晶片產品,一樣都是支援DirectX11特效技術,但新一代的規格在效能上都有提升,像AMD的記憶體更是從HD5870的1GB跳升到2GB,提升效能是件好事,不過提升功耗就還挺怪的,正常都希望效能比上一代更高但要更省電、更低溫,GTX580功耗有比GTX480還低,小編實際測試後滿載兩者的差距更大,但HD6970的功耗比HD5870高了112W,這個差距有點大,畢竟功耗提升工作溫度也會跟著上升,這部分下面會有測試,還是繼續往下看吧!
 
話說AMD這次在HD6000系列的核心算是下了很大的功夫,為了提升DirectX11的運算效能,也將核心的運算架構進一步的修改,這部分我們在162期的本月焦點就有提到,HD5000系列除了SIMD陣列的排列方式沒有改變之外,最明顯的就是Graphics Engine圖形引擎的配置,但在HD6800系列Barts核心架構雖然SIMD陣列排列依舊沒變,不過Graphics Engine中的Tessellator提升已經使用比Cypress更高等級的Tessellator Gen7,雖然提升為第七代,不過還是只有一組Tessellator,另外在線程控制器也提升為兩組,其餘配置則維持不變,理論上和上一代的核心相比已經有大幅提升運算速度,這就是HD6800系列的核心設計重點!
 
/ AMD在上一代的RV870核心架構中開始加入了Tessellator,不過效能表現不彰。
 
 
/ 此為HD6800的核心架構圖,可以明顯看到Tessellator還是只有一組,
不過提升為Tessellator Gen7,線程控制器也分為兩組來運算。
 
 
/ HD6900的架構產生明顯變化,Graphics Engine已經分為兩組來處理,
當然Tessellator也就增加為2組,並且提升到Tessellator Gen8。
 
 
 
不過在之後AMD再推出更高階的Caman繪圖核心,相較於Barts的架構,Caman的Graphics Engine圖形引擎做了相當大的變動,為了再提升Tessellator的運算效能,AMD將Caman的Tessellator 提升為第八代的Tessellator Gen8,甚至乾脆將Graphics Engine分為兩個運算模組,Graphics Engine中所有的Geometry Assembler、Vertex Assembler以及Rasterizer也就分為兩組獨立運算,Tessellator 也理所當然從一組增加為兩組,這樣的改變的確有利於Tessellator的運算速度,但是我們實際了解這次AMD在HD6000系列的核心設計之後,似乎對於Tessellator運算效能還是沒有很投入,不過以整體的DirectX11效能來看,HD6000系列比起上一代的產品成長幅度很大!
 
相較於AMD的核心架構,NVIDIA在DirectX11的支援度的確比較高,從GTX400系列開始NVIDIA就一直強調Tessellator的優異效能,當NVIDIA開始著手開發第一代Fermi的時候就已經將Tessellator的效能列入設計重點,從Fermi架構圖中可以清楚看到有4組的Graphics Processing Clusters(GPC為GPU的核心),每一組的GPC都包含有4組的Polymorph引擎(NVIDIA將Tessellator調整後命名為Polymorph引擎),所以Fermi架構中的Tessellator總數就高達16組,不過像是GTX580和GTX570除了減少一組Streaming Multiprocessor (SM陣列)所以CUDA的核心數量不同之外,也會減少一組Polymorph引擎,簡單來說規格越低Polymorph引擎的數量也就越少,不過AMD的Barts和Caman都各只有1和2組的Tessellator,這就是為什麼AMD的對於Tessellator運算比較吃力。
 
/ 圖為GF100的核心架構線路圖,NVIDIA花了一段時間修改了內部走線,
才得以順利推出完整512個CUDA的GF110。
 
 
 
 
 
 
/ Fermi的核心架構排列相當整齊,每一組SM陣列都配置一組Polymorph引擎,
所以CUDA全開的GTX580就有16組,但是隨著隱蔽SM陣列之後
Polymorph引擎數量也會相對減少,例如GTX570(右圖)
就只有15組Polymorph引擎。
 
 
 
GF100和GF110在核心架構的部分並沒有多做變化,一樣是4組GPC、16組SM陣列和6組64bit總合為384bit的記憶體控制器等等,GF110的重點只是針對DirectX11的效能進行小細節微調和優化,修改了內部線路並改善了每個環節的溝通和連結速度,如此一來提升核心的處理速度,因此也能降低工耗與溫度,經過一段時間的改良之後,讓Fermi的完全解禁開啟512個CUDA,從GTX480到GTX580不只是時脈更高,也更省電、工作溫度更低,整體改變的幅度相當大!
 

有數據有真相,進步多少一看就知道!
 
AMD的HD6000系列和NVIDIA的GF500系列都算是第二代的DirectX11顯示卡,核心經過一段時間的修改後,理論上效能應該要比上一代明顯提升,尤其是DirectX11運用比重較高的Tessellator,所以最後我們就來比較一下AMD和NVIDIA前後兩代的DirectX11效能到底進步多少,這次的測試著重在Tessellator的運用,測試軟體也挑了幾款玩家們比較熟悉的遊戲,有LOST PLANET2(失落星球2)、HAWX 2(鷹戰2)、Metro 2033(地鐵深邃)和一款效能測試軟體開發商Unigine所推出的Heaven,這幾款遊戲都有支援DirectX11特效技術,使用大量的光影特效及景深的效果使得畫面相當逼真,就以Heaven這款測試軟體來說明好了,這款軟體的測試過程使用非常大量的DirectX11特效來製做,其中透過Ray Tracing光線追蹤技術在畫面中的物件都能有相當逼真的光源反射,當太陽光照射到金屬物件的表面時會產生令人刺眼的反光,而且會依照場景轉換適當呈現動態效果,例如從清晨到白天或是從黃昏到黑夜不同的時間都有不同的環境光源變化,另一個重點就是小編一直強調的Tessellator曲面細分。
 
 
 
 
我們都知道半導體最怕的就是高溫的問題,晶片溫度只要一上升效能就會銳減,這也是為什麼各家板卡廠多年來一直想盡辦法改良散熱器並降低功耗。從溫度表現來看,NVIDIA GTX580比上一代的GTX480表現優異許多,除了GF110核心製程成熟以及管線經過修正,另外導入動態電源管理技術,有效控制核心功耗之後溫度也隨之下降,相較於GTX480有降低約15℃已上的差距,加上GTX580使用全新設計的高效率均溫板散熱器,在散熱方面的確比以往更加進步,光是這點就值得鼓勵。
 
所以看起來GTX580似乎已經修正了缺失,反倒是AMD的HD6970表現讓人相當訝異,原因很簡單,HD6970是AMD全新推出的單晶片旗艦產品,HD5870也是上一代的單晶片最高階,不過如果不看產品型號而光看兩者的溫度表現,我應該沒有人會覺得HD6970是新產品,就像當時的AMD也曾提出GTX480的功耗和溫度都比HD5870高,如今玩家們看到NVIDIA的進步,卻看到AMD的退步…,不過也許也有可能是驅動的問題,在AMD發佈下一版新的驅動之前公板溫度過高這方面應該是無解,不過市面上很快就能看到改裝版的HD6970,在溫度上有一定程度的改善,這樣也就避免高溫影響核心效能的發揮!
 
 
 
 
Heaven這款測試軟體玩家應該有印象,自從推出以來就成為顯卡的效能殺手,因為Heaven運用了大量的DirectX11技術呈現內容,效能不夠高的顯卡一但測試就有可能呈現幻燈片張數!整個測試的重點就是看繪圖核心對於Tessellator的運算能力,所以這邊就分為四個等級測試,從成績上看來,不論是GTX580或是HD6970與上一代的成績的有明顯拉開差距,不過由於GTX480所搭載的Fermi配有10幾組的Polymorph引擎,並有加強DirectX11的處理速度,所以GTX480的表現就比HD5870好很多,但不知道各位有沒有發現一點問題呢?HD6970和GTX580在沒有開啟Tessellator的情況下張數差不多,當Tessellator運用設定最高之後HD6970的張數降到與GTX480差不多,明顯表示HD6970雖然將Tessellator運算引擎和線程控制器增加為兩組,但是只要Tessellator的運用越多且管線都塞滿的時候,效能衰退的幅度就越大,但是相反的GTX580擁有16組Polymorph運算引擎,所以Tessellator運用越效能衰退的比例就越小。
 

雖然HD6970在Tessellator的效能上的確進步很多,從測試各種軟體的成績看來,HD6970比起HD5870的Tessellator效能提升約2倍左右,不過像執行Heaven這種大量使用Tessellator的類型遊戲效能就顯得非常薄弱,接下來小編整理了一些測試數據給各位參考,測試的項目大概也都是DirectX11或Tessellator為主,不過和Heaven不一樣的是接下來的測試軟體都是遊戲的Benchmark,測試過程會模擬實際執行遊戲的動作,所以包括物理運算也會包含在測試中,但為了看出DirectX11或Tessellator的效能差異,測試時也會設定不同的Loading等級,以便各位玩家比對差異性。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

測試成績不會是顯卡的絕對效能
 
看完一堆測試數據之後各位應該很累了吧?小編弄到這裡也是快趴了,不過再累最後還是要做個總結!先送給各位讀者一句話:顯卡買回去不是用來跑測試軟體的!意思就是說雖然小編測試了那麼多組成績數據,各位也都能因此清楚看出兩家的顯卡進步多少,這都只是可以當作選購顯卡的參考值,而不會是效能的絕對值,因為顯示卡的效能不單只是核心本身的設計規格,還牽扯到PCB板的用料配置,最重要的一點是驅動程式影響的因素相當廣,包括核心效能、溫控和功能等等,像這一次AMD的HD6900系列顯卡雖然在DirectX11的測試成績不是很亮眼,在部份成績顯示HD6970與上一代HD5870的差距並不大,但是也有可能因為驅動程式的關係導致某方面的控制有問題,加上小編測試時還是無法掛上較新的10.12版本的驅動程式,無奈只能掛回10.11來測試,在還沒推出新版本的驅動程式以前效能不彰與溫度過高的問題還是沒有答案,但玩家也別為此感到失望,只要能解決核心溫度及功耗過高的問題,效能是必會比目前高!
反觀NVIDIA在GTX480推出之後因為GF100核心製成不夠成熟受到各界的批評,當時小編也一度質疑過為什麼GTX480的CUDA數只有480個,而不是512個?其實原廠本身知道問題出在哪,畢竟羊毛出在羊身上,反正推出的產品有問題就是要改進,而改進當然要越改越好,所以從剛推出的GTX580就可以看到NVIDIA在修正了GF100之後排除功耗問題,將Fermi所有的512個CUDA全部開啟並推出GF110核心,論效能、功耗都有提升,這就是進步!等過陣子兩家都推出新的驅動程式時應該小編會在安排重新測一次,屆時或許會有和現在不一樣的結果。

 

 

 

臉書留言