一、前期准备
1. 下载以下文件(地址自行百度,以下列出的是本文使用的版本):
仅提前下载①-③即可,④-⑥可直接在线安装,此处列出是为了方便查看版本。
①NVIDIA显卡驱动:NVIDIA-Linux-x86_64-390.48.run
②CUDA:cuda_9.0.176_384.81_linux.run
③cuDNN:cudnn-9.0-linux-x64-v7.1.tgz
④python:3.5
⑤GCC/G++:5.4.0
⑥tensorflow-gpu:1.8
2. 更新源:
我的系统是新装的,自带的源速度很慢,所以需要换一下源,不需要更新源的话可跳过此步。我目前使用的是网易源,具体更换操作如下:
注意以下打开的文件都是sources.list,不是source.list
①先备份已有源:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.old
②打开sources.list文件:
sudo gedit /etc/apt/sources.list
③将新的源复制进去:
这里提供一下我正在使用的网易源,若想使用其他源,请自行百度。
deb http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiverse
④执行更新命令:
sudo apt-get update
3. GCC/G++设置为5.4.0:
CUDA的编译环境为5.4.0,Ubuntu自带了5.3.0和5.4.0,貌似默认是5.3.0,因此需要修改GCC/G++的默认设置。
①当前GCC/G++版本,若为5.4.0则跳过此步骤:
gcc -v g++ -v 或 gcc --version g++ --version
②查看是否存在gcc5.4.0:
ls /usr/bin/gcc*
如果存在gcc-5,则继续;否则执行以下命令安装gcc5.4.0:
sudo apt-get install gcc-5 g++-5
③删除usr/bin/目录下默认的GCC/G++ link文件,并给系统默认的GCC/G++编译器建立新的链接:
sudo rm /usr/bin/gcc sudo rm /usr/bin/g++ sudo ln -s /usr/bin/gcc-5 /usr/bin/gcc sudo ln -s /usr/bin/g++-5 /usr/bin/g++
④再次检查GCC/G++版本,应均已更新为5.4.0。
4. 切换默认python版本:
ubuntu自带了python2和python3,但初始默认是python2,需要切换为python3。
①查看python版本,若版本为3.5,则跳过此步。否则执行②:
②查看是否存在python3.5:
cd /usr/local/lib ls
如果存在python3.5(或python3),继续;否则,执行如下命令安装python3.5:
sudo apt-get install python3
③删除usr/bin/目录下默认的Python link文件,并给系统默认的Python编译器建立新的链接:
sudo rm /usr/bin/python sudo ln -s /usr/bin/python3.5 /usr/bin/python
④再次检查python版本,应已更新为python3.5.
二、为GTX1080ti安装显卡驱动(NVIDIA-Linux-x86_64-390.48.run)
参考连接:
https://blog.csdn.net/weixin_41864878/article/details/79621210
https://blog.csdn.net/wangsidadehao/article/details/70255754
1. 查看并确认已成功下载相应驱动程序
2. 打开终端,先卸载一下已安装的显卡驱动:
sudo apt-get --purge remove nvidia-*
3. 禁nouveau(原因查看如上链接):
①打开blacklist:
sudo gedit /etc/modprobe.d/blacklist.conf
②在最后添加如下内容:
blacklist vga16fb blacklist nouveau blacklist rivafb blacklist nvidiafb blacklist rivatv
③在终端尝试一下:
lsmod | grep nouveau
4. 开始安装驱动
①按Ctrl+Alt+F1进入进入tt1(再按 Ctrl + Alt + F7可回到登陆界面),输入用户名和密码进行登录。
②关闭Ubuntu的Unity,关闭后按 Ctrl + Alt + F7无法回到登陆界面(若需要回到登录界面,将如下命令中的stop换为start即可):
sudo service lightdm stop
③进入放置显卡驱动安装文件的文件夹,并将其设置为可执行程序,并执行:
cd download sudo chmod a+x NVIDIA-Linux-x86_64-375.39.run ./NVIDIA-Linux-x86_64-375.39.run –no-x-check –no-nouveau-check –no-opengl-files
The distribution-provided pre-install script failed! Are you sure you want to continue?
不用管他,继续安装
Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up
选择No
⑤安装完成,进行如下检查:
在/usr/share/applications/NVIDIA X Server Settings可里面看到GPU配置; 或执行命令 nvidia-smi
三、安装CUDA9.0
参考链接:
https://blog.csdn.net/weixin_41864878/article/details/79621210
https://blog.csdn.net/zafir_410/article/details/73188228?utm_source=itdadao&utm_medium=referral
1. 查看并确认已成功下载CUDA安装文件。
2. 进入放置CUDA安装文件的文件夹,并将其设置为可执行程序,并执行:
cd download sudo sh cuda_9.0.176_384.81_linux.run
先通过按回车键阅读一些说明,一直到最后出现“Do you accept the previously read EULA?”。
安装过程中会有一些选择项,如下:
Do you accept the previously read EULA? accept/decline/quit:
accept
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 367.48? (y)es/(n)o/(q)uit:
n #注意这里必须选n,不然会覆盖之前安装的显卡驱动!!!
Install the CUDA 8.0 Toolkit? (y)es/(n)o/(q)uit:
y
Enter Toolkit Location [ default is /usr/local/cuda-8.0 ]:
默认则直接回车
Do you want to install a symbolic link at /usr/local/cuda? (y)es/(n)o/(q)uit:
y
Install the CUDA 8.0 Samples? (y)es/(n)o/(q)uit:
y
Enter CUDA Samples Location [ default is /home/c302 ]:默认则直接回车
最后完成安装,重启。即使会出现警告如“版本至少为384……”,也是安装成功。
3. 配置环境变量:
①打开:
sudo gedit ~/.bashrc
在末尾添加如下内容:
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}} export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} export CUDA_HOME=/usr/local/cuda
②使新环境变量立即生效:
source ~/.bashrc
③验证以下是否配置成功:
echo $CUDA_HOME /usr/local/cuda echo $LD_LIBRARY_PATH /usr/local/cuda/lib64
四、安装cuDNN
1. 查看并确认已成功下载cuDNN文件。
2. 在usr/local/cuda-9.0新建一个空文件夹用于存储cudnn文件:
cd usr/local/cuda-9.0 mkdir cuda
第三部分安装cuda时选择了默认安装路径,如果你安装cuda时定义了安装路径,则需要去相应的路径下进行设置。
3. 进入放置cuDNN文件的文件夹,解压cuDNN压缩包,并将解压得到cuda文件下的全部文件复制到usr/local/cuda-9.0:
sudo cp cuda/include/cudnn.h /usr/local/cuda-9.0/include sudo cp cuda/lib64/libcudnn* /usr/local/cuda-9.0/lib64 sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda-9.0/lib64/libcudnn*
4. 进入相应文件夹,检查一下是否全部复制成功。
五、安装tensorflow
1. 查看并确认python版本为3.5。
2. 安装tensorlfow-gpu。可离线自己编译tensorflow,这样的方式可以更好的利用计算机硬件,但过程比较麻烦。我这里急需使用tensorflow,因此直接在线安装。
①如果之前安装过tensorflow,需要先卸载一下:
sudo pip uninstall tensorflow
②安装tensorflow-gpu
sudo pip install tensorflow-gpu
六、配置python常用包:
参考链接:
https://blog.csdn.net/Yakumoyukarilan/article/details/51340358
推荐使用pip安装(我在安装过程中用apt-get install安装后,均安装成功,但是import的时候还是无法找到)。
1. 安装pip(最好使用sudo apt-get update命令更新一下):
sudo apt-get install python-pip
如果安装未成功,则需要执行以下操作:
sudo apt-get install aptitude sudo aptitude install python-dev
再次尝试安装pip即可安装成功,安装成功后可输入命令:pip,确认已安装成功。
2. 用pip安装用于数值计算和绘图的包 分别是numpy scipy matplotlib pandas:
sudo pip install numpy sudo pip install scipy sudo pip install matplotlib sudo pip install pandas sudo pip install scikit-learn
安装过程中下载速度很慢,又是会报“The read operation timed out……”错误,可通过设置pip的默认超时时间成功:
sudo pip --default-timeout=100 install -U numpy sudo pip --default-timeout=100 install -U scipy sudo pip --default-timeout=100 install -U matplotlib sudo pip --default-timeout=100 install -U pandas sudo pip --default-timeout=100 install -U scikit-learn