7 GPU & Nvidia Driver & Cuda & Cudatoolkit & Cudnn & Torch & Torchvision(简洁介绍)

GPU & Nvidia Driver & Cuda & Cudatoolkit & Cudnn & Torch & Torchvision(简洁介绍)

GPU:

就是显卡,用于深度学习计算的显卡基本都是 NVIDIA 公司的GPU系列。

Nvidia Driver:

硬件要使用,必然要驱动,Nvidia Driver 即为显卡驱动。(不管是电动还是做计算,都要安驱动)

Cuda:

CUDA 英文全称是 Compute Unified Device Architecture,是 NVIDIA 推出的运算平台。简单来说,即使用 GPU 并行计算的一个媒介。

https://blogs.nvidia.com/blog/2012/09/10/what-is-cuda-2/

Cudatoolkit:

CUDA 工具包的主要包含了 CUDA-CCUDA-C++ 编译器、一些科学库和实用程序库、CUDA 和 library API 的代码示例、和一些 CUDA 开发工具。

  • CUDA Toolkit (nvidia): CUDA完整的工具安装包,其中提供了 Nvidia 驱动程序、开发 CUDA 程序相关的开发工具包等可供安装的选项。包括 CUDA 程序的编译器、IDE、调试器等,CUDA 程序所对应的各式库文件以及它们的头文件。
  • CUDA Toolkit (Pytorch): CUDA不完整的工具安装包,其主要包含在使用 CUDA 相关的功能时所依赖的动态链接库。不会安装驱动程序。

安装 Cuda 即安装 Cudatoolkit

注:CUDA Toolkit 完整和不完整的区别:在安装了 CUDA Toolkit (Pytorch) 后,只要系统上存在与当前的 cudatoolkit 所兼容的 Nvidia 驱动,则已经编译好的 CUDA 相关的程序就可以直接运行,不需要重新进行编译过程。如需要为 Pytorch 框架添加 CUDA 相关的拓展时(Custom C++ and CUDA Extensions),需要对编写的 CUDA 相关的程序进行编译等操作,则需安装完整的 Nvidia 官方提供的 CUDA Toolkit。

Cudnn:

这个其实就是一个专门为深度学习计算设计的软件库,里面提供了很多专门的计算函数,如卷积等,它强调性能、易用性和低内存开销。可以集成到高级别的机器学习框架中。( Torch )

CUDA 看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。cuDNN 是基于 CUDA 的深度学习 GPU 加速库,有了它才能在 GPU 上完成深度学习的计算。它就相当于工作的工具,比如它就是个扳手。但是 CUDA 这个工作台买来的时候,并没有送扳手。想要在 CUDA 上运行深度神经网络,就要安装 cuDNN ,就像你想要拧个螺帽就要把扳手买回来。

Torch:

可以理解为 Cudnn,安装时需要匹配对应的 CUDA。

最新版本一键安装:

conda install pytorch torchvision torchaudio cudatoolkit=10.2 -c pytorch	# Linux

Torchvision:

很多基于Pytorch的工具集都非常好用,比如处理自然语言的 torchtext ,处理音频的 torchaudio ,以及处理图像视频的 torchvision

Torchvision 包含一些常用的数据集、模型、转换函数等等。当前版本 0.5.0 包括图片分类、语义切分、目标识别、实例分割、关键点检测、视频分类等工具

注意版本匹配:

    torch 1.1.0/1.1.0 + torchvision 0.2.* + CUDA 9
    torch 1.2.0/1.3.0 + torchvision 0.3.* + CUDA 10
    torch 1.2.0/1.3.0 + torchvision 0.4.* + CUDA 10
    torch 1.4.0 + torchvision 0.5.* + CUDA 10

总结:

层级由低到高:

GPU -> Nvidia Driver -> CUDA(Cudatoolkit) -> Cudnn(Torch) -> Torchvision

posted @ 2021-10-09 22:10  SethDeng  阅读(227)  评论(0编辑  收藏  举报