muDNN API 参考
1 引言
Moore Threads® MUSA® 深度神经网络(muDNN)库是一 个用于深度神经网络中常用原语的GPU加速库。muDNN提供了高度优化的函数,可用于执行各种数学和数据处理任务,例如:
- 张量操作:逐元素操作、矩阵操作、归约操作等。
- 神经网络层:卷积、池化、归一化、激活等。
- 损失函数:KLDivLoss、L2Loss、NLLLoss等。它使用户能够专注于训练神经网络和开发应用程序,而不是加速GPU性能。muDNN库提供了基于上下文的API,允许使用MUSA流轻松进行多线程。
此API参考列出了数据类型定义和函数的详细描述。
1.1 功能需求和保证
- 每个API都可以安全且并发地访问,即它们是可重入的。用户必须确保在调用API之前,必要的输入内存分配和数据准备已经就绪。
- 大部分API(除了有特定注释的)可以在相同的配置和输入下复现相同的结果。
- muDNN支持最大张量维度大小为8。
2 模块索引
2.1 模块
以下是所有模块的列表:
- 基础操作符
- 图像操作符
- 数学操作符
- NN -(神经网络)操作符
- 版本
3 类索引
3.1 类列表
- musa::dnn::BatchMatMul 以下是类、结构体、联合体和接口及其简要描述:
- musa::dnn::BatchNorm
- musa::dnn::Binary
- musa::dnn::Concat
- musa::dnn::Convolution
- musa::dnn::CTCLoss
- musa::dnn::Cum
- musa::dnn::Cumsum
- musa::dnn::DebugInfo
- musa::dnn::DeformableConv
- musa::dnn::Dot
- musa::dnn::Dropout
- musa::dnn::Fill
- musa::dnn::Convolution::FusedActivationDesc
- musa::dnn::GatherX
- musa::dnn::Glu
- musa::dnn::GroupNorm
- musa::dnn::Handle
- musa::dnn::ImplBase
- musa::dnn::Interpolate
- musa::dnn::KLDivLoss
- musa::dnn::L2Loss
- musa::dnn::LayerNorm
- musa::dnn::LocalResponseNorm
- musa::dnn::MaskedScatter
- musa::dnn::MaskedSelect
- musa::dnn::MatMul
- musa::dnn::MatrixBase
- musa::dnn::MultiHeadAttention
- musa::dnn::NLLLoss
- musa::dnn::Nonzero
- musa::dnn::Pad
- musa::dnn::Permute
- musa::dnn::Pooling
- musa::dnn::Reduce
- musa::dnn::RMSNorm
- musa::dnn::RNN
- musa::dnn::ScaledDotProductAttention
- musa::dnn::Scan
- musa::dnn::Scatter
- musa::dnn::ScatterND
- musa::dnn::Softmax
- musa::dnn::Sort
- musa::dnn::SortByKey
- musa::dnn::Tensor
- musa::dnn::TensorBase
- musa::dnn::Ternary
- musa::dnn::TopK
- musa::dnn::Unary
- musa::dnn::Unfold
- musa::dnn::Unique
- musa::dnn::WeightNorm
4 模块文档
4.1 基础操作符
类
- class musa::dnn::ImplBase
- class musa::dnn::Handle
- class musa::dnn::TensorBase
- class musa::dnn::Tensor
- class musa::dnn::MatrixBase
- class musa::dnn::DebugInfo
宏
- #define MUDNN_ITEM (x) x,
- #define MUDNN_ITEM (x, ...) x,
- #define MUDNN_ITEM (x) x,
- #define MUDNN_ITEM (x) x,
- #define MUDNN_ITEM (x, y) x,