深度学习之环境配置
2019-07-17 22:08
32 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/public669/article/details/96368166
我们都知道,在学习计算机的过程中,总会出现各种各样的问题,这一点我想计算机专业的伙伴们感同身受;更别说在学习深度学习的过程中了。
- 接下来,就介绍一下几个深度学习过程中几个典型而又容易范的错误。
- (1) 注意cuda、cudnn、cuda driver和cudatoolkit的版本
cuda是nvidia推出的用于自家GPU的并行计算框架,也就是说cuda只能在nvidia的GPU上运行,而且只有当要解决的计算问题是可以大量并行计算的时候才能发挥cuda的作用。
cudnn是nvidia打造的针对深度神经网络的加速库,是一个用于深层神经网络的GPU加速库。如果你要用GPU训练模型,cudnn不是必须的,但是一般会采用这个加速库。
cuda driver即cuda驱动器,是用来支持cuda运行的必备程序。而cudatoolkit则是cuda相关的工具包。
以上四者之间必须有个版本对应和匹配的问题。有时候安装keras GPU版本的时候会默认安装cudatoolikit 10.0,这时候如果你cuda是9.0的版本的话,一般会报个CUDA driver version is insufficient for CUDA的错误。如下所示:
这时候你可能需要降低cudatoolkit的版本:
conda install cudatoolkit==9.0
还有一种常见的错误是cuda driver的驱动器跟cuda不匹配。执行nvidia-smi命令会出现如下图错误:
Failed to initialize NVML: Driver/library version mismatch
这里是nvidia官方给出的关于cuda和cuda driver之间版本对应关系:
在版本不匹配时,适当降低或者更新驱动器版本即可。另外驱动器版本更新之后可能需要重启系统,当然通过如下方法不用重启也可以更新版本。首先尝试删除nvidia相关的kernel mod
sudo rmmod nvidia //这里介绍的为linux版本的
当然这里一般会报个Module nvidia is in use by的错误。(不碍事的),接下来我们先查看下kernel mod 的依赖情况:
ls mod | grep nvidia
根据根据结果逐一rmmod即可
sudo rmmod nvidia_uvm sudo rmmod nvidia_modeset
最后再rmmod nvidia即可达到驱动器更新效果
sudo rmmod nvidia nvidia-smi
还有一种报错是cudnn版本不匹配的问题:
此时直接更新cudnn版本即可
- (2)验证TensorFlow/Keras/Torch版本是否支持GPU加速
虽说按部就班的配环境好像也没啥大问题,但要想让你的TensorFlow和Torch顺利用上GPU跑起来并不是一件那么顺利的事。此时,直接使用nvidia-smi命令并不能表明TensorFlow就能顺利用上GPU
比如说我们用Keras跑模型时指定了GPU,有时候会报如下错误:
一方面,你的机器可能确实没有那么多GPU,另外一种可能就是你没有安装支持GPU的TensorFlow或者Keras版本。这时候我们可以先来验证下当前的TensorFlow或Keras是否支持GPU。
先来看TensorFlow:
from tensorflow.python.client import device_lib print(device_lib.list_local_devices())
如果输出结果有类似上述包含GPU的信息,那说明你的tensorflow是支持GPU的。再看keras:
from keras import backend as K print(K.tensorflow_backend._get_available_gpus())
如果能输出下述包含GPU的信息的话那说明当前的keras版本也是支持GPU的
Torch的话安装到时候一般都会根据官网的配置要求来:
安装后输入下列命令即可:
import torch torch.cuda.is_available()
如果输出为True的话则表明当前的torch是支持GPU加速的
如果你没有得到上述的输出结果,那么需要重新安装带gpu版本的tensorfow或者keras:
pip install tensorflow-gpu conda install keras-gpu
- (3)最后再介绍一个免费的GPU资源
如果大家没有GPU资源又或者嫌配置太糟心,我们还是有免费的GPU可以褥的。一个是谷歌的colab,自动支持GPU,大家可以直接去褥。另外一个是kaggle竞赛平台的kernel,里面也是提供GPU算力的、还有FlyAI等等。
colab目前提供的GPU已经由之前K80升级到了Tesla T4:
kaggle提供的则是Tesla P100:
colab地址:
https://colab.research.google.com/notebooks/
kaggle地址:
https://www.kaggle.com/
FlyAI地址:
https://www.flyai.com/
没了。。。。。
相关文章推荐
- 环境搭建 | 深度学习爱好者如何配置带GPU电脑环境
- Ubuntu新机配置深度学习环境遇到的问题
- 深度学习,python 之tensflow环境配置
- 深度学习GPU开发环境配置
- 深度学习- win10+Anoconda3-2.4.0+cuda8.0+TensorFlow-GPU+Pycharm2016测试Demo-GPU加速环境配置
- 深度学习deep learning环境配置:GTX1080+CUDA8.0+cudnn5
- 深度学习GPU环境的配置(python3.6+anaconda3.5.0+tensorflow1.8.0+cuda9+cudnn7+visual studio2015+pycharm)
- 配置深度学习环境的重要资料
- 深度学习环境配置:win10+cuda9.0+cudnn v7+anaconda+tensorflow1.8/1.9(gpu)jupyter notebook
- 2.1 深度学习常用软件包和环境配置
- 深度学习环境配置:Ubuntu安装CUDA9.0+cuDNN7.0完整安装教程
- Wndows8.1 64bit环境下搭建深度学习平台之Theano安装配置
- Ubuntu16.04+GTX1050ti+CUDA8.0+TensorFlow-gpu+Keras+Pycharm配置深度学习环境
- 从零开始Tensorflow == 资深小白配置深度学习环境的血泪史
- 整合一下深度学习caffe环境配置和基本使用例程(CPU+GPU)
- 【深度学习】环境配置之Anaconda安装
- 深度学习tensorflow环境配置:Ubuntu 16.04 LTS + GTX 1080 Ti,2017年11月
- 机器学习&深度学习环境安装配置
- ubuntu16.04下安装配置深度学习环境(Ubuntu 16.04/16.10+ cuda7.5/8+cudnn4/5+caffe)
- Ubuntu 18.04下深度学习环境配置