- NVIDIA Sparse Tensor Core support
- Mixed-precision support:
- FP16 inputs/output, FP32 Tensor Core accumulation
- BFLOAT16 inputs/output, FP32 Tensor Core accumulation
- INT8 inputs/output, INT32 Tensor Core accumulation
- Row-major and column-major memory layouts
- Matrix pruning and compression utilities
- Auto-tuning functionality
cuSPARSELt开发NVIDIA Ampere结构化稀疏性
cuSPARSELt开发NVIDIA Ampere结构化稀疏性
深度神经网络在各种领域(例如计算机视觉,语音识别和自然语言处理)中均具有出色的性能。处理这些神经网络所需的计算能力正在迅速提高,因此有效的模型和计算至关重要。神经网络剪枝(删除不必要的模型参数以生成稀疏网络)是一种在保持准确性的同时降低模型复杂性的有用方法。
为了利用细粒度的网络剪枝,NVIDIA Ampere GPU架构引入了细粒度的结构稀疏性的概念。在NVIDIA A100 GPU上,结构显示为2:4模式:每四个元素中至少有两个必须为零。通过使用新的NVIDIA Sparse Tensor Core跳过零值的计算,这可以将一个矩阵乘法(也称为GEMM)操作数的数据占用空间和带宽减少2倍,并使吞吐量翻倍。
cuSPARSELt:用于稀疏矩阵-密集矩阵乘法的高性能CUDA库
为了简化NVIDIA Ampere架构稀疏功能的使用,NVIDIA引入了cuSPARSELt ,这是一种高性能CUDA库,专用于常规矩阵操作,其中至少一个操作数是稀疏矩阵。cuSPARSELt库可以使用NVIDIA第三代Tensor Core稀疏矩阵乘累加(SpMMA)操作,而无需进行底层编程。该库还提供用于剪枝和压缩矩阵的辅助函数。
cuSPARSELt的主要功能包括:
· NVIDIA Sparse Tensor Core支持
· 混合精度支持:
o FP16输入/输出,FP32张量核心累积
o BFLOAT16输入/输出,FP32张量核心累积
o INT8输入/输出,INT32张量核心累积
· Row-major and column-major memory layouts的内存布局
· 矩阵剪枝和压缩实用程序
· 自动调整功能