最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

NVIDIA GeForce RTX 以及 Ada 架構(gòu) 淺入閑談(上)

2023-02-25 23:41 作者:B1ueMicr0  | 我要投稿

因?yàn)榛丶议e的蛋疼,沒什么可以做的。于是就有了這篇文章。

去年 GTC 2022 大會(huì)英偉達(dá)為游戲玩家端出了新一代 GeForce GPU 架構(gòu) - NVIDIA Ada Lovelace,也是以科學(xué)家名字命名,算是英偉達(dá)傳統(tǒng)了(下一代 RTX 50 據(jù)說叫 Blackwell),這一代顯卡架構(gòu)也是英偉達(dá)全面實(shí)現(xiàn)實(shí)時(shí)光追之路的一大步。

Ada Lovelace 是公認(rèn)的世界上第一位程序員,為巴貝奇分析機(jī)設(shè)計(jì)了一個(gè)用于計(jì)算伯努利數(shù)(Bernoulli Numbers)的程序

其實(shí)要說NV對光追的鋪路,早在 Fermi 時(shí)期就很明顯了。Fermi 實(shí)現(xiàn)了硬件層級上的遞歸操作,并且還改進(jìn)了 L1 / L2 Cache,相鄰光線之間在內(nèi)存上的局部性更好。

這里本人先簡單總結(jié)下對這三代英偉達(dá) GeForce RTX?GPU 的理解:

  1. RTX 20 - Turing 架構(gòu),首次引入 RT?ASIC (也就是 RT Core),內(nèi)置 Box Intersection Engine ?和 Triangle Intersection Engine,接管了整個(gè)光追管道中的一些重活,實(shí)現(xiàn)了 BVH 樹遍歷?和 光線與三角形求交 的 Offloading,而在 Pascal 及之前架構(gòu)中,這些工作是在 SM 的?Compute Shader 上完成的,效率低下。(具體的光線追蹤管線,以及 RT Core 在管道里的具體影響,可能以后會(huì)出專欄簡單存?zhèn)€檔)并且還引入了另一個(gè)用于張量運(yùn)算加速的電路 —— Tensor Core,專為 ML 加速而設(shè)計(jì),因?yàn)楸救瞬惶私?AI,就不過多展開了233,作為游戲玩家知道這是為 DLSS,DLDSR 這些用到機(jī)器學(xué)習(xí)的服務(wù)就可以了。

  2. RTX 30 - Ampere 架構(gòu),NVIDIA 設(shè)計(jì)了一個(gè)新型的 Sub-Core 結(jié)構(gòu),按照 NVIDIA 所講,Ampere 實(shí)現(xiàn)了 2x 的 FP32 Throughput. 因?yàn)樵?Turing RTX 上的那個(gè) 整數(shù) ALU 和一個(gè) "Lite" 的 FMA 管道 結(jié)合了起來?,可以理論上在不跑 INT32 的情況下達(dá)到 Turing FP32 的兩倍。NVIDIA 如此饑渴于 通用浮點(diǎn)算力 的堆砌,是為了堆砌總體上的光追執(zhí)行力,因?yàn)槟壳肮庾饭芫€中的大量 Shader 計(jì)算仍然在 Compute Shader?上完成。在 RT Core 方面暴力提升了遍歷/求交性能,同時(shí)引入用于實(shí)時(shí) RT 的動(dòng)態(tài)模糊加速。Ampere 是 NVIDIA 優(yōu)化光追架構(gòu)的一大步。

這里也做個(gè)小補(bǔ)充,NVIDIA 宣傳 Ampere 的計(jì)算結(jié)構(gòu)是 INT32 / FP32 Shared + FP32 Dedicated,這導(dǎo)致了很多人認(rèn)為那個(gè)新的共享單元是直接合并了整浮運(yùn)算,其實(shí)不是的。INT 和 FP 是一直分開的。FP32 浮點(diǎn)在一直都在?FMA 管道?上完成,只是到了 Ampere 架構(gòu)上引入了個(gè)?fmaheavy 和 fmalite 的區(qū)分。整數(shù)還是在獨(dú)立的 ALU 上完成的,只不過整數(shù)點(diǎn)積在 fmaheavy 上有分擔(dān),可以降低整數(shù)自己的乘加器開銷。至于為什么實(shí)際表現(xiàn)出來的 看上去像是 只能要么進(jìn)行 INT32 要么進(jìn)行 FP32 操作,是因?yàn)?Warp 寬度 還是 32,所有的單元沒辦法同時(shí)執(zhí)行操作。(Nsight graphics 注解的?Turing 32,Ampere 48 是 Warp Slots,不是 Warp 寬度,之前弄錯(cuò)了)

