环境:
ubuntu-18.04
nvidia驱动-470
cuda-10
cudnn-7.4
tensorflow1.13.1
1.版本信息
cuda和driver版本
tensorflow版本信息
2.安装nvidia驱动
2.1查看本机显卡硬件型号[ubuntu-drivers devices]
推荐安装为版本nvidia-driver-510,我安装的nvidia-driver-470
2.2命令行安装
sudo add-get-repository ppa:graphics-drivers/ppa
sudo apt-get update
ubuntu-drivers devices
sudo ubuntu-drivers autoinstall或者sudo apt-get install nvidia-driver-XX //推荐的版本号
2.3查看安装是否成功[nvidia-smi]
网上找的数据信息:
2.4如有需要设置使用nvidia驱动
我笔记本因为双显卡,安装nvidia驱动后会频繁卡死,好像是在自带的驱动和nvidia驱动之间切换导致,设置使用nvidia驱动就行了
[nvidia-settings]
一些先看查询使用命令:
查看现有显卡
sudo lshw -c display
检查现在正在使用的卡:
prime-select query
如果要使用Intel图形卡,请运行以下命令:
sudo prime-select intel
要切换回Nvidia卡,请运行
sudo prime-select nvidia
如果由于某种原因你不再需要专有驱动程序,可以通过运行以下命令将其删除:
sudo apt purge nvidia-*
sudo apt autoremove
要删除Nvidia驱动程序PPA,请运行:
sudo add-apt-repository --remove ppa:graphics-drivers/ppa
至此,删除Nvidia完成。
3.安装cuda10.0
3.1下载地址:https://developer.nvidia.com/compute/cuda/10.0/Prod/local_installers/cuda_10.0.130_410.48_linux
3.2安装
sudo chmod +x cuda_10.0.130_410.48_linux.run
sudo ./cuda_10.0.130_410.48_linux.run
安装过程或出现几次提示,大部分默认安装即可,只有在提示是否安装显卡驱动时,填写no,就好,另外将CUDA samples安装在用户的主目录中,方便后面的测试
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 375.26?----[选n]
安装结束后,添加系统变量
sudo vi ~./bashrc
然后在文件的最后添加上:
PATH=$PATH:/usr/local/cuda/bin
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib6
export CUDA_HOME=/usr/local/cuda
保存修改后,在终端刷新系统变量
source ~/.bashrc
3.3测试
可以通过以下命令查看CUDA是否配置正确:
测试cuda是否安装成功,进入CUDA_sampmles目录中,然后执行下面的命令:
cd /usr/local/cuda/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
最后一行出现pass则安装成功,cuda可正常使用
如果报错:cudaGetDeviceCount returned 30
双显卡查看是否使用nvidia,找不到显卡,我是之前好的,突然出现这个报错,重启电脑解决
4.安装cudnn7.4
下载地址:https://developer.nvidia.com/rdp/cudnn-download没有账号需要注册
4.1安装cuDNN
安装cudnn比较简单,简单地说,就是复制几个文件:库文件和头文件
将cudnn的头文件复制到cuda安装路径的include路径下,将cudnn的库文件复制到cuda安装路径的lib64路径下。具体操作如下
#解压文件
tar -xvf cudnn-10.0-linux-x64-v7.4.2.24.tgz
cd cuda/
#复制include里的头文件(记得转到include文件里执行下面命令)
sudo cp ./include/cudnn.h /usr/local/cuda/include/
#复制lib64下的lib文件到cuda安装路径下的lib64(记得转到lib64文件里执行下面命令)
sudo cp ./lib64/* /usr/local/cuda/lib64/
#设置权限
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
#以下命名看是否需要修改版本信息和阮链接,我自己安装时没用到
#======更新软连接======
cd /usr/local/cuda/lib64/
#删除原有动态文件,版本号注意变化,可在cudnn的lib64文件夹中查看
sudo rm -rf libcudnn.so libcudnn.so.7
#生成软衔接(注意这里要和自己下载的cudnn版本对应,可以在/usr/local/cuda/lib64下查看自己libcudnn的版本)
sudo ln -s libcudnn.so.7.0.2 libcudnn.so.7
#生成软链接
sudo ln -s libcudnn.so.7 libcudnn.so
sudo ldconfig -v #立刻生效
最后我们看看验证安装cudnn后cuda是否依旧可用
nvcc --version # or nvcc -V
4.2测试
通过cuDNN sample测试一下(https://developer.nvidia.com/rdp/cudnn-archive 页面中找到对应的cudnn版本
下载文件:libcudnn7-doc_7.4.2.24-1+cuda10.0_amd64.deb
执行命令:sudo dpkg -i libcudnn7-doc_7.4.2.24-1+cuda10.0_amd64.deb
默认安装目录:/usr/src/cudnn_samples_v7
#复制样本文件到local文件夹下
sudo cp -r /usr/src/cudnn_samples_v7/ /usr/local
#进入到样本目录
cd /usr/local/cudnn_samples_v7/mnisrCUDNN
#编译
make clean && make
#执行测试,看是否成功,出现Test Passed表示成功
./mnistCUDNN
5.安装anaconda
Anaconda是python的一个科学计算发行版,内置了数百个python经常会使用的库
也包括许多做机器学习或数据挖掘的库,这些库很多是TensorFlow的依赖库。安装好Anaconda可以提供一个好的环境直接安装TensorFlow。
下载地址:https://www.anaconda.com/download/
Anaconda3-2021.11-Linux-x86_64.sh
chmod +x #后面是下载的sh安装文件
./#后面是下载的sh文件名称,#比如
chmod +x Anaconda3-2021.11-Linux-x86_64.sh
./Anaconda3-2021.11-Linux-x86_64.sh
安装时安装在个人目录下即可,比如说~/anaconda3。提示是否修改./bashrc文件时,建议输入“yes”。
修改conda源,将其修改为国内源,提高下载安装速度。首先打开~/.condarc文件,没有的话,创建一个即可,修改文件内容如下:
channels:
- defaults
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
如果清华的conda源不能使用的问题,如果再遇到这种情况,可以改用上交的源:
channels:
- https://mirrors.sjtug.sjtu.edu.cn/anaconda/pkgs/main/
- https://mirrors.sjtug.sjtu.edu.cn/anaconda/pkgs/free/
- defaults
show_channel_urls: true
5.1去掉base字段
重新打开终端,正常情况下,在用户名前会有“base”字样,说明已经进入了conda虚拟环境,如果没有则执行“conda init”命令即可
如果想去掉base,修改文件[~/.bashrc],添加conda deactivate
6.安装tensorflow1.13.1
6.1创建环境
conda create -n tensorflow python=3.7
conda activate tensorflow
#顺便安装相应的库
#sudo apt-get install python3-pip
#pip install numpy scipy matplotlib pylint
6.2安装tensorflow-gpu,1.13.1
sudo pip3 install tensorflow-gpu==1.13.1 -i https://mirror.baidu.com/pypi/simple
6.3测试
使用python指令进入python编译环境,测试能否使用gpu
python
import tensorflow as tf
#本步骤有警告属于正常现象,强迫症可以根据提示将响应文件后面括号中的“1”改为“(1,)”,这是因为python本班的问题引起的
#输出ture,表示可以使用GPU了
print(tf.test.is_gpu_available())
tf.__version__
我安装时候出错: module 'tensorflow' has no attribute '__version__'
重新安装解决问题:
pip3 uninstall tensorflow-gpu==1.13.1
pip3 install tensorflow-gpu==1.13.1
tf.__version__
>>> tf.__version__
6.4 include和lib地址
include:python -c 'import tensorflow as tf; print(tf.sysconfig.get_include())'
/home/mooe/anaconda3/envs/tensorflow/lib/python3.7/site-packages/tensorflow/include
lib:python -c 'import tensorflow as tf; print(tf.sysconfig.get_