Ubuntu18.04 配置Tensorflow 环境

1 首先要先搞清楚自己的系统版本

2 其次要安装nvidia的驱动

ubuntu-drivers devices

可以选择自己想要的驱动安装,也可以选择自动安装

sudo ubuntu-drivers autoinstall

3 选择合适的cuda版本并下载安装  

https://developer.nvidia.com/cuda-toolkit-archive

我安装的是cuda 9.1 版本的,直接下载runfile并且按照指示操作。

nvcc -V 

验证是否安装成功

4 选择对应版本的cudnn下载并且按照指示操作

https://developer.nvidia.com/rdp/cudnn-archive

Ubuntu18.04 配置Tensorflow 环境_第1张图片

为什么我下载16.04 的呢,因为按照官方的版本只能cuda10以上了,但是我不想升级我的tensorflow到2.0版本。

不过也可以用

然后进入deb的目录

sudo dpkg -i + deb 即可 安装

 

安装anaconda时,需要选择python3.6的版本,但是官网的anaconda都是3.7的,先下下来,然后再退档

conda install python=3.6

然而有可能出现的问题是,anaconda对于权限一直都很迷,我碰上了NotWritableError: The current user does not have write permissions to a required path.

解决办法是:

sudo chown -R $USER:$USER anaconda3

5 创建anaconda下的虚拟环境

conda create -n tensorflow python==3.6

pip install tensorflow-gpu==1.14.0

pip install keras

pip install opencv-python

 

6 配置python interpreter为虚拟环境中的python

并且在程序开头加上

import os

os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"

os.environ["CUDA_VISIBLE_DEVICES"] = "0"

以此调用gpu来执行神经网

在执行程序时,可以查看gpu使用情况

watch -n 1 nvidia-smi  # 每秒刷新gpu使用情况

很多部分的代码还是不能用gpu加速的,所以如果经常看到gpu占用率低是很正常的,但是偶尔会跳到很高的占用率证明gpu已经被调动。

 

过程中碰到的一些问题及解决办法:

Ubuntu18.04 配置Tensorflow 环境_第2张图片

为什么nvcc-V 和nvidia-smi 显示的cuda 版本不一样呢 ?

因为nvcc-V 显示的是cuda Runtime API的版本

而nvidia-smi显示的是cuda Driver API 的版本

只要Driver的版本大于Runtime的应该就可以

 

一开始我想安装cuda10.2, 但是本身系统已经有9.1, 所以出现了一些错误,并且导致我无法用apt安装任何东西

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 cuda-libraries-dev-10-1 : Depends: libcublas-dev (>= 10.1.0.105) but it is not going to be installed
 cuda-samples-10-1 : Depends: libcublas-dev (>= 10.1.0.105) but it is not going to be installed
 cuda-visual-tools-10-1 : Depends: libcublas-dev (>= 10.1.0.105) but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

 解决方法:

sudo rm /etc/apt/sources.list.d/cuda.list
sudo apt-get clean
sudo apt-get update
sudo apt install -f

这个错误我没搞懂是为什么,只能先把解决方法mark在这里

 

要卸载旧版本的cuda以及cudnn

cd  /usr/local

假如cuda要卸载的版本是9.1

sudo ./cuda-9.1/bin/cuda-uninstaller

sudo rm -rf  cuda-9.1

卸载cudnn

sudo rm -rf /usr/local/cuda/include/cudnn.h
sudo rm -rf /usr/local/cuda/lib64/libcudnn*

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(Ubuntu18.04 配置Tensorflow 环境)