英伟达 cuDNN#
NVIDIA CUDA 深度神经网络库 (cuDNN) 是一个用于深度神经网络的 GPU 加速的原语库。它为深度神经网络 (DNN) 应用中频繁出现的操作提供了高度优化的实现。
卷积前向和后向传播,包括互相关
矩阵乘法
池化前向和后向传播
Softmax 前向和后向传播
算术、数学、关系和逻辑逐点运算(包括各种类型的前向和后向神经元激活)
张量变换函数
LRN、LCN、批归一化、实例归一化和层归一化前向和后向传播
除了提供单个操作的高性能实现之外,cuDNN 还支持一组灵活的多操作融合模式,以进行进一步优化。目标是在 NVIDIA GPU 上为重要的深度学习用例实现最佳性能。
在 cuDNN 中,单操作和多操作计算都表示为操作图。以下 API 层可用于构建这些图:
Python 前端 API
C++ 前端 API
C 后端 API
NVIDIA cuDNN 前端 API 提供了一个简化的编程模型,足以满足大多数用例。
如果您想使用非基于图形界面且未通过前端 API 层公开的旧式固定功能例程,或者如果您需要纯 C 接口,请仅使用 NVIDIA cuDNN 后端 API。