需要注意的是,Ada 架構(gòu) 在這一方面的設(shè)計(jì)上和 Ampere 一致?(擠牙膏bushi? 對于 Ada 架構(gòu)將不作贅述。

3. RTX 40 - Ada Lovelace 架構(gòu)

前面扯了這么久,終于進(jìn)入新 Ada 架構(gòu)環(huán)節(jié)了

總體來說,Ada 架構(gòu)在通用計(jì)算單元上的架構(gòu)改進(jìn)是擠牙膏的。(但是 Ada 架構(gòu)在這些單元上的?排列,布線這些?相對于 Ampere 肯定是有優(yōu)化的)奈何上代 Ampere 架構(gòu)強(qiáng)勢,足夠讓 NVIDIA 老本吃到對面推出 RDNA 4 了。想想 A 家新的?RDNA 3 和 Ampere 的 FMA 延遲差距,還有吞吐量跑不滿等等問題,只能說 AMD 還任重而道遠(yuǎn)啊。

Ada 架構(gòu)的改進(jìn)主要是放在 ASIC 上了,主要包括 RT Core,Tensor Core 和 OFA 這三大件的大提升。

老黃一上來就講加速計(jì)算怎么怎么重要

先上發(fā)布會(huì)截圖,回顧下 AD102 的性能水平 ( Ada 架構(gòu)的旗艦芯片)

最開始看到這樣的提升幅度,本人還是比較震撼的。要知道 GA102 的 FP32 可只有 40 TFLOPs,AD102 通過堆砌 16384 個(gè) CUDA 核心,達(dá)到了 90 TFLOPs 的性能。這樣的代際提升應(yīng)該是自 G80 以來最大的一次了。并且價(jià)格提升沒有 AD103 / 104 卡那樣離譜,采用 AD102 的 RTX 4090 算是近年來性價(jià)比最高的一款顯卡了。

NV在實(shí)時(shí)光追加速方面重點(diǎn)講了幾個(gè)技術(shù)創(chuàng)新,分別是?Opacity Micromap Engine,Displaced Micro-Mesh Engine 和?Shader Execution Reordering. 這里先重點(diǎn)講述下?Opacity Micromap Engine

首先,對于光線追蹤來講,Alpha 測試紋理的遍歷是比較痛苦的,光線每擊中一次貼圖所在的三角形,會(huì)檢測到一次?"unknown" (既不是 不透明 也不是 透明?就是 unknown 狀態(tài),此類紋理所在三角形覆蓋的部分顯然包含了兩者,故為"unknown") 狀態(tài)返回到 Anyhit Shader(anyhit 操作是在通用計(jì)算單元上執(zhí)行的),當(dāng)眾多光線一起擊中到該貼圖時(shí),可想而知效率就低了,因?yàn)閷τ谶@類貼圖的透明部分來講,是完全可以省掉這種不必要的計(jì)算的。所以了不起的 NVIDIA 工程師想到了一種巧妙的辦法,引入“不透明微貼圖”(opacity micromap),為了確定 anyhit 而通過專門設(shè)計(jì)的虛擬網(wǎng)格來得到微小三角形。

上圖所示的藍(lán)色部分則是可以直接忽略的地方,對于相交檢測來說是一個(gè) false 的值,可以直接跳過 Anyhit Shader 從而繼續(xù)進(jìn)行跟蹤。而在以往的架構(gòu)中,只要光線打到左邊示例中黃色區(qū)域內(nèi)都會(huì)執(zhí)行一次 anyhit 操作。

簡單來說,就是標(biāo)記一小部分的區(qū)域,然后告訴顯卡只有這部分要 anyhit 一下就行了。

對于 Anyhit Shader,在光追管線里這是一個(gè)可選?Shader,場景包含透明物體或 Alpha 測試紋理的時(shí)候可以選擇加入,主要用于確定光線的進(jìn)一步操作。這里放出一張龔大做的“光線跟蹤流水線”視頻里的截圖

這里 NVIDIA 也給出了 Ada 和 Ampere 之間對于這類材質(zhì)處理的區(qū)別,能看出 Ada 的 Shader 負(fù)載比上代低了不少。

總的來說,Opacity Micromap Engine 的引入,大幅提高了具有 Alpha 測試 場景的遍歷性能,尤其是對像用于投射陰影的光線 (shadow rays) 的增益最大。


閑談到這里就差不多結(jié)束了,有點(diǎn)口渴,咱下周繼續(xù) (≧?≦)??

本人上高一了,更新速度明顯慢了 ( *︾▽︾)

NVIDIA GeForce RTX 以及 Ada 架構(gòu) 淺入閑談(上)的評論 (共 條)

分享到微博請遵守國家法律
衡山县| 凤冈县| 弥勒县| 游戏| 西华县| 时尚| 永德县| 镇巴县| 玛曲县| 陵川县| 兴宁市| 德阳市| 长寿区| 正安县| 阜南县| 武夷山市| 卢氏县| 永川市| 凤台县| 英山县| 醴陵市| 新干县| 浮梁县| 磐石市| 文登市| 民县| 扶沟县| 贵南县| 兴宁市| 宣化县| 金湖县| 融水| 浦北县| 新余市| 吴桥县| 昌图县| 化德县| 平乡县| 休宁县| 浪卡子县| 大余县|