Turing架構的特色
另外這裡再介紹一下Nvidia最新的Turing架構系列顯卡的特色。相信各位玩家如果對於顯卡方面有些初步的瞭解了話,應該都會知道Nvidia在2007那時候首次推出了搭載CUDA平行運算技術的顯示卡:GeForce 8000系列。這使得顯卡從單純大家認為只能拿來玩遊戲或是從事工業繪圖,跨入到能夠在上面跑運算程式的新紀元。
CUDA目前可以應用的範圍可以說是非常廣泛,例如今年初所風行的挖礦。部分原理就是藉由顯示卡具備高效率平行運算與可編程性的特色所進行的。另外諸如現在許多大專院校與企業政府都在力挺的機器學習(ML)、深度學習(DL)、人工智慧(AI) 等等,也都是藉由諸如PyTorch、TensorFlow 等等的開發框架所開發的,開發這些東西底層都會運用到大量的數學,像是線性代數就是非常重要的。而這些數學僅利用CPU來運算確實是不夠有效率,因此藉由GPU來進行運算才是比較可行且高效率的方案。
Turing架構不僅強化 CUDA 核心的運算性能,更加入獨立的 Tensor Core 與 RT Core 新核心來進一步強化上述所提到的運算性能。Tensor Core 被用以處理大型且專門的矩陣數學運算,尤其是CUDA 9.0 所增加的 nvcuda :: wmma API 定義的矩陣模型 (諸如16*16*16、32*8*16、8*32*16等)。藉由這樣的獨立單元能夠在進行 ML/DL/AI 專案中的特定一部份取得更棒的效率。另外深度學習超高取樣(DLSS) 的效果在遊戲上的運用,部分也是有利用到Tensor Core的資源,因此不難思考為何以往僅有像是Telsa這類的運算專用卡中才比較可能開放的Tensor Core,會一併下放到供一般玩家進行遊戲定位的RTX系列上。
RT Core則是用於進行這一代對於遊戲玩家十分有看頭的光影追蹤技術 (Ray Tracing) 來進行加速,本質上他算是一個ASIC (特殊應用積體電路)。ASIC顧名思義,在特定用途上的效率將會是非常厲害的。如果有讀過計算機圖形學的玩家應該都會了解,面的基本填充單位是三角形,透過無數個三角形來做出拼接形成你在電腦上所看到的"面"。而 Triangle/Ray-Intersection 就是找出光線與面上三角形的交點作為所需要運算的單位。BVH Traversal 則是這次RT的重點,透過 BVH 能夠針對場景進行上述尋找光線與交點的預處理。當然在一個場景下會有相同光線的路徑,如果全部執行這些會耗費大量無用的資源,因此會將處理好的資料再丟回 Streaming Multiprocessor (SMs) 單元,藉由顯卡具備的 SIMD (Single Instruction Multiple Data) 的特性來減少重複執行的問題,達到所謂超高效率的光線追蹤的效果。
|