cuSPARSELt:用于稀疏矩阵乘法的高性能CUDA库#
NVIDIA cuSPARSELt 是一个高性能的CUDA库,专门用于通用矩阵-矩阵运算,其中至少有一个操作数是稀疏矩阵:
其中 表示原地操作,例如转置/非转置,而
是标量或向量。
cuSPARSELt API 提供了算法/操作选择、尾处理以及矩阵特性(包括内存布局、对齐方式和数据类型)的灵活性。
下载地址: developer.nvidia.com/cusparselt/downloads
提供反馈: Math-Libs-Feedback@nvidia.com
示例: cuSPARSELt 示例 1, cuSPARSELt 示例 2
博客文章:
主要特性#
NVIDIA稀疏MMA张量核心支持
Mixed-precision computation support:
Input A/B
Input C
Output D
Compute
Block scaled
Support SM arch
FP32FP32FP32FP32No
8.0, 8.6, 8.79.0, 10.0, 12.0BF16BF16BF16FP32FP16FP16FP16FP32FP16FP16FP16FP16No
9.0INT8INT8INT8INT32No
8.0, 8.6, 8.79.0, 10.0, 12.0INT32INT32FP16FP16BF16BF16INT8INT8INT8INT32No
8.0, 8.6, 8.79.0, 10.0, 12.0INT32INT32FP16FP16BF16BF16E4M3FP16E4M3FP32No
9.0, 10.0, 12.0BF16E4M3FP16FP16BF16BF16FP32FP32E5M2FP16E5M2FP32No
9.0, 10.0, 12.0BF16E5M2FP16FP16BF16BF16FP32FP32E4M3FP16E4M3FP32A/B/D_OUT_SCALE =
VEC64_UE8M0D_SCALE =
32F10.0, 12.0BF16E4M3FP16FP16A/B_SCALE =
VEC64_UE8M0BF16BF16FP32FP32E2M1FP16E2M1FP32A/B/D_SCALE =
VEC32_UE4M3D_SCALE =
32F10.0, 12.0BF16E2M1FP16FP16A/B_SCALE =
VEC32_UE4M3BF16BF16FP32FP32矩阵剪枝和压缩功能
激活函数、偏置向量和输出缩放
批量计算(单次运行处理多个矩阵)
GEMM Split-K 模式
自动调优功能(参见 cusparseLtMatmulSearch())
NVTX范围标记和日志记录功能
支持#
支持的SM架构:
SM 8.0,SM 8.6,SM 8.7,SM 8.9,SM 9.0,SM 10.0,SM 12.0支持的CPU架构和操作系统:
操作系统 |
CPU架构 |
|---|---|
|
|
|
|