cuDNN概述
NVIDIACUDA®深度神經網絡庫(cuDNN)是GPU加速的用於深度神經網絡的原語庫。cuDNN為標准例程提供了高度優化的實現,例如向前和向后卷積,池化,規范化和激活層。
全球的深度學習研究人員和框架開發人員都依賴cuDNN來實現高性能GPU加速。它使他們可以專注於訓練神經網絡和開發軟件應用程序,而不必花時間在底層GPU性能調整上。cuDNN的加快廣泛使用的深度學習框架,包括Caffe2,Chainer,Keras,MATLAB,MxNet,PyTorch和TensorFlow。已將cuDNN集成到框架中的NVIDIA優化深度學習框架容器,訪問NVIDIA GPU CLOUD了解更多信息並開始使用。
8x Tesla V100 + cuDNN 7.6 on 20.03 NGC container vs. 8x Tesla A100 + cuDNN 8.0 Preview on Pre-Release NGC container. MaskRCNN, PyTorch TF32 vs FP32, Batch Size: 8. GNMT, PyTorch TF32 vs FP32, Batch Size: 512. WaveGlow, PyTorch TF32 vs FP32, Batch Size: 10. U-Net Medical, TensorFlow FP16 (Mixed) vs FP16, Batch Size: 16. U-Net Industrial, TensorFlow FP16 (Mixed) vs FP16, Batch Size: 24. TacoTron2, PyTorch FP16 (Mixed) vs FP16, Batch Size: 128.
cuDNN 8的新增功能
cuDNN 8針對A100 GPU進行了優化,提供了比V100 GPU高出5倍的高性能,並且包括針對會話AI和計算機視覺等應用程序的新優化和API。經過重新設計,易於使用,集成應用程序,並為開發人員提供了更大的靈活性。
cuDNN 8的亮點包括:
- 已針對包括新TensorFloat-32,FP16和FP32在內的NVIDIA A100 GPU的峰值性能進行了調整
- 重新設計的低級API可直接訪問cuDNN內核,以實現更好的控制和性能調整
- 向后兼容層保持對cuDNN 7.x的支持,使開發人員可以管理向新cuDNN 8 API的過渡
- 針對計算機視覺,語音和語言理解網絡的新優化
- 融合運算符以新API加速卷積神經網絡
cuDNN 8現在提供六個較小的庫,可在集成到應用程序時提供粒度。
主要特征
- 適用於所有常見卷積的Tensor Core加速,包括2D,3D,分組,深度可分離以及使用NHWC和NCHW輸入和輸出進行擴張
- 針對計算機視覺和語音模型的優化內核,包括ResNet,ResNext,SSD,MaskRCNN,Unet,VNet,BERT,GPT-2,Tacotron2和WaveGlow
- 支持FP32,FP16和TF32浮點格式以及INT8和UINT8整數格式
- 4d張量的任意維排序,跨距和子區域意味着可以輕松集成到任何神經網絡實現中
- 加速任何CNN架構上的融合操作
cuDNN在Windows和Linux上受數據中心和移動GPU中的Ampere,Turing,Volta,Pascal,Maxwell和Kepler GPU體系結構支持。
cuDNN加速框架