文章目录

  • 深度学习 — GPU 相关概念 及其环境搭建(CUDA & cuDNN)
  • 一、相关概念
  • 1. CPU vs GPU
  • 1.1. CPU
  • 1.2. GPU
  • 1.3. 差异点
  • 2. CUDA vs cuDNN
  • 2.1. CUDA
  • 2.2. cuDNN
  • 二、GPU 环境搭建
  • 2.1 CUDA 安装
  • 2.2 cuDNN 安装
  • 2.3 验证安装
  • 参考资料


深度学习 — GPU 相关概念 及其环境搭建(CUDA & cuDNN)

一、相关概念

1. CPU vs GPU

GPU主要部件 gpu上有哪些部件_GPU主要部件

1.1. CPU
  • 概念:
  • 中央处理器(CPU),是电子计算机的主要设备之一,电脑中的核心配件。其功能主要是解释计算机指令以及处理计算机软件中的数据。
  • CPU的结构主要包括运算器(ALU, Arithmetic and Logic Unit)、控制单元(CU, Control Unit)、寄存器(Register)、高速缓存器(Cache)和它们之间通讯的数据、控制及状态的总线
1.2. GPU
  • 概念:
  • 图形处理器(英语:Graphics Processing Unit,缩写:GPU),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器。
1.3. 差异点
  • CPU擅长逻辑控制,是串行计算,而GPU擅长高强度计算,是并行计算。打个比方,GPU就像成千上万的苦力,每个人干的都是类似的苦力活,相互之间没有依赖,都是独立的,简单的人多力量大;CPU就像包工头,虽然也能干苦力的活,但是人少,所以一般负责任务分配,人员调度等工作。
  • 可以看出GPU加速是通过大量线程并行实现的,因此对于不能高度并行化的工作而言,GPU就没什么效果了。而CPU则是串行操作,需要很强的通用性,主要起到统管和分配任务的作用。

2. CUDA vs cuDNN

  • CUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。
    cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算。它就相当于工作的工具,比如它就是个扳手。
    但是CUDA这个工作台买来的时候,并没有送扳手。想要在CUDA上运行深度神经网络,就要安装cuDNN,就像你想要拧个螺帽就要把扳手买回来。这样才能使GPU进行深度神经网络的工作,工作速度相较CPU快很多。
2.1. CUDA
  • 概念:
  • CUDA(Compute Unified Device Architecture,统一计算架构),是显卡厂商NVIDIA推出的运算平台,该架构使GPU能够解决复杂的计算问题。
  • CUDA 是NVIDIA推出的只能用于自家GPU的并行计算框架。只有安装这个框架才能够进行复杂的并行计算。只有当要解决的计算问题是可以大量并行计算的时候才能发挥CUDA的作用。
    主流的深度学习框架也都是基于CUDA进行GPU并行加速的,几乎无一例外。还有一个叫做cudnn,是针对深度卷积神经网络的加速库。
2.2. cuDNN
  • NVIDIA cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。NVIDIA cuDNN可以集成到更高级别的机器学习框架中,如谷歌的Tensorflow、加州大学伯克利分校的流行caffe软件。简单的插入式设计可以让开发人员专注于设计和实现神经网络模型,而不是简单调整性能,同时还可以在GPU上实现高性能现代并行计算。

二、GPU 环境搭建

2.1 CUDA 安装

  • 下载链接:
  • 安装目录参考:
  • GPU主要部件 gpu上有哪些部件_GPU主要部件_02

  • 环境变量:
  • CUDA_PATH:E:\develop_tools\cuda\cuda-install\cuda-toolkit
  • CUDA_PATH_V10_0:E:\develop_tools\cuda\cuda-install\cuda-toolkit
  • path:
  • E:\develop_tools\cuda\cuda-install\cuda-toolkit\bin
  • E:\develop_tools\cuda\cuda-install\cuda-toolkit\libnvvp
  • E:\develop_tools\cuda\cuda-install\cuda-toolkit\lib\x64
  • 查看是否安装成功:
nvcc --version

2.2 cuDNN 安装

  • 下载链接:cuDNN
  • 安装步骤:
  • 下载与CUDA 对应的 cuDNN:

GPU主要部件 gpu上有哪些部件_GPU主要部件_03

  • 下载之后进行解压,将解压之后的文件直接复制到 CUDA 的 Toolkit 文件夹中:

GPU主要部件 gpu上有哪些部件_1024程序员节_04

  • 参考资料:

2.3 验证安装

  1. 通过NVIDIA提供的 deviceQuery.exebandwidthTest.exe 来查看GPU的状态, 两者均在安装目录的 extras\demo_suite文件夹中:

GPU主要部件 gpu上有哪些部件_GPU主要部件_05

  1. 分别在 cmd 中运行 deviceQuery.exebandwidthTest.exe,如果两个返回都是 PASS,则代表安装成功,否则需要重新安装
  • deviceQuery.exe:

GPU主要部件 gpu上有哪些部件_深度学习_06

  • bandwidthTest.exe:
  • GPU主要部件 gpu上有哪些部件_深度学习_07