cuDNN10.1

    下载量:0    评分:8.0    更新时间:2023-08-24    大小:260.6 MB


软件介绍

CuDNN是一款专为Deep Learning框架打造的GPU计算加速工具。CuDNN最新版是能够用于深层神经网络的GPU加速库,支持的DL库包括Caffe,ConvNet, Torch7等。CuDNN软件新增了协作组,可以帮助用户用于同步协作线程的单一结构,是GPU训练模型的必备工具。

cuDNN

软件基础简介

      ·支持Volta-GPU架构,包括新的Tesla V100 加速器

      ·协作组,一个用于管理通信线程组的新编程模型

      ·用于编程Tensor Core矩阵的新型API在Tesla V100上进行乘法或加法的操作

      ·更快的程序库用于线性代数,图像处理,FFT等

      ·在CuSolver和nvGroup中的新算法

      ·新的NVIDIA Visual Profiler支持Volta V100以及改进同一内存的分析功能

      ·提高编译器性能

      ·在CUDA设备代码中支持 C++14

      ·扩大开发平台和主机编译器,包括Microsoft Visual Studio 2017, Clang 3.9, PGI17.1和GCC6.x

      CUDA 支持新的NVIDIA Volta 架构

      CUDA 的核心是支持新型Volta架构,特别是GTC 2017推出的新Tesla V100 GPU加速器。

      Tesla V100新的SM(流式多处理器)为深度学习和HPC提供了极高的浮点和整数性能。新的Volta SM比上一代Pascal设计能效高50%,在相同的功率范围内可大幅度提升FP32和FP64性能。在深度学习训练上,有12倍的峰值TFLOPs提升,在深度学习推理上,有6倍提升。通过独立的并行整数和浮点数据路径,Volta SM在计算和寻址计算的组合下,对工作负载的效率也更高。Volta的新独立线程调度能力使得并行线程之间的细粒度同步协同成为可能。最终,新型的L1 Data Cache 与Shared Memory子系统的结合极大地提升了性能,同时也简化了编程。

软件特性

      在并行运算中,线程通常需要合作来执行集体运算。

      构建这些协作代码需要对协作线程进行分组和同步。

      CUDA 9引入了协作组,一个用于组织通信线程组的编程模型。

      历史上,CUDA编程模型提供了一个用于同步协作线程的单一结构,然而,程序员通常希望以小于线程块粒度来定义线程组。并在其中同步,以便以“集体”组功能接口的形式实现更高的性能,设计灵活性和软件复用。

      协作组介绍了以子块和多块粒度明确定义线程组的能力,并对其进行集体操作,例如同步。编程模型支持跨软件边界的明确组合,使得库和实用程序功能可以在其上下文中安全同步,而无需对收敛进行假设。它允许开发人员针对硬件快速路径进行优化,例如GPU翘曲大小 – 以安全,可支持的方式使用灵活的同步,使程序员意图明确。协作组原本在CUDA中实现了合作并行性的新模式,包括整个网格中的生产者 – 消费者并行性,机会主义并行性和全局同步。

      协作组还提供了一个抽象,开发人员可以编写灵活,可扩展的代码,以便在不同的GPU架构中安全工作,包括扩展到未来的GPU功能。线程组的大小可以从几个线程到整个线程块,到网格启动中的所有线程块,跨越多个GPU的网格。

      协作组编程模型由以下元素组成:

      用于表示协作线程组的数据类型;

      由CUDA启动API定义的默认组(例如,线程块和网格);

      将现有组划分为新组的操作;

      同步组内所有线程的屏障操作;

      检查组属性以及针对集团的集体的操作。

安装步骤

      1、解压cudnn10.rar安装包

      cuda默认安装路径

      C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.1

      2、将cuda加入系统环境,设置环境变量:

      计算机上点右键,打开属性->高级系统设置->环境变量,可以看到系统中多了CUDA_PATH和CUDA_PATH_V10_1两个环境变量,接下来,还要在系统中添加以下几个环境变量:

      CUDA_SDK_PATH = C:ProgramDataNVIDIA CorporationCUDA Samplesv10.1(这是默认安装位置的路径)

      CUDA_LIB_PATH = %CUDA_PATH%libx64

      CUDA_BIN_PATH = %CUDA_PATH%bin

      CUDA_SDK_BIN_PATH = %CUDA_SDK_PATH%binwin64

      CUDA_SDK_LIB_PATH = %CUDA_SDK_PATH%commonlibx64

      在系统变量 PATH 的末尾添加:

      %CUDA_LIB_PATH%;%CUDA_BIN_PATH%;%CUDA_SDK_LIB_PATH%;%CUDA_SDK_BIN_PATH%;

      再添加如下4条(默认安装路径):

      C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.1libx64;

      C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.1bin

      C:ProgramDataNVIDIA CorporationCUDA Samplesv10.1commonlibx64;

      C:ProgramDataNVIDIA CorporationCUDA Samplesv10.1binwin64;

      3、验证是否配置成功,分别运行这两个程序deviceQuery.exe、bandwidthTest.exe ,cd到安装目录下的 …extrasdemo_suite,result=pass则安装成功

软件官网

https://developer.nvidia.com/cudnn


软件综述

NVIDIA cuDNN 10.1 是一款用于深度学习应用程序的高性能数学库。它提供了优化的原语,可在 NVIDIA GPU 上高效运行深度神经网络。

优点:

  • 性能: cuDNN 10.1针对 NVIDIA GPU 进行了高度优化,可提供卓越的性能,尤其是在训练和推理深度神经网络方面。
  • 易用性: cuDNN 10.1 具有易于使用的 API,使开发人员能够轻松地利用其功能,而无需担心底层 GPU 编程。
  • 广泛的覆盖范围: cuDNN 10.1 支持各种深度学习框架,包括 TensorFlow、PyTorch 和 Caffe。这种广泛的覆盖范围允许开发人员使用他们选择的框架,同时仍然受益于 cuDNN 的优化。
  • 积极支持: NVIDIA 积极支持 cuDNN,定期发布更新和修复程序,以解决任何问题并提高性能。

缺点:

  • 仅限 NVIDIA GPU: cuDNN 10.1 只能在 NVIDIA GPU 上使用。这可能会成为使用不同供应商 GPU 的开发人员的限制。
  • 仅限商业用途: cuDNN 10.1 的商用版本并非免费,这可能会对资源有限的组织或个人构成障碍。

其他注意事项:

  • 系统要求: cuDNN 10.1 需要具有 CUDA 兼容性的 NVIDIA GPU 和相应的驱动程序。
  • 安装: 安装 cuDNN 10.1 是一个相对简单的过程,提供了明确的分步说明。
  • 文档: cuDNN 10.1 拥有全面的文档和示例,使开发人员能够快速入门。

结论:

总的来说,NVIDIA cuDNN 10.1 是一款功能强大且经过优化的数学库,可显着提高深度学习应用程序在 NVIDIA GPU 上的性能。其易用性、广泛的覆盖范围和积极的支持使其成为深度学习开发人员的宝贵工具。

THE END
喜欢就支持一下吧
点赞48 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容