当前位置: 代码迷 >> 综合 >> ubuntu16.04+cuda8.0+cudnn6.0+python3.5+Tensorflow1.4_GPU
  详细解决方案

ubuntu16.04+cuda8.0+cudnn6.0+python3.5+Tensorflow1.4_GPU

热度:79   发布时间:2023-11-18 09:01:13.0

这近一个星期一直在搭建Ubuntu16.04下的tensorflow1.4-GPU环境,但网上的教程各有不同,始终有问题,今天可能碰巧搭建好了,就记录下流程。


我的硬件设备,CPU:I5-7500,RAM:8G,  GPU: NVIDIA 1050卡。


首先声明我装的是双系统,WIN10和Ubuntu16.04.在装Ubuntu时主要参考的是这篇博客


但安装过程中出了问题,安装时提示“机器以uefi模式启动了安装器,但是似乎已经存在使用bios兼容模式的系统。如果继续以uefi模式安装debian,可能非常难以重启进入其他bios模式的系统。如果希望以uefi模式安装且无意再启动现有的系统,此处有强惜制选项。如果要保持现有系统可启动,不要选择强制uefi安装”。后来在网上查了下,发现是我装win10时用的是兼容模式,虽然网上给出了一些办法,但后来果断重装了Win10,采用的是UEFI+GPT模式。参考的度娘。重装Win10后再装Ubuntu就没有问题了。

注意:Ubuntu在安装nividia驱动前要先将BIOS中的的Secure Boot设置为Disabled。

注意:Ubuntu在安装nividia驱动前要先将BIOS中的的Secure Boot设置为Disabled。

注意:Ubuntu在安装nividia驱动前要先将BIOS中的的Secure Boot设置为Disabled。


装完系统后更新的更新,删除的删除。接着就准备装Nvidia的驱动了。最开始直接通过软件更新中的附加驱动更新的,更新后无限登陆,无法进入系统。后来在网上看了看多教程,主要是通过以下几个步骤:

1.首先自己去NVIDIA官网根据自己的硬件设备下载


下载完后记得放在哪里。


2.禁用nouveau驱动,打开终端输入:

sudo gedit /etc/modprobe.d/blacklist.conf
在弹出的文本的最后加上下面两行代码:

blacklist nouveau
options nouveau modeset=0
保存退出后在终端输入:

sudo update-initramfs -u
重启电脑后,再打开终端,输入:

lsmod | grep nouveau
如果屏幕没有输出说明禁用nouveau成功。


3.准备安装nvidia驱动

安装前首先禁用X-Windows服务,输入如下指令:

sudo service lightdm stop
系统执行指令后,图形程序会关闭,请不要紧张,接着按Ctrl + Alt +F1进入命令行界面,输入用户名和密码即可。

首先通过指令cd 打开到你驱动程序所在目录。例如,我的驱动程序放在home下的software文件夹内,驱动被我重命名为nvidia-drive.run,我就输入以下代码:

打开驱动所在文件夹:

cd ./software
接着给驱动赋予执行权限:

sudo chmod +x nvidia-drive.run

开始驱动安装:(no-opengl-files表示不安装openGL)

sudo ./nvidia-drive.run -no-opengl-files
接着根据提示安装,一般不会有问题,如果有问题就去看看你 BIOS中的的Secure Boot设置为Disabled。

安装完后输入输入指令重启:

reboot

重启后进入系统检查是否装好:

nvidia-smi           # 列出GPU信息
nvidia-settings      # 若正常弹出对话框表示安装成功






安装完Nvidia驱动后去下载Cuda8和cudnn6



下载完后打开终端,cd 进入软件所在目录开始安装:

sudo sh ./cuda_8.0.61_375.26_linux.run
安装前会有很长一段话,直接按个q键结束,输入accept同意,之前安装过nvidia的驱动,这里询问是否安装驱动时选No,其他的按默认来就行。

安装完后声明环境变量,并写入~/.bashrc的尾部:

sudo gedit ~/.bashrc

export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

然后设置环境变量和动态链接库:

sudo gedit /etc/profile
在末尾加上:

export PATH=/usr/local/cuda/bin:$PATH

保存后,创建链接文件:

sudo gedit /etc/ld.so.conf.d/cuda.conf

在末尾添加:

/usr/local/cuda-8.0/lib64

然后执行指令,生效:

sudo ldconfig

接着cd进入NVIDIA_CUDA-8.0_Samples文件夹,测试cuda的Samples:

cd /home/wz/NVIDIA_CUDA-8.0_Samples
sudo make all -j4
cd ./bin/x86_64/linux/release
sudo ./deviceQuery

显示出一些GPU信息,Result = PASS说明通过。

装完cuda8.0后在装cudnn6

首先解压,解压后cd 进入/usr/local/cuda/lib64解压文件所在根目录:

sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/


接着cd进入lib64目录下删除旧软链接,创建新软链接

cd /usr/local/cuda/lib64
sudo rm -rf libcudnn.so libcudnn.so.6
sudo ln -s libcudnn.so.6.0.21 libcudnn.so.6
sudo ln -s libcudnn.so.6 libcudnn.so


至此Nvidia驱动,cuda8,cudnn6安装完成,最后重启下一下电脑


由于Ubuntu16.04自带有python2.7和python3.5两个版本故不许额外安装python,若需要安装anaconda可忽略此步骤。

Ubuntu16.04默认的是使用python2.7的版本,但我需要用python3.5故需要修改python2.7与3.5的优先级。打开终端输入:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150


若需改回默认的python2.7版本在终端输入下列指令:

sudo update-alternatives --config python



最后安装Tensorflow1.4——GPU版本

sudo pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/   https://mirrors.tuna.tsinghua.edu.cn/tensorflow/linux/gpu/tensorflow_gpu-1.4.1-cp35-cp35m-linux_x86_64.whl

若提示没有安装pip3,按照提示安装下pip3即可。


安装完后,进入python3.5,测试:




  相关解决方案