NVIDIA cuDNN

NVIDIA CUDA® 深度神经网络库 (cuDNN) 是一个 GPU 加速的深度神经网络基元库,能够以高度优化的方式实现标准例程(如前向和反向卷积、池化层、归一化和激活层)。

全球的深度学习研究人员和框架开发者都依赖 cuDNN 来实现高性能 GPU 加速。借助 cuDNN,研究人员和开发者可以专注于训练神经网络及开发软件应用,而不必花时间进行低层级的 GPU 性能调整。cuDNN 可加速广泛应用的深度学习框架,包括 Caffe2ChainerKerasMATLABMxNetPaddlePaddlePyTorchTensorFlow。如需获取经 NVIDIA 优化且已在框架中集成 cuDNN 的深度学习框架容器,请访问 NVIDIA GPU CLOUD 了解详情并开始使用。


下载 cuDNN      GTC 2020      开发者指南      论坛     


图表显示,A100 的速度比使用了 cuDNN 8.1 的 V100 快 5 倍以上
在 21.02 NGC 容器上比较使用 cuDNN 7.6.5 的单个 DGX-1V 服务器与使用 cuDNN 8.1.1 的 DGX-A100 的吞吐量。端到端性能趋于收敛。


cuDNN 8.3 的新变化

cuDNN 8.3 针对 A100 GPU 进行了优化,可提供高达 V100 GPU 5 倍的开箱即用性能,并且包含适用于对话式 AI 和计算机视觉等应用的新优化和 API。它已经过重新设计,可实现易用性和应用集成,同时还能为开发者提供更高的灵活性。

cuDNN 8.3 的亮点包括:

  • 为基于转换器的模型提供优化加速
  • 运行时融合,通过新的运算符、启发式算法和融合迅速编译内核
  • 将下载包大小缩减 30%

cuDNN 8.3 现以六个较小的库的形式提供,能够更精细地集成到应用中。开发者可以下载 cuDNN,也可从 NGC 上的框架容器中将其提取出来。

阅读新的 cuDNN 版本说明,获取新特性和增强功能的详细列表。

 

cuDNN 的主要特性

  • 为各种常用卷积实现了 Tensor Core 加速,包括 2D 卷积、3D 卷积、分组卷积、深度可分离卷积以及包含 NHWC 和 NCHW 输入及输出的扩张卷积
  • 为诸多计算机视觉和语音模型优化了内核,包括 ResNet、ResNext、EfficientNet、EfficientDet、SSD、MaskRCNN、Unet、VNet、BERT、GPT-2、Tacotron2 和 WaveGlow
  • 支持 FP32、FP16、BF16 和 TF32 浮点格式以及 INT8 和 UINT8 整数格式
  • 4D 张量的任意维排序、跨步和子区域意味着可轻松集成到任意神经网络实现中
  • 能为各种 CNN 体系架构上的融合运算提速

数据中心移动 GPU 中采用 Ampere、Turing、Volta、Pascal、Maxwell 和 Kepler GPU 体系架构的 Windows 和 Linux 系统均支持 cuDNN。


cuDNN 加速框架


 

cuDNN 资源