DX12下《奇點(diǎn)灰燼》異構(gòu)顯卡互聯(lián)測(cè)試
不論是AMD還是NVIDIA,雙方各有不同的支持者,公平來(lái)說(shuō)這兩家公司都擁有獨(dú)特的技術(shù),官方不可避免地斗個(gè)你死我活,但對(duì)消費(fèi)者來(lái)說(shuō)能同時(shí)融合AMD、NVIDIA兩家顯卡就再好不過(guò)了。AMD+NVIDIA顯卡的異構(gòu)混搭之前也不是沒(méi)有人嘗試過(guò),但面臨的問(wèn)題很多,官方甚至直接封殺。如今到了DX12時(shí)代,A+N顯卡互聯(lián)總算有點(diǎn)盼頭了,因?yàn)槲④浌俜揭呀?jīng)開(kāi)始支持這種異構(gòu)顯卡互聯(lián)互通了,《奇點(diǎn)灰燼》游戲顯示出來(lái)的結(jié)果讓人充滿了期待。
《奇點(diǎn)灰燼》(Ashes of the Singularity)游戲是最早支持DX12的游戲之一,顯卡的DX12初步性能之前已經(jīng)測(cè)過(guò),AMD顯卡因?yàn)楫惒接?jì)算支持到位,所以在這個(gè)游戲中表現(xiàn)很不錯(cuò)。對(duì)于DX12的特性,我們之前也做過(guò)很多介紹,今天我們來(lái)關(guān)注DX12在3D渲染、底層優(yōu)化之外的隱藏黑科技——異構(gòu)顯卡互聯(lián),官方名字是Muti-Adapter(多顯卡適配器)。
Anandtech網(wǎng)站這次就以《奇點(diǎn)灰燼》游戲?yàn)槔郎y(cè)試了DX12的Muti-Adapter技術(shù),測(cè)試中他們就把AMD的Fury X及NVIDIA的GTX 980 Ti顯卡成功“配對(duì)”,而且相比以往的方案,DX12下的異構(gòu)混搭性能還不錯(cuò),足堪大用。
GTX 980 Ti與Fury X顯卡成功合體了
異構(gòu)顯卡及DX12的一些背景知識(shí)
原文花了一個(gè)章節(jié)介紹了相關(guān)的背景知識(shí),主要是異構(gòu)顯卡互聯(lián)及DX12 Muti-Adapter,我們簡(jiǎn)單來(lái)說(shuō)下吧。
還有誰(shuí)記得Lucid的hydra芯片?
提到異構(gòu)顯卡互聯(lián),有印象的讀者可能還會(huì)想到以色列公司Lucid的Hydra方案,它可以接管DX及OpenGL命令并重建以便可以把渲染過(guò)程分配給不同的顯卡,Hydra最主要的特色就是它不僅支持同架構(gòu)顯卡互聯(lián),還可以支持AMD、NVIDIA顯卡互聯(lián),后來(lái)還作出了集顯與獨(dú)顯互聯(lián),再后來(lái)Lucid推出了Virtu MVP軟件方案,不需要獨(dú)立芯片也能實(shí)現(xiàn)異構(gòu)互聯(lián)。
不得不承認(rèn)Lucid公司的理念很有想法,也很吸引人,但他們的方案當(dāng)時(shí)在官方層面并不討好,NVIDIA的驅(qū)動(dòng)想法封殺這種方式,Lucid隨后推出的Virtu MVP雖然轉(zhuǎn)向了獨(dú)顯與集顯融合,但這又陷入了作弊的嫌疑,跑分是提高了,但游戲性能并不一定如此,以致于現(xiàn)在很少有廠商再提Lucid的Virtu MVP支持了。
Hydra的渲染過(guò)程
微軟DX12的多GPU支持
DX12中,我們之前關(guān)注的主要是DX12帶來(lái)的畫(huà)質(zhì)及效率變化,實(shí)際上DX12還有很多隱藏福利等著我們,比如這次測(cè)試的Muti-Adapter支持,它不僅可以讓AMD、NVIDIA的顯卡互聯(lián)互通,而且還提高了顯存利用率,以往的交火或者SLI都只能利用一半的顯存容量,現(xiàn)在DX12下可以完整利用2張顯卡的顯存了。
實(shí)際上微軟的Muti-Adapteri技術(shù)比我們之前所知的要更復(fù)雜一些,它總共有三種工作模式——最簡(jiǎn)單的一種叫做Implicit Multi-Adapter(隱式多適配器),它本質(zhì)上是Multi-Adapter操作模式中最低的一級(jí),允許開(kāi)發(fā)者使用類似SFR分割幀渲染那樣友好的方式來(lái)控制多顯卡渲染處理,這會(huì)限制性能,但帶來(lái)的問(wèn)題也更少。
因此,類似DX11中的多顯卡模式,隱式多適配器模式實(shí)際上也更多地是依賴驅(qū)動(dòng)(具體來(lái)說(shuō)就是AMD和NVIDIA的驅(qū)動(dòng))
隱式多適配器模式雖然限制最多,但開(kāi)發(fā)者更容易實(shí)現(xiàn),未來(lái)隨著多平臺(tái)游戲的增多,開(kāi)發(fā)者可能也不愿意付出努力去應(yīng)用顯式多顯卡適配器技術(shù)(Explicit Multi-Adapter),因?yàn)镻C市場(chǎng)中使用高性能多路顯卡的玩家增多,這種情況下開(kāi)發(fā)者會(huì)選擇最容易的方式來(lái)支持多顯卡。
對(duì)于DX12來(lái)說(shuō),真正下新鮮的是Explicit Multi-Adapter(EMA,顯式多顯卡適配器)模式,正如它的名字一樣,EMA需要開(kāi)發(fā)者給多GPU運(yùn)行提供明確的編程,指明每個(gè)GPU要怎樣工作,分配多少內(nèi)存,GPU之間如何通訊等等。這樣開(kāi)發(fā)者就能明確控制這個(gè)渲染過(guò)程,這樣多顯卡平臺(tái)的性能也有機(jī)會(huì)更強(qiáng),因?yàn)殚_(kāi)發(fā)者幾乎控制了整個(gè)API及游戲,相比以往的多GPU技術(shù),開(kāi)發(fā)者可以控制更多、獲得更多信息。
EMA模式的代價(jià)就是資源消耗,更高的性能意味著更高的責(zé)任,而且與隱式多適配器模式不同,游戲開(kāi)發(fā)者要想實(shí)現(xiàn)EMA模式就得投入很多工作,要想工作的很好,那投入的精力就需要更多了。
至于EMA模式,它實(shí)際上還有2種工作模式——有Linked GPU及Unlinked GPU之分,Unlinked是EMA模式的基礎(chǔ),提供了大部分EMA模式的功能,而linked模式可以提供更多的功能,但它的限制也更多。
unlinked GPU工作模式
微軟此前公布的DX12多適配器性能實(shí)測(cè)
說(shuō)了這么多,來(lái)看下微軟之前公布的實(shí)例,在UE4引擎的一個(gè)渲染demo中,使用獨(dú)顯的渲染速度是35.9fps,獨(dú)顯+集顯的多適配器模式下性能達(dá)到了39.7fps。
奇點(diǎn)灰燼:AFR渲染+Unlinked Explicit Multi-Adapter
回到這個(gè)游戲,《奇點(diǎn)灰燼》用的就是Unlinked Explicit Multi-Adapter模式以及AFR(交替幀渲染)技術(shù),使得這個(gè)游戲具備了很高的彈性。AFR渲染模式的缺點(diǎn)是每個(gè)GPU都要渲染完整的一幀畫(huà)面,因此搭配的GPU最好是性能相近的,不過(guò)另一方面來(lái)看,使用AFR模式可以讓游戲支持更多的GPU,不僅包括AMD+AMD、NVIDIA+NVIDIA,還支持原本不能互聯(lián)的CF或者SLI模式(比如GTX 980 Ti+GTX Titan X),更重要的是它還可以讓AMD+NVIDIA的顯卡一同工作。
《奇點(diǎn)灰燼》異構(gòu)顯卡性能實(shí)測(cè)
現(xiàn)在我們直接來(lái)看下最終的性能測(cè)試吧,Anandtech這次的測(cè)試表格有的是幀數(shù),有的是是相對(duì)比例,也就是不同的顯卡組合相對(duì)單一顯卡的性能提升比例。
首先來(lái)看下單卡以及高端顯卡混搭的結(jié)果。
單卡及不同顯卡混搭的成績(jī)
顯卡混搭的性能提升比例
4K分辨率下測(cè)試
前面測(cè)的是2560x1440分辨率,這里測(cè)的是4K分辨率了。
單卡及多卡混搭的成績(jī)
性能提升比例
2012年的單卡及混搭測(cè)試
前面測(cè)試的都是當(dāng)前一代的高端顯卡,這里測(cè)試的是2012年代表性的顯卡,包括HD 7970及GTX 680。
這個(gè)測(cè)試中,HD 7970與GTX 680本身就有比較大的差異,前者平均30fps,后者平均34.5fps,HD 7970領(lǐng)先22%。
一旦開(kāi)了AFR,就有兩種不同的情況了,GTX 680+HD 7970的性能比GTX 680低了40%,但HD 7970+GTX 680下性能提升超過(guò)55%,平均幀提升到了46.4fps了。
現(xiàn)在還不確定到底瓶頸在哪里,不過(guò)從這里的測(cè)試來(lái)看哪款顯卡做主卡將會(huì)影響游戲性能,GTX 680與HD 7970的組合中,要么GTX 680領(lǐng)導(dǎo)太爛,要么就是HD 7970跟隨的太差,總的性能是下降的,但HD 7970+GTX 680組合時(shí),性能就有大幅提升?!?
關(guān)注我們
