RTX2080/RTX2080Ti顯卡全面評測 RTX20系電腦顯卡怎么樣?(3)

2018-09-20 09:29:27 來源:快科技作者:佚名 人氣: 次閱讀 1782 條評論

作為GPU顯卡行業(yè)的領(lǐng)頭羊,NVIDIA的新產(chǎn)品發(fā)布節(jié)奏多年來一直非常穩(wěn),探析一下這個(gè)革命性的Turing架構(gòu),以及全新的RTX 2080 Ti、RTX 2080兩款高端型號(hào)到底表現(xiàn)如何。...

三、架構(gòu)解析之RT核心、光線追蹤

圖靈架構(gòu)和RTX 20系列的最大亮點(diǎn)和賣點(diǎn)當(dāng)然是——游戲?qū)崟r(shí)光線追蹤!

從第一顆GPU NVIDIA GeForce 256誕生至今已經(jīng)整整19年,GPU規(guī)模和技術(shù)越來越發(fā)達(dá),但是最底層的圖形渲染技術(shù)其實(shí)幾乎一成不變,始終都是光柵化渲染,通過計(jì)算三角形和多邊形來獲得畫面輸出,好處是資源消耗容易控制,壞處就是距離真實(shí)畫面相差甚遠(yuǎn),甚至永遠(yuǎn)不可能接近。

光線追蹤(Ray Tracing)技術(shù)則堪稱圖形界的“圣杯”,簡單地說就是在圖形渲染過程中實(shí)時(shí)跟蹤物體和環(huán)境的光線,準(zhǔn)確進(jìn)行光線反射和折射、全局照明、物理陰影的繪制,可以帶來近乎百分之百真實(shí)的渲染畫面,尤其是光影效果。

S19860611-df0a-47fa-9418-0f154480de42.jpg

光線追蹤技術(shù)其實(shí)并不新鮮,1969年的時(shí)候在IBM工作的Arthur Appel就提出了這種概念,當(dāng)時(shí)叫做Ray Casting,距今已經(jīng)整整半個(gè)世紀(jì)。

1979年,Turner Whitted研究出了遞歸光線追蹤算法(Recursive RayTracing Algorithm)。

1984年,Carpenter等人發(fā)表了一篇關(guān)于分布式光線追蹤的論文《Distributed RayTracing》,影響甚廣。

S2fb6a77a-d3ef-4c86-9200-ab77bfb9c45d.jpg

但是,光線追蹤的算法非常簡單,稍有計(jì)算機(jī)圖形只是的人都能理解,關(guān)鍵在于如何優(yōu)化提高效率,因?yàn)樗枰挠?jì)算量太過龐大,想想要實(shí)時(shí)計(jì)算場景中無數(shù)光線每時(shí)每刻的各種傳播,那是多么恐怖,以前的GPU根本無力承擔(dān)實(shí)時(shí)計(jì)算。

因此直到2006年迪士尼的《汽車總動(dòng)員》(Cars),影視行業(yè)才開始使用光線追蹤渲染,如今大多數(shù)的照片級渲染系統(tǒng)多時(shí)基于光線追蹤的,但背后都是超大規(guī)模的計(jì)算機(jī)群在吃撐,一幀畫面往往都要渲染幾個(gè)小時(shí)。

S6412b784-0e40-43d0-831b-763bcf9fc751.jpg

雖然大家都在努力,但就在一個(gè)月前,如果說普通顯卡可以在游戲里實(shí)現(xiàn)光線追蹤(盡管是有條件的),相信絕大多數(shù)人都不會(huì)相信,但是NVIDIA的圖靈做到了。

NVIDIA在圖靈架構(gòu)中集成了最多72個(gè)RT Core核心,每個(gè)SM單元一個(gè),專門用來服務(wù)光線追蹤運(yùn)算,等于一個(gè)特殊的專用單元,由硬件加速取代軟件模擬,效率自然要比CUDA這種通用單元高很多,就像GPU做并行計(jì)算比CPU強(qiáng)得多

