系统版本:ubuntu 18.04
系统架构:x86_64
nvidia driver 驱动版本:NVIDIA-Linux-x86_64-440.100 (GPU:2080TI)
CUDA版本:10.0
cuDNN:7.6.4
gcc:4.8.5
tensorflow-gpu:1.14.0
sudo vim /etc/modprobe.d/blacklist.conf
在文本最后添加:
blacklist nouveau
options nouveau modeset=0
然后执行:sudo update-initramfs -u
重启机器后,执行以下命令,如果没有屏幕输出,说明禁用nouveau成功:lsmod | grep nouveau
官网下载地址:https://www.nvidia.cn/Download/index.aspx?lang=cn
重启后,使用快捷键进入文本模式,然后输入用户名密码就可:Ctrl-Alt+F1
|| 或使用SSH连接
执行以下命令禁用X-Window服务,否则无法安装显卡驱动:sudo service lightdm stop
|| 有可能没安装lightdm,则直接跳过
执行以下命令卸载原有显卡驱动:注意匹配自己下载的驱动版本
sudo apt-get remove --purge nvidia*
sudo apt-get autoremove
sudo chmod +x NVIDIA-Linux-x86_64-4**.**.run # 源显卡驱动
sudo ./NVIDIA-Linux-x86_64-4**.**.run --uninstall # 默认即可
重启
执行驱动文件即可安装新驱动,一直默认即可:
sudo ./NVIDIA-Linux-x86_64-440.100.run -no-opengl-files
执行以下命令启动X-Window服务
sudo service lightdm start
最后执行重启命令,重启系统:
sudo reboot
查看gcc版本:gcc --version
若gcc版本太高就更改版本:sudo apt-get install gcc-4.8 g++-4.8
切换gcc版本:sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 100
激活生效:sudo update-alternatives --config gcc
sudo chmod a+x ....run
sudo ./...run
Do you accept the previously read EULA? # ctrl+c 可加快速度
accept/decline/quit: accept
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 410.48?
(y)es/(n)o/(q)uit: n
Install the CUDA 10.0 Toolkit?
(y)es/(n)o/(q)uit: y
Enter Toolkit Location
[ default is /usr/local/cuda-10.0 ]:
Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: y
Install the CUDA 10.0 Samples?
(y)es/(n)o/(q)uit: y
Enter CUDA Samples Location
[ default is /home/user ]:
# 安装结果
- Driver: Not Selected
Toolkit: Installed in /usr/local/cuda-10.0
Samples: Installed in /home/***, but missing recommended libraries
Please make sure that
- PATH includes /usr/local/cuda-10.0/bin
- LD_LIBRARY_PATH includes /usr/local/cuda-10.0/lib64, or, add /usr/local/cuda-10.0/lib64 to /etc/ld.so.conf and run ldconfig as root
To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-10.0/bin
添加环境变量
vim ~/.bashrc
# >>> coda initialize >>>
export PATH="/usr/local/cuda-10.0/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64/:$LD_LIBRARY_PATH"
# <<< coda initialize <<<
激活生效:source ~/.bashrc
nvcc --version
查看版本信息是否一致
测试
cd ~/NVIDIA_CUDA-10.0_Samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
下载地址:https://developer.nvidia.com/rdp/cudnn-archive
解压 sudo tar -xvf cudnn-10.0-linux-x64-v7.6.5.32.tgz
复制文件
sudo cp cuda/include/cudnn.h /usr/local/cuda-10.0/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-10.0/lib64/
sudo chmod a+r /usr/local/cuda-10.0/include/cudnn.h
sudo chmod a+r /usr/local/cuda-10.0/lib64/libcudnn*
测试
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2 #查看cudnn的版本
下载cudnn DEB文件 安装
sudo dpkg -i libcudnn7_7.6.4.38-1+cuda10.0_amd64.deb #安装cudnn-runtime库
sudo dpkg -i libcudnn7-dev_7.6.4.38-1+cuda10.0_amd64.deb #安装cudnn-developer库
sudo dpkg -i libcudnn7-doc_7.6.4.38-1+cuda10.0_amd64.deb #安装cudnn代码样本和使用者指引
测试
# 测试cudnn
cp -r /usr/src/cudnn_samples_v7/ $HOME #拷贝测试样例到主文件夹
cd $HOME/cudnn_samples_v7/mnistCUDNN #进入样例下的mnistCUDNN目录
make clean && make #编译mnistCUDNN样例
./mnistCUDNN #运行编译好的mnistCUDNN样例
# Test passed 即为通过
make过程中如遇到WARNING - FreeImage is not set up correctly. Please ensure FreeImage is set up correctly.-->
,可能没创建cuda文件夹的软连接,如检查缺失没有, sudo ln -s cuda-10.0/ cuda
创建软连接重试即可
安装步骤
sudo sh A...sh
Do you accept the license terms? [yes|no] yes
path choose default
by running conda init? [yes|no] yes
source ~/.bashrc
源设置
首先将对应镜像源的地址通过 conda config --add 命令加入 conda 的 channel 列表中,可以选择添加整个镜像源的地址或只添加与 pytorch 相关的镜像源的地址。(或者更傻瓜的方式,将 ~/.condarc 文件备份后,将清华 Anaconda 镜像源页面中的配置文件内容复制至 ~/.condarc 文件中)
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ #添加整个镜像源的地址
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/ #添加镜像源中 pytorch 对应的地址
通过 conda config 命令设置使用 conda 进行软件包下载时显示软件包的 url 地址,这样就可以看到下载软件包的时候是否是从国内镜像源下载。具体命令为 conda config --set show_channel_urls yes。(Windows 环境中用户主目录下会生成对应的 .condarc 文件,里面保存一些与源相关的信息)
conda config --set show_channel_urls yes #下载时显示软件包的来源
通过 conda config --show-sources 命令查看添加的软件源,确定是否添加有效。
conda config --show-sources #查看已有的软件源
安装
pip install tensorflow==1.14.0
pip install tensorflow-gpu==1.14.0
测试
# python环境
import tensorflow as tf
tf.test.is_gpu_available()
# 最后显示True即可调用gpu
设置固定IP后,修改DNS
sudo make 报错 g++: No such file or directory
缺少配置g++
anaconda无权限
开放anaconda安装文件夹权限: sudo chown -R user /home/ubuntu/anaconda3
WARNING - FreeImage is not set up correctly. Please ensure FreeImage is set up correctly.
sudo ln -s cuda-10.0/ cuda
pip No such file or directory: ‘c++’
尝试升级pip版本
numpy与tensorflow版本问题
警告信息: FutureWarning: Passing (type, 1) or ‘1type’ as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / ‘(1,)type’.
pip install -U -i https://pypi.tuna.tsinghua.edu.cn/simple numpy==1.16.0
tensorflow | numpy | cuda | cudnn |
---|---|---|---|
1.14 | 1.16.0 | 10.0 | 7.6.4 |
WARNING:root:Limited tf.compat.v2.summary API due to missing TensorBoard installation.
重新安装tensorboard
Tensorflow
NVIDIA CUDNN DOCUMENTATION
ubuntu18.04安装tensorflow-gpu==1.14.0(CUDA10.0+cuDNN7.4.1)
Ubuntu18.04安装tensorflow-gpu(2019.7新版cuDNN-7.6.2)
Ubuntu下安装INVIDIA显卡驱动(避免循环登录问题)
Ubuntu18.04安装CUDA10、CUDNN
安装docker-ce和nvidia-docker2