深度学习服务器环境搭建(nvidia-410.72 + cuda-9.0 + tensorflow_gpu-1.12)

系统环境:centos7.4

内核版本:3.10.0-862.14.4.el7.x86_64

本教程安装nvidia驱动过程中需要linux内核源码编译驱动,第一次安装时机器预装内核版本是3.10.0-693.el7.x86_64,但由于linux内核源码官网没有找到3.10.0-693.el7.x86_64版本的源码,故升级内核至3.10.0-862.14.4.el7.x86_64,若当前内核高于此版本,则在编译过程中需下载对应版本内核源码至/usr/src/kernels目录

软件包准备(下载下列软件包到指定目录,如root用户根目录):

1、  NVIDIA-Linux-x86_64-410.72.run

下载地址:http://cn.download.nvidia.com/tesla/410.72/NVIDIA-Linux-x86_64-410.72.run

2、  cuda-repo-rhel7-9-0-local-9.0.176-1.x86_64.rpm

下载地址:https://developer.nvidia.com/cuda-90-download-archive

深度学习服务器环境搭建(nvidia-410.72 + cuda-9.0 + tensorflow_gpu-1.12)_第1张图片


深度学习服务器环境搭建(nvidia-410.72 + cuda-9.0 + tensorflow_gpu-1.12)_第2张图片

3、  cudnn-9.0-linux-x64-v7.4.1.5.tgz(需下载与上面cuda9.0相对应的版本)

下载地址:https://developer.nvidia.com/rdp/cudnn-download(需先注册账号并登陆)

4、  tensorflow_gpu-1.12.0-cp27-none-linux_x86_64.whl

下载地址:https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.12.0-cp27-none-linux_x86_64.whl

5、  kernel-3.10.0-862.14.4.el7.x86_64.rpm

下载地址:http://ftp.scientificlinux.org/linux/scientific/7.0/x86_64/updates/security/kernel-3.10.0-693.el7.x86_64.rpm

开始安装

yum安装epel、aliyun、elrepo源

yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

yum -y install epel-release

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm

安装gcc、gcc-c++编译器

yum –y install gcc

yum -y install gcc-c++

禁用nouveau驱动

1、编辑/etc/default/grub

添加rd.driver.blacklist=nouveau nouveau.modeset=0到GRUB_CMDLINE_LINUX后面

2、grub2-mkconfig -o /boot/grub2/grub.cfg 生成新的grub配置

3、编辑/etc/modprobe.d/blacklist.conf(如果不存在则创建)

添加blacklist nouveau

升级linux内核(若已经是3.10.0-862.14.4.el7.x86_64版本, 则忽略此步骤)

1、切换至root用户根目录,安装新内核

yum -y install kernel-3.10.0-862.14.4.el7.x86_64.rpm

2、重启系统:reboot

3、待系统重启后执行lsmod | grep nouveau,若无输出,则说明nouveau已成功被禁用

4、uname -r检查当前运行内核版本与/usr/src/kernels目录下的kernel源码版本是否一致(若不一致,则后面nvidia驱动不能成功安装)

安装tensorflow_gpu

先安装并更新pip以及numpy, jinja2等依赖库

yum -y install python-pip

pip install --upgrade pip

pip install numpy

pip install jinja2

pip install --upgrade dnspython 

pip install --ignore-installed enum34

pip install tensorflow_gpu-1.12.0-cp27-none-linux_x86_64.whl

安装cuda9.0

rpm -i cuda-repo-rhel7-9-0-local-9.0.176-1.x86_64.rpm

yum clean all

yum -y install cuda

cuda默认安装路径:/usr/local/cuda

设置cuda环境变量

vi /etc/profile

添加以下内容到文件末尾

export CUDA_HOME=/usr/local/cuda

export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$CUDA_HOME/extras/CUPTI/lib64:$LD_LIBRARY_PATH

export PATH=$CUDA_HOME/bin:$PATH

安装cudnn依赖库

tar zxvf cudnn-9.0-linux-x64-v7.4.1.5.tgz

cp ./cuda/include/cudnn.h /usr/local/cuda/include

cp ./cuda/lib64/libcudnn.so.7.4.1 /usr/local/cuda/lib64

cp ./cuda/lib64/libcudnn_static.a /usr/local/cuda/lib64

cd /usr/local/cuda/lib64

ln -s libcudnn.so.7.4.1 libcudnn.so.7

ln -s libcudnn.so.7 libcudnn.so

安装完可打开python shell

import tensorflow as tf

若不报错则说明tensorflow和cuda安装成功

深度学习服务器环境搭建(nvidia-410.72 + cuda-9.0 + tensorflow_gpu-1.12)_第3张图片

安装nvidia驱动

切换至root用户根目录,安装nvidia驱动

./NVIDIA-Linux-x86_64-410.72.run --kernel-source-path=/usr/src/kernels/3.10.0-862.14.4.el7.x86_64 -k $(uname -r)

深度学习服务器环境搭建(nvidia-410.72 + cuda-9.0 + tensorflow_gpu-1.12)_第4张图片


深度学习服务器环境搭建(nvidia-410.72 + cuda-9.0 + tensorflow_gpu-1.12)_第5张图片


深度学习服务器环境搭建(nvidia-410.72 + cuda-9.0 + tensorflow_gpu-1.12)_第6张图片


深度学习服务器环境搭建(nvidia-410.72 + cuda-9.0 + tensorflow_gpu-1.12)_第7张图片


深度学习服务器环境搭建(nvidia-410.72 + cuda-9.0 + tensorflow_gpu-1.12)_第8张图片

安装过程第一步选No,其余选Yes或Ok

安装完成后执行nvidia-smi

若输出信息如下图,则说明nvidia驱动成功安装

深度学习服务器环境搭建(nvidia-410.72 + cuda-9.0 + tensorflow_gpu-1.12)_第9张图片

你可能感兴趣的:(深度学习服务器环境搭建(nvidia-410.72 + cuda-9.0 + tensorflow_gpu-1.12))