centos7搭建Cuda9.0 & Cudnn7.0.5 &Tensorflow1.6深度学习环境
一、安装centso7
-
将光标移动到Install Centos7后,按e编辑,出现启动命令参数,修改第二行
vmlinuz linux dd quiet
ctrl + x 保存执行,查看包含centos7的u盘盘符
-
成功后重启电脑,将光标移动到Install Centos7后,按e编辑,修改第二行
vmlinux inst.stage2=hd:/dev/sdc4 quiet
ctrl + x 保存执行
-
自定义分区(因为磁盘大自己随便定的)
分区名称 分区大小 boot 500M boot/efi 500M var 50GB swap 内存大小的1-2倍 home 用户目录随意 / # 剩余磁盘的大小
二、安装前配置
-
安装与系统内核版本对应的kernel-devel、kernel-headers
yum install kernel-devel-$(uname -r) kernel-headers-$(uname -r)
执行上述之后查看路径/usr/src/kernels/,如果看到与当前内核版本对应的文件,说明安装成功。
ls /usr/src/kernels/
-
禁用Nouveau组件
echo -e “blacklist nouveau\noptions nouveau modeset=0” > /etc/modprobe.d/blacklist.conf
reboot
lsmod | grep nouveau # 如果没有输出即为已经屏蔽了Nouveau组件 -
安装gcc
yum install gcc
-
重新建立initramfs image文件
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
dracut /boot/initramfs-$(uname -r).img $(uname -r)
三、安装显卡驱动、cuda9.0和cudnn7.0.5
安装显卡驱动
- 去官网https://www.geforce.cn/drivers下载对应的显卡驱动
- 安装
sudo chmod a+x NVIDIA-Linux-x86_64-390.77.run
sudo ./NVIDIA-Linux-x86_64-390.77.run -no-x-check -no-nouveau-check -no-opengl-files
# -no-opengl-files 表示只安装驱动文件,不安装OpenGL文件,这个参数最重要
# -no-x-check 安装驱动时不检查X服务
# -no-nouveau-check 安装驱动时不检查nouveau
nvidia-smi # 安装完成后查看GPU和驱动程序信息
安装cuda9.0
- 去官网https://developer.nvidia.com/cuda-toolkit-archive寻找对应的版本下载
-
下载完成后进入对应目录
sh cuda_9.0.176_384.81_linux.run
按q跳过阅读
选择接受Do you accept the previously read EULA?accept/decline/quit: accept
是否自动安装nvidia显卡驱动,选择no
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 384.86?(y)es/(n)o/(q)uit: n
剩下的全部都yes,看到以下输出信息说明安装成功
-
配置环境变量
编辑~/.bashrc文件vim ~/.bashrc
#末尾添加以下内容
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}编辑/etc/profile
vim /etc/profile
#末尾添加以下内容
export PATH=$PATH:/usr/local/cuda/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64使配置文件生效
source /etc/profile
-
测试
cd /usr/local/cuda-9.0/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
# 如果显示的是关于GPU的信息,则说明安装成功了。
安装cudnn7.0.5驱动
- 去官网https://developer.nvidia.com/rdp/cudnn-archive下载对应版本
- 安装
cp cudnn-9.0-linux-x64-v7.solitairetheme8 cudnn-9.0-linux-x64-v7.tgz
tar -zxvf cudnn-9.0-linux-x64-v7.tgz
cd cuda
cp include/* /usr/local/cuda
cp lib64/* /usr/local/cuda/lib64 -
查看cudnn版本
cat /usr/local/cuda/cudnn.h | grep CUDNN_MAJOR -A 2
四、安装TensorFlow
安装pyenv
安装好库文件
sudo yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel git
安装pyenv
mkdir ~/.pyenv
git clone git://github.com/yyuu/pyenv.git ~/.pyenv
echo ‘export PYENV_ROOT=”$HOME/.pyenv”’ >> ~/.bashrc
echo ‘export PATH=”$PYENV_ROOT/bin:$PATH”’ >> ~/.bashrc
echo ‘eval “$(pyenv init -)”’ >> ~/.bashrc
exec $SHELL -l
安装pyenv-virtualenv(可以不装,使用conda)
git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
echo ‘eval “$(pyenv virtualenv-init -)”’ >> ~/.bash_profile
exec $SHELL
从清华镜像源下载anaconda相应版本到~/.pyenv/cache
清华镜像:https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/
pyenv install anaconda3-4.2.0 #执行安装命令,对应python版本3.5
安装tensorflow
tensorflow不能在pyenv virturalenv创建的虚拟环境下安装
去官网下载tensorflow1.6版本的whl文件,去到该目录下pyenv切换到anaconda3-4.2.0然后运行
pip install –upgrade tensorflow_gpu-1.6.0-cp35-cp35m-manylinux1_x86_64.whl
发现报错
解决方案
pip install –ignore-installed –upgrade pip setuptools
pip install –upgrade tensorflow_gpu-1.6.0-cp35-cp35m-manylinux1_x86_64.whl
附上几个conda常用命令
conda env list 或 conda info -e 查看当前存在哪些虚拟环境
conda list 查看安装了哪些包
conda create -n your_env_name 创建虚拟环境
source activate your_env_name **虚拟环境
conda install -n your_env_name [package] 给虚拟环境安装包
conda remove -n your_env_name(虚拟环境名称) –all 删除虚拟环境
conda remove –name your_env_name package_name 删除虚拟环境中某个包
参考
1.CentOS7.0安装NVIDIA GTX1080Ti显卡驱动
https://blog.****.net/dechengtju/article/details/80146248
2.Ubuntu 16.04.4 配置 Nvidia显卡驱动 + CUDA 9.0 + cuDNN v7.0.5 + OpenCV 3.2.0
https://blog.****.net/pwb1994001/article/details/81119016
3.CentOS 7 下 Cuda & Tensorflow 环境搭建实践
https://ruizhang1993.github.io/2017/04/21/CentOS-7-%E4%B8%8B-Cuda-Tensorflow-%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA%E5%AE%9E%E8%B7%B5/
4.tensorflow anaconda : pip install fails in newly created python 2.7 environment
https://github.com/tensorflow/tensorflow/issues/3324