The NVIDIA CUDA® Deep Neural Network library (cuDNN) is a GPU-accelerated library of primitives for deep neural networks. cuDNN provides highly tuned implementations for standard routines such as forward and backward convolution, pooling, normalization, and activation layers. cuDNN is part of the NVIDIA Deep Learning SDK.
Deep learning researchers and framework developers worldwide rely on cuDNN for high-performance GPU acceleration. It allows them to focus on training neural networks and developing software applications rather than spending time on low-level GPU performance tuning. cuDNN accelerates widely used deep learning frameworks, including Caffe,Caffe2, Chainer, Keras,MATLAB, MxNet, TensorFlow, and PyTorch. For access to NVIDIA optimized deep learning framework containers, that has cuDNN integrated into the frameworks, visit NVIDIA GPU CLOUD to learn more and get started.
What’s New in cuDNN 7.3
Deep learning frameworks using cuDNN 7.3 and later, can leverage new features and performance of the Volta and Turing architectures to deliver faster training performance. cuDNN 7.3 highlights include:
- Up to 3x faster training of ResNet-50 and GNMT on Tesla V100 vs. Tesla P100
- Grouped convolutions now support NHWC inputs/outputs and FP16/FP32 compute for models such as ResNext and Xception
- Dilated convolutions using mixed precision Tensor Core operations for applications such as semantic segmentation, image super-resolution, denoising, etc.
Read the latest cuDNN release notes for a detailed list of new features and enhancements.
cuDNN Accelerated Frameworks
- Forward and backward paths for many common layer types such as pooling, LRN, LCN, batch normalization, dropout, CTC, ReLU, Sigmoid, softmax and Tanh
- Forward and backward pass using FP32, FP16 (Tensor Cores) data types and forward pass using UINT8 (Volta and later)
- TensorCore acceleration with FP32 inputs and outputs (previously restricted to FP16 input)
- RNN cells now support more use cases with options for cell clipping and padding masks
- Automatically select the best RNN implementation with RNN search API
- Arbitrary dimension ordering, striding, and sub-regions for 4d tensors means easy integration into any neural net implementation
cuDNN is supported on Windows, Linux and MacOS systems with Volta, Pascal, Kepler, Maxwell Tegra K1, Tegra X1 and Tegra X2 and Jetson Xavier GPUs.
- NVIDIA Deep Learning SDK documentation
- Blogs on Programming Tensor Cores in cuDNN
- Related libraries and software:
- Find other cuDNN developers on NVIDIA Developer Forums
- For questions or to provide feedback, please contact cuDNN@nvidia.com
- To file bugs or report an issue,register on NVIDIA Developer Zone