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.csdn.net/dechengtju/article/details/80146248
2.Ubuntu 16.04.4 配置 Nvidia顯示卡驅動 + CUDA 9.0 + cuDNN v7.0.5 + OpenCV 3.2.0
https://blog.csdn.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