CUTLASS 是 CUDA C ++模板抽象的集合,用于在 CUDA 的所有級別和規(guī)模上實現(xiàn)高性能矩陣乘法( GEMM )。它結(jié)合了分層分解和數(shù)據(jù)移動的策略,類似于用于實現(xiàn)cuBLAS的策略。
CUTLASS 將這些“運動部件”分解為 C ++模板類抽象的可重用和模塊化的軟件組件。這些線程范圍、扭曲范圍、塊范圍和設(shè)備范圍的原語可以通過自定義平鋪大小、數(shù)據(jù)類型和其他算法策略進(jìn)行專門化和調(diào)優(yōu)。由此產(chǎn)生的靈活性簡化了它們在定制內(nèi)核和應(yīng)用程序中作為構(gòu)建塊的使用。
為了支持多種應(yīng)用程序, CUTLASS 為混合精度計算提供了廣泛的支持,提供了專門的數(shù)據(jù)移動,并為以下各項提供了多重累積抽象:
半精度浮點(FP16)、 BFloat16 (BF16)和張量浮點 32 (TF32)數(shù)據(jù)類型。
單精度浮點(FP32)數(shù)據(jù)類型。
雙精度浮點(FP64)數(shù)據(jù)類型。
整數(shù)數(shù)據(jù)類型(4b和8b)。
二進(jìn)制數(shù)據(jù)類型(1b)。
此外, CUTLASS 演示了針對 NVIDIA Volta 、 Turing 和 Ampere 體系結(jié)構(gòu)上實現(xiàn)的可編程、高通量 Tensor 核的扭曲同步矩陣乘法操作。
CUTLASS 實現(xiàn)了高性能卷積(隱式 GEMM )。隱式 GEMM 是作為 GEMM 的卷積運算的公式。這允許 Cutslass 通過重用高度優(yōu)化的 warp-wide GEMM 組件和以下組件來構(gòu)建卷積。
關(guān)于作者
Matthew Nicely 于 2019 年 3 月加入 NVIDIA ,之前曾在美國 AL-Huntsville 的美國陸軍航空和導(dǎo)彈研究開發(fā)與工程中心工作。在那里,他專注于 CUDA 算法開發(fā)和 Jetson 系列的優(yōu)化。在 NVIDIA ,他曾在聯(lián)邦部門工作,協(xié)助 CUDA 的開發(fā)和優(yōu)化,以及在各種 NVIDIA 工具集上為客戶提供教育和概念驗證,最近轉(zhuǎn)為 math libraries 產(chǎn)品經(jīng)理。 2019 年,他獲得了博士學(xué)位。計算機工程學(xué)位,專注于 GPU 的算法優(yōu)化。
審核編輯:郭婷
-
NVIDIA
+關(guān)注
關(guān)注
14文章
5597瀏覽量
109793 -
CUDA
+關(guān)注
關(guān)注
0文章
127瀏覽量
14482
發(fā)布評論請先 登錄
CDCVF25084:高性能時鐘乘法器的深度剖析
如何在NVIDIA CUDA Tile中編寫高性能矩陣乘法
深入剖析ADL5391:高性能模擬乘法器的卓越之選
深入剖析AD632:高性能四象限乘法器/除法器
高性能四象限模擬乘法器AD734:精準(zhǔn)與高速的完美結(jié)合
高性能模擬乘法器AD834:特點、應(yīng)用與設(shè)計要點
AD539:高性能寬帶雙聲道線性乘法/除法器的深度剖析
AD532:高性能單芯片乘法器/除法器的卓越之選
SLG47525/28:高性能可編程混合信號矩陣的深度剖析
一個提升蜂鳥E203性能的方法:乘除法器優(yōu)化
關(guān)于E203內(nèi)核高性能乘法器優(yōu)化(二)
關(guān)于E203內(nèi)核高性能乘法器優(yōu)化(一)
蜂鳥乘法器設(shè)計分享
e203乘法運算結(jié)構(gòu)及算法原理
Arm KleidiAI與XNNPack集成實現(xiàn)AI性能提升
使用CUTLASS實現(xiàn)高性能矩陣乘法
評論