ai-infra-interview-305

第 24 题:CUTLASS是什么?什么时候需要用它而不是手写CUDA?

题目

CUTLASS是什么?什么时候需要用它而不是手写CUDA?


完整讲解

一、CUTLASS 是什么?

CUTLASS(CUDA Templates for Linear Algebra Subroutines)是 NVIDIA 的 CUDA 模板库,提供高性能 矩阵乘、卷积 等 building blocks;用 C++ 模板 抽象 threadblock tile、warp 级 MMA(matrix multiply-accumulate)、shared memory 分块、双缓冲等,方便组合出不同 shape、精度(fp16/bf16/int8)、Epilogue(加 bias、relu 等)的 kernel,而不必从零手写每类 GEMM。

二、什么时候用 CUTLASS 而不是手写 CUDA?

三、与 cuBLAS、Triton 的关系


面试要点


记忆要点

  1. CUTLASS = CUDA 模板库,做 GEMM/conv;模板抽象 tile、warp MMA、Epilogue。
  2. 用 CUTLASS 换开发效率与接近 cuBLAS 性能;手写用于极端定制或非 NVIDIA。
  3. cuBLAS 闭源;Triton 更上层;CUTLASS 可改 Epilogue、做融合。
返回模块 返回总览