S1b773ff1-faab-40ba-bceb-30e49663878b.jpg

簡單來說,圖靈架構(gòu)的光線追蹤運(yùn)算步驟是這樣的:著色器單元首先發(fā)出光線探測請求,RT Core核心就開始完全接管下邊的工作,并分為兩個(gè)過程,其中包圍盒求交評估單元(Box Intersection Evaluators)進(jìn)行包圍盒的獲取和解碼,并進(jìn)行求交測試,得到子包圍盒或者三角形。

如果是子包圍盒,就返回重新執(zhí)行,重復(fù)剛才的步驟。如果是三角形,那就交給三角形求交評估單元(Triangle Intersection Evaluators),做下一步的求交測試,直到得到最終結(jié)果并輸出給著色器,進(jìn)行最終渲染。

S650ef6fe-ed27-4ca8-95b8-03b93a479f34.jpg

看懵了對吧?懵了就對了……

整個(gè)光線追蹤計(jì)算過程中,運(yùn)用的主要是BVH算法,也就是Bounding Volume Hierarchy Traversal,層次包圍盒遍歷的意思。

比如渲染對象是一只兔子,要幾算一條光線和兔子本身的交互,就把兔子所在空間劃分成N個(gè)包圍盒,計(jì)算光線和哪一個(gè)包圍盒相交,是的話就再把這個(gè)包圍盒繼續(xù)劃分成N個(gè)更小的包圍盒,再次計(jì)算相交,如此反復(fù),一直找到和光線相交的三角形所在的包圍盒,再對這個(gè)三角形進(jìn)行最終的渲染。

BVH算法可以大大減少計(jì)算每一條光線最近相交點(diǎn)所需要遍歷的三角形數(shù)量,而且只需要進(jìn)行一次就能給所有光線使用,大大提高了執(zhí)行效率。

除了硬件方面的工作,軟件方面既有NVIDIA自己的OptiX光線追蹤引擎、GameWorks SDK光線追蹤模塊,也有微軟的DirectX 12 Ray-Tracing(DXR) API、Windows ML中間件,后者會(huì)在即將發(fā)布的Windows 10 2018年秋季更新版中正式提供。

S52cf09c8-7aae-4a4b-ad4d-dcbfd182e6f9.jpg

性能方面,RTX 2080 Ti在精簡了四個(gè)只有68個(gè)RT核心的情況下,每秒鐘可以計(jì)算超過100億條光線,大約等于100TFlops(每秒1000億次浮點(diǎn)運(yùn)算)。

而上代GTX 1080 Ti雖然也能執(zhí)行光線追蹤,但因?yàn)闆]有專用單元和算法,效率只有RTX 2080 Ti的大約十分之一,不足以實(shí)時(shí)用于游戲。

接下來欣賞欣賞NVIDIA RTX光線追蹤的效果和對比:






↑↑↑官方DEMO

目前支持NVIDIA光線追蹤技術(shù)的游戲有11款(和首發(fā)時(shí)相比沒變),分別是:

- 《神力科莎》 (Assetto Corsa Competizione)

- 《原子之心》 (Atomic Heart)

- 《戰(zhàn)地5》 (Battlefield V)

- 《控制》 (Control)

- 《應(yīng)征入伍》 (Enlisted)

- 《逆水寒》 (Justice

- 《劍網(wǎng)3》 (JX3)

- 《機(jī)甲戰(zhàn)士5:雇傭兵》(MechWarrior 5:Mercenaries)

- 《地鐵:離去》

- 《Project DH》

- 《古墓麗影:暗影》(Shadow of the Tomb Raider)

不過,RTX 20系列上市初期,可以玩的光線追蹤游戲暫時(shí)還是零,比如《古墓麗影:暗影》首發(fā)不支持得后期打補(bǔ)丁,《戰(zhàn)地5》則跳票了。