作者丨进击的Killua来源丨https://zhuanlan.zhihu.com/p/671324125编辑丨GiantPandaCV本文主要是对CUTLASS做了一些入门级介绍,从定义和如何使用入手,再来说明CUTLASS的基本原理,后续再补充高级介绍篇章。一、CUTLASS定义CUTLASS is a collection of CUDA C++ template abstractions for implementing high-performance matrix-multiplication (GEMM) and related computations at all levels and scales within CUDA.首先CUTLASS本质上是一个CUDA C++模板抽象的集合,这里可以理解成一个抽象模板库。它的目的是为实现高性能的矩阵乘法和相关计算(现在也支持conv了)。它可以在各个层级(线程块级、线程束级、线程级)上实现高性能计算。相关计算主要指的是接在GEMM后面的activation或者一些pointwise计算,比如bias,scales,这些计算可以和GEMM融合在一起。CUTLASS的设计初衷是将GEMM中一些“可变的部分”分解成若干C++抽象模板实现
………………………………