1 小序(Level 1)
1.0 CUDA
摘自:百度百科
C U D A T M CUDA^{TM} CUDATM (Compute Unified Device Architecture,统一计算设备架构),是NVIDIA(英伟达)推出的并行计算架构,该架构使GPU能够解决复杂的计算问题.CUDA包含指令集架构(ISA)以及GPU内部的并行计算引擎. C U D A T M CUDA^{TM} CUDATM架构可用C开发,CUDA3.0支持C++及FORTRAN.
1.2 cuDNN
摘自:NVIDIA官网
cuDNN(CUDA Deep Nerual Network,统一计算设备架构深度神经网络)是一个GPU加速的深度神经网络基元库.cuDNN为标准例程提供了高度优化的实现,如前向和反向卷积,池化,标准化和激活层.
全世界深度学习研究员和框架开发人员都依赖cuDNN实现高性能GPU加速.这帮助他们将精力集中在训练神经网络和开发软件上,而不是在低级的GPU性能调优上.
cuDNN加速了广泛使用的深度学习框架,如Caffe,Caffe2,Chainer,Kears,MatLab,MxNet,Tensorflow和PyTorch.
2 查看版本
2.1 查看CUDA版本
- 查询
cat /usr/local/cuda/version.txt
- 结果
CUDA Version 8.0.61
CUDA Patch Version 8.0.61.2
2.2 cuDNN版本
- 查看
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
- 结果
#define CUDNN_MAJOR 6
#define CUDNN_MINOR 0
#define CUDNN_PATCHLEVEL 21
--
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)
#include "driver_types.h"
2.3 显卡信息查看
2.3.1 VGA显卡信息
lspci | grep -i vga
# 结果
00:02.0 VGA compatible controller: Cirrus Logic GD 5446
2.3.2 Nvidia显卡
lspci | grep -i nvidia
# 结果
00:08.0 3D controller: NVIDIA Corporation Device 1bb3 (rev a1)
2.3.3 GPU信息
nvidia-smi
GPU基本信息及使用情况:
GPU参数说明
序号 | 参数 | 说明 |
---|---|---|
0 | GPU | GPU编号,多块GPU时,根据编号指定计算 |
1 | Fan | N/A风扇转速,0~100%,该速度是计算机期望的风扇转速,手机情况下,如果风扇堵转,可能达不到显示的转速,有的设备不会返回转速,因为它不依赖风扇冷却,而是通过其他外设保持低温(如空调/水冷等) |
2 | Temp | 温度, ∘ C {^\circ}C ∘C |
3 | Perf | GPU性能,P0~P12,P0表示最大性能,依次递减 |
4 | Persistence-M | 持续模式状态,持续模式耗能大,on模式下,在新的GPU应用启动时,耗时少,off模式,启动耗时,耗能低 |
5 | Pwr | 能耗,Uage使用时的能耗,Cap最大能耗 |
6 | Bus-Id | GPU总线 |
7 | Disp.A | GPU是否初始化(Display Active) |
8 | Memory Usage | 显存使用率,7604(占用大小)/7606(显存实际大小) |
9 | Volatile GPU-Util | 浮动的GPU使用率 |
10 | Compute M | 计算模式 |
处理参数说明
序号 | 参数 | 说明 |
---|---|---|
1 | GPU | GPU编号 |
2 | PID | 处理集成的ID |
3 | Process Name | 进程名称 |
4 | GPU Memory Usage | GPU内存占用 |
3 Tensorflow-gpu匹配CUDA及cuDNN
序号 | Tensorflow-gpu Version | CUDA Version | cuDNN Version |
---|---|---|---|
1 | 1.13 | 10 | 7.4 |
2 | 1.12 | 9 | 7 |
3 | 1.11 | 9 | 7 |
4 | 1.10.0 | 9 | 7 |
5 | 1.9.0 | 9 | 7 |
6 | 1.8.0 | 9 | 7 |
7 | 1.7.0 | 9 | 7 |
8 | 1.6.0 | 9 | 7 |
9 | 1.5.0 | 9 | 7 |
10 | 1.4.0 | 8 | 6 |
11 | 1.3.0 | 8 | 6 |
12 | 1.2.0 | 8 | 5.1 |
13 | 1.0.0 | 8 | 5.1 |
注意
为保证Tensorflow正常使用GPU,请匹配三者的版本.
4 总结
- 深度学习框架性能提升,依赖于开发环境的正确搭建;
- 依据不同CUDA和cuDNN选择Tensorflow版本;
- 底层技术需要了解,有能力需深入学习,有助于后期开发.
[参考文献]
[1]https://tensorflow.google.cn/install/source#linux
[2]https://blog.csdn.net/dcrmg/article/details/78146797?locationNum=5&fps=1
[3]https://blog.csdn.net/omodao1/article/details/83241074
[4]https://blog.csdn.net/a784586/article/details/78688842