在笔记本电脑上配置TensorFlow-GPU开发环境

笔记本电脑参数

CPU:i7-5500u 2.4GHz 双核心/四线程
GPU:NVIDIA GeForce 940M,1G独显(GDDR3,64位)
内存:16G(8G*2)
硬盘:500G机械硬盘+128G固态硬盘

安装前准备

1. 制作U盘启动盘

1)进入http://isoredirect.centos.org/centos/7/isos/x86_64/,选择合适的镜像地址,下载CentOS-7-x86_64-Minimal-1804.iso,最小安装版

2)下载UltraISO,依据http://www.upantool.com/jiaocheng/boot/4221.html,找一个空白的U盘制作U盘启动盘

2. bios设置

启动笔记本,在显示器中出现logo时连按F12,即可进入bios,用tab或上下左右切换选项卡,把OS Optimized Defaults设置为Disabled,Secure Boot设置为Disabled,同时把Boot Mode改为UEFI only,完成bios设置之后,按F10保存并重新启动

安装Cento7.5系统

1)把制作好的U盘启动盘连接至电脑,重启电脑后在显示器中出现logo的时候按下F12进入bios,选择USB HDD,回车即进入U盘启动

2)看到下图所示的画面后,通过上下键选择install centos 7,然后根据提示按e或者tab键,修改出现的命令为vmlinuz initrd=initrd.img inst.stage2=hd:/dev/sdc quiet(我有两个硬盘所以U盘显示为sdc,如果你的电脑只有一块硬盘,则U盘路径应该是sdb)

在笔记本电脑上配置TensorFlow-GPU开发环境_第1张图片
image.png

3)第二步修改完之后回车,就可以进入centos7的图形化安装界面了,接下来按照提示安装即可。具体过程可以参考 https://www.linuxidc.com/Linux/2017-04/143013.htm

安装NVIDIA驱动、cuda和cudnn

1. 禁用nouveau

这是一般linxu系统自带的显卡驱动,和nvidia冲突,所以必须要关掉,具体过程是

1)将 nouveau 驱动加入黑名单:

创建/etc/modprobe.d/blacklist-nouveau.conf(这种方式仅限在centos 7,其他Linux 系统查看NVIDIA官方文档https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#runfile-nouveau),写入如下内容:

blacklist nouveau
options nouveau modeset=0

2)备份 initramfs 文件

mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak

然后执行以下命令

sudo dracut --force

3)关机重启。

2. 安装显卡检测程序
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
yum install nvidia-detect

检测需要的显卡驱动:

nvidia-detect

运行结果kmod-nvidia

3. 安装基础包
yum install kernel-devel kernel-doc kernel-headers gcc\* glibc\*  glibc-\*
4. 安装刚才检测到的驱动
yum install kmod-nvidia

然后查看显卡(命令:nvidia-smi)使用情况。
在安装过程中,如果出现以下报错,

The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are  installed and set up correctly.
If you know that the kernel source packages are installed and set up correctly, you may pass the location of thekernel source with the '--kernel-source-path' flag.

就安装两个包:

yum install epel-release
yum install --enablerepo=epel dkms
5. 安装cuda

进入CUDA9.0的下载页(https://developer.nvidia.com/cuda-toolkit-archive),选择安装类型为runfile(local),可发现有一个基础安装包,和4个补丁包,都下载下来,然后依次执行:

sh cuda_9.0.176_384.81_linux.run
sh cuda_9.0.176.1_linux.run
sh cuda_9.0.176.2_linux.run
sh cuda_9.0.176.3_linux.run
sh cuda_9.0.176.4_linux.run

结束后,可以在/usr/local/cuda-9.0 发现有安装文件,在/etc/profile或~/.bashrc的文件后面添加环境变量:

export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
6. 安装cudnn

进入cuDNN下载页(https://developer.nvidia.com/rdp/cudnn-archive),选择 cuDNN v7.0.5 Library for Linux 下载。注意cuDNN下载前需要注册登录。

下载的是cudnn-9.0-linux-x64-v7.solitairetheme8压缩包,直接改后缀为tgz,再解压:

cp cudnn-9.0-linux-x64-v7.solitairetheme8 cudnn-9.0-linux-x64-v7.tgz
tar -xzvf cudnn-9.0-linux-x64-v7.tgz

进入解压目录,执行:

cp cuda/include/cudnn.h /usr/local/cuda/include
cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

至此,nvidia驱动、cuda、cudnn安装完成。

安装python3.5.2和TensorFlow-GPU

1. 安装python3.5.2

1)安装两个依赖包

yum install zlib-devel openssl-devel

2)下载安装Python3.5.2

wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz
解压:tar -zxvf Python-3.5.2.tgz
进入解压目录: cd Python-3.5.2
创建安装目录: mkdir /usr/local/python3.5.2
编译: ./configure --prefix=/usr/local/python3.5.2
安装: make && make install
备份原有python:mv /usr/bin/python /usr/bin/python2.7.5
创建软连接:ln -s /usr/local/python3.5.2/bin/python3.5 /usr/bin/python

3)修改yum配置文件
vi /usr/bin/yum,把文件头部改成!/usr/bin/python2.7.5,保存退出
vi /usr/libexec/urlgrabber-ext-down,头部修改如上,保存退出。
4)创建pip软连接

ln -s /usr/local/python3.5.2/bin/pip3  /usr/bin/pip
2. 安装tensorflow-gpu 1.10.0

直接通过pip命令安装:

pip install tensorflow-gpu==1.10.0

等待安装完成即可。至此,所有安装配置完成。

参考文章

https://www.linuxidc.com/Linux/2017-04/143013.htm
https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#runfile-nouveau
https://www.cnblogs.com/hutao722/p/9342577.html
https://www.cnblogs.com/rwxwsblog/p/5710211.html

你可能感兴趣的:(在笔记本电脑上配置TensorFlow-GPU开发环境)