Ubuntu16.04下TensorFlow-GPU安装记录(GTX1060显卡)
Ubuntu16.04下TensorFlow-GPU安装记录
- 1 确定电脑型号(重要的是显卡型号)
- 2 确定CUDA版本、ubuntu版本
- 3 Win10系统下安装Ubuntu组成双系统(简述过程)
- 3.1 Win10下分出一个40G以上的分区用来安装Ubuntu
- 3.2 制作Ubuntu16.04启动盘
- 3.3 安装Ubuntu16.04及遇到的问题
- 3.3.1 安装过程中界面卡死
- 3.3.2 安装时一定要分出一个/boot分区
- 3.4 Windows10下卸载ubuntu
- 4 清理环境 禁用nouveau
- 5 安装英伟达NVIDIA驱动
- 6 安装CUDA
- 6.1 如果有错误版本CUDA,卸载
- 6.2 下载CUDA,安装
- 6.2.1 下载
- 6.2.2 Base Installer安装包
- 6.2.2 Patch安装包
- 7 安装cuDNN
- 安装anaconda3
- pycharm的安装
- Windows下查看英伟达显卡对应的CUDA版本方法
参考:https://blog.csdn.net/weixin_42535742/article/details/89501857
参考:https://blog.csdn.net/qq_30490125/article/details/80784890
1 确定电脑型号(重要的是显卡型号)
电脑型号:微星(MSI)GL62VR 7RFX-848CN
系统:ubuntu16.04 64位
处理器:英特尔 Core i7-7700HQ
内存:16GB(8G+8G) (三星 DDR4 2400MHz)
显卡:英伟达Nvidia GeForce GTX 1060 6GB
windows下鲁大师结果如下:
2 确定CUDA版本、ubuntu版本
搭建TensorFlow的开发环境需要至少需要安装3个软件,分别为:1.python,2.CUDA和CuDNN,3.TensorFlow(GPU版)。安装前一定要确认好每个软件的版本是否相互支持。
安装Tensorflow,重要的一环是要安装对应的CUDA版本,我的电脑显卡是GTX1060,最高支持CUDA9.2,目前网上的版本大多都是基于CUDA9.0的,所以这里使用CUDA9.0,从下文看,这两个工具对Ubuntu16.04支持比较好,所以使用Ubuntu16.04(在这个坑中重装过好几次Ubuntu系统)。
CUDA9.0下载地址: https://developer.nvidia.com/cuda-90-download-archive
从这里可以发现CUDA9.0只有Ubuntu16.04和17.04的版本,为了后续更容易配置成功,只好选择16.04的系统。
cuDNN下载地址: https://developer.nvidia.com/cudnn
下载时需要注册英伟达账户。
cuDNN可以看到对Ubuntu16.04支持比较好,所以综合来说不要使用过新的Ubuntu18.04系统。
3 Win10系统下安装Ubuntu组成双系统(简述过程)
3.1 Win10下分出一个40G以上的分区用来安装Ubuntu
分区时可以从装系统的固态硬盘中分出来一个分区,这样Ubuntu安装在固态硬盘中运行比较快。
3.2 制作Ubuntu16.04启动盘
需要一个8GB以上优盘
3.3 安装Ubuntu16.04及遇到的问题
3.3.1 安装过程中界面卡死
安装过程中界面卡死是因为英伟达显卡过新,Ubuntu不支持的原因,参考网上教程把显卡先屏蔽掉,安装好系统后再重新安装英伟达显卡驱动。
3.3.2 安装时一定要分出一个/boot分区
详细原因见Windows10和Ubuntu双系统安装
3.4 Windows10下卸载ubuntu
如果安装的Ubuntu版本有问题,那么可以在Windows10下下载Ubuntu,第一步进入Windows10,设备管理器中删除Ubuntu的几个分区,这时候Ubuntu就从电脑删除了,但是这时候注意,因为电脑启动的时候加载的是Ubuntu加载启动项,删除了Ubuntu无法启动Windows10,这时候可以使用大白菜、老毛桃等工具进入PE,使用启动修复工具修复。然后就可以进入Ubuntu了。
4 清理环境 禁用nouveau
首先运行以下代码,看是否有输出。
lsmod | grep nouveau
如果终端中有输出,则证明该驱动正在运行,需要手动禁掉nouveau,如果有运行下面命令
sudo gedit /etc/modprobe.d/blacklist-nouveau.conf
在文本中加入以下代码:
blacklist nouveau
options nouveau modeset=0
执行下面语句进行更新
sudo update-initramfs -u
再执行下面语句查看nouveau禁用结果,没有信息输出说明禁用成功,仍有信息输出,重启即可。
lsmod | grep nouveau
5 安装英伟达NVIDIA驱动
输入一下命令看英伟达驱动版本,如果在前期解决安装时界面卡死问题的时候安装了英伟达驱动,此时系统运行的可能就是安装的英伟达驱动。
nvidia-smi
解决界面卡死的时候安装的驱动,版本384。
如果之前有不合适的英伟达驱动,需要删除驱动,安装新的驱动版本。
执行删除驱动命令:
sudo apt-get remove –purge nvidia
安装新的NVIDIA驱动,我安装的是384
sudo apt-get install nvidia-384
输入以下代码看是否安装成功
nvidia-smi
显示以上显卡信息,则安装成功,否则重启,再执行以上代码看是否成功。
6 安装CUDA
6.1 如果有错误版本CUDA,卸载
这里如果安装有错误版本的话,需要先卸载错误版本,版本一定要对应。
执行以下命令进入cuda安装文件夹,如果安装的是9.0,安装的其他版本号9.0改成其他的:
cd /usr/local/cuda-9.0/bin
执行一下命令卸载cuda
sudo ./uninstall_cuda_9.0.pl
sudo rm -rf /usr/local/cuda-9.0
6.2 下载CUDA,安装
6.2.1 下载
CUDA9.0下载地址: https://developer.nvidia.com/cuda-90-download-archive
可以下载多种版本的,这里我下载的是deb(local)版本,需要下载1个Base Installer和4个Patch包,也可以下载runfile版本,这时候用的命令是:sudo sh xxxxxx.run
。注意:过程中终端提示你安装英伟达驱动,选择no,因为之前装好了合适版本了。
在下载链接下边有具体的安装方法。
6.2.2 Base Installer安装包
sudo dpkg -i cuda-repo-ubuntu1604-9-0-local_9.0.176-1_amd64.deb
sudo apt-key add /var/cuda-repo-9-0-local/7fa2af80.pub
这两句话相当于在建立了一个可信任的本地仓库/var/cuda-repo-9-0-local
。
仓库包括:cuda的安装包,cuda的开发包,cuda的动态库,nvidia的安装包。。。
7fa2af80.pub
cuda_9.0.176-1_amd64.deb
cuda-9-0_9.0.176-1_amd64.deb
cuda-command-line-tools-9-0_9.0.176-1_amd64.deb
cuda-core-9-0_9.0.176-1_amd64.deb
cuda-cublas-9-0_9.0.176-1_amd64.deb
cuda-cublas-dev-9-0_9.0.176-1_amd64.deb
cuda-cudart-9-0_9.0.176-1_amd64.deb
cuda-cudart-dev-9-0_9.0.176-1_amd64.deb
cuda-cufft-9-0_9.0.176-1_amd64.deb
cuda-cufft-dev-9-0_9.0.176-1_amd64.deb
cuda-curand-9-0_9.0.176-1_amd64.deb
cuda-curand-dev-9-0_9.0.176-1_amd64.deb
cuda-cusolver-9-0_9.0.176-1_amd64.deb
cuda-cusolver-dev-9-0_9.0.176-1_amd64.deb
cuda-cusparse-9-0_9.0.176-1_amd64.deb
cuda-cusparse-dev-9-0_9.0.176-1_amd64.deb
cuda-demo-suite-9-0_9.0.176-1_amd64.deb
cuda-documentation-9-0_9.0.176-1_amd64.deb
cuda-driver-dev-9-0_9.0.176-1_amd64.deb
cuda-drivers_384.81-1_amd64.deb
cuda-gdb-src-9-0_9.0.176-1_amd64.deb
cuda-libraries-9-0_9.0.176-1_amd64.deb
cuda-libraries-dev-9-0_9.0.176-1_amd64.deb
cuda-license-9-0_9.0.176-1_amd64.deb
cuda-minimal-build-9-0_9.0.176-1_amd64.deb
cuda-misc-headers-9-0_9.0.176-1_amd64.deb
cuda-npp-9-0_9.0.176-1_amd64.deb
cuda-npp-dev-9-0_9.0.176-1_amd64.deb
cuda-nvgraph-9-0_9.0.176-1_amd64.deb
cuda-nvgraph-dev-9-0_9.0.176-1_amd64.deb
cuda-nvml-dev-9-0_9.0.176-1_amd64.deb
cuda-nvrtc-9-0_9.0.176-1_amd64.deb
cuda-nvrtc-dev-9-0_9.0.176-1_amd64.deb
cuda-runtime-9-0_9.0.176-1_amd64.deb
cuda-samples-9-0_9.0.176-1_amd64.deb
cuda-toolkit-9-0_9.0.176-1_amd64.deb
cuda-visual-tools-9-0_9.0.176-1_amd64.deb
libcuda1-367_384.81-0ubuntu1_amd64.deb
libcuda1-384_384.81-0ubuntu1_amd64.deb
libxnvctrl0_384.81-0ubuntu1_amd64.deb
libxnvctrl-dev_384.81-0ubuntu1_amd64.deb
nvidia-367_384.81-0ubuntu1_amd64.deb
nvidia-367-dev_384.81-0ubuntu1_amd64.deb
nvidia-384_384.81-0ubuntu1_amd64.deb
nvidia-384-dev_384.81-0ubuntu1_amd64.deb
nvidia-libopencl1-367_384.81-0ubuntu1_amd64.deb
nvidia-libopencl1-384_384.81-0ubuntu1_amd64.deb
nvidia-modprobe_384.81-0ubuntu1_amd64.deb
nvidia-opencl-icd-367_384.81-0ubuntu1_amd64.deb
nvidia-opencl-icd-384_384.81-0ubuntu1_amd64.deb
nvidia-settings_384.81-0ubuntu1_amd64.deb
最后一句才是安装的命令。Attention,如果你有多版本的本地仓库,比如我:
cuda-repo-9-0-local
cuda-repo-9-2-localap
所以正确的安装方式变成了:
sudo apt-get install cuda-9.0
从官方文档中可以看到,提示安装cuda-libraries-9-0。注意,这种方式实际上并没有完成安装,
你会发现/usr/local/cuda没有被建立(这个目录下包含了一部分的头文件和动态库)
一共分为4步,第一步,进入文件目录,执行:
sudo dpkg -i cuda-repo-ubuntu1604-9-0-local_9.0.176-1_amd64.deb
第二步,在第一步执行完后,终端有提示,提示的命令和网页内的第二步相同,执行:
sudo apt-key add /var/cuda-repo-<version>/7fa2af80.pub
执行后,终端显示OK。
第三步,执行:
sudo apt-get update
第四步,执行:
sudo apt-get install cuda
这里提示需要安装很多个包,需要约为2GB的空间。
输入y,回车确定,等待设置完成。
6.2.2 Patch安装包
sudo dpkg -i cuda-repo-ubuntu1604-9-0-local-cublas-performance-update_1.0-1_amd64.deb cuda-repo-ubuntu1604-9-0-local-cublas-performance-update-2_1.0-1_amd64.deb cuda-repo-ubuntu1604-9-0-local-cublas-performance-update-3_1.0-1_amd64.deb cuda-repo-ubuntu1604-9-0-176-local-patch-4_1.0-1_amd64.deb
一次性把4个Patch包安装上。
这种方式也会在本地建立4个仓库,建议在本地仓库全部安装完成后再进行cuda的安装。
这时/usr/local/cuda
中已经有文件了。
这时候应该添加环境变量:
#打开该文件配置环境变量
sudo gedit ~/.bashrc
#在文件中写入以下环境变量:
export CUDA_HOME=/usr/local/cuda
export PATH=$PATH:$CUDA_HOME/bin
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
# 保存后执行以下命令立即生效
source ~/.bashrc
查看CUDA版本
nvcc -V
如果没有添加环境变量就显示以下结果:
提示执行:
sudo apt install nvidia-cuda-toolkit
在这里应该不要执行上条命令,感觉问题时在安装CUDA完没有设置好环境变量,另外如果安装过程中提示你安装旧版本的英伟达驱动,那么选择no,因为最开始已经安装好了适合的英伟达新版本驱动了。
如果执行了sudo apt install nvidia-cuda-toolkit
,此时提示需要大概1GB的空间,后面执行后发现使用nvcc --version
显示版本号的7.0,应该是这句话自动从清华源下载了老版本的CUDA并进行了安装。
输入y,回车确定。
安装完成后,再次执行命令。
7 安装cuDNN
cuDNN下载地址: https://developer.nvidia.com/cudnn
下载时需要注册英伟达账户。
cuDNN可以看到对Ubuntu16.04支持比较好,所以综合来说不要使用过新的Ubuntu18.04系统。
这个直接参考官方文档:https://developer.nvidia.com/rdp/cudnn-download
里面的Installation Guide:https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html#install-linux
$ tar -xzvf cudnn-9.0-linux-x64-v7.tgz # 解压压缩包,也可以直接使用右键,提取到此处进行解压$ sudo cp cuda/include/cudnn.h /usr/local/cuda/include
$ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
$ sudo chmod a+r /usr/local/cuda/include/cudnn.h
/usr/local/cuda/lib64/libcudnn*
在这里插入代码片
验证CUDA安装
nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2015 NVIDIA Corporation
Built on Tue_Aug_11_14:27:32_CDT_2015
Cuda compilation tools, release 7.5, V7.5.17
这里的软件版本有问题,需要后续解决。
安装anaconda3
下载anaconda3
进入目录
sudo bash Anaconda3-xxxxxx.sh
安装后执行
sudo gedit ~/.bashrc
打开该文件,最后可看到
# added by Anaconda3 installer
export PATH="/home/ubuntu/anaconda3/bin:$PATH"
两行文字,说明环境变量一定添加上了,退出该文件后,执行:
source ~/.bashrc
让环境变量生效。
此时检查anaconda3安装是否安装成功:conda --version
或conda -V
检查目前的安装环境:conda info --envs
在没有虚拟出新的环境之前,只有一个base环境在/home/ubuntu/anaconda3
路径下。
检查目前有哪些版本的python可以安装:conda search --full-name python
一般能够显示出从python2到python3很多版本。
选择一个python版本安装(这里选择python3.6版本):conda create --name tensorflow-gpu python=3.6
联网检测需要下载的安装的包,输入y后进行联网下载安装。
安装后终端会提示激活该虚拟环境和退出该环境的方法。
#
# To activate this environment, use:
# > source activate tensorflow-gpu
#
# To deactivate an active environment, use:
# > source deactivate
#
终端中使用
source activate tensorflow-gpu
进入tensorflow-gpu虚拟环境,这时如果使用pip list
查看虚拟环境中的包数量,只有少数几个。
安装tensorflow-gpu==1.8.0版本。
pip install tensorflow-gpu==1.8.0
需要权限的话也可以使用:
sudo pip install tensorflow-gpu==1.8.0
运行Python程序,可在终端中,也可在pycharm中运行:
import tensorflow as tf
hello = tf.constant("Hello, TensorFlow!")
sess = tf.Session()
print(sess.run(hello))
cuDNN出现问题:
Python 3.6.5 |Anaconda, Inc.| (default, Apr 29 2018, 16:14:56)
[GCC 7.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
Traceback (most recent call last):File "/home/ubuntu/.conda/envs/tensorflow-gpu-1.4.1/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow.py", line 58, in <module>from tensorflow.python.pywrap_tensorflow_internal import *File "/home/ubuntu/.conda/envs/tensorflow-gpu-1.4.1/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>_pywrap_tensorflow_internal = swig_import_helper()File "/home/ubuntu/.conda/envs/tensorflow-gpu-1.4.1/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)File "/home/ubuntu/.conda/envs/tensorflow-gpu-1.4.1/lib/python3.6/imp.py", line 243, in load_modulereturn load_dynamic(name, filename, file)File "/home/ubuntu/.conda/envs/tensorflow-gpu-1.4.1/lib/python3.6/imp.py", line 343, in load_dynamicreturn _load(spec)
ImportError: libcublas.so.8.0: cannot open shared object file: No such file or directoryDuring handling of the above exception, another exception occurred:Traceback (most recent call last):File "<stdin>", line 1, in <module>File "/home/ubuntu/.conda/envs/tensorflow-gpu-1.4.1/lib/python3.6/site-packages/tensorflow/__init__.py", line 24, in <module>from tensorflow.python import *File "/home/ubuntu/.conda/envs/tensorflow-gpu-1.4.1/lib/python3.6/site-packages/tensorflow/python/__init__.py", line 49, in <module>from tensorflow.python import pywrap_tensorflowFile "/home/ubuntu/.conda/envs/tensorflow-gpu-1.4.1/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow.py", line 72, in <module>raise ImportError(msg)
ImportError: Traceback (most recent call last):File "/home/ubuntu/.conda/envs/tensorflow-gpu-1.4.1/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow.py", line 58, in <module>from tensorflow.python.pywrap_tensorflow_internal import *File "/home/ubuntu/.conda/envs/tensorflow-gpu-1.4.1/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>_pywrap_tensorflow_internal = swig_import_helper()File "/home/ubuntu/.conda/envs/tensorflow-gpu-1.4.1/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)File "/home/ubuntu/.conda/envs/tensorflow-gpu-1.4.1/lib/python3.6/imp.py", line 243, in load_modulereturn load_dynamic(name, filename, file)File "/home/ubuntu/.conda/envs/tensorflow-gpu-1.4.1/lib/python3.6/imp.py", line 343, in load_dynamicreturn _load(spec)
ImportError: libcublas.so.8.0: cannot open shared object file: No such file or directoryFailed to load the native TensorFlow runtime.See https://www.tensorflow.org/install/install_sources#common_installation_problemsfor some common reasons and solutions. Include the entire stack trace
above this error message when asking for help.
解决办法见:http://www.bubuko.com/infodetail-2325869.html
16 #======更新软连接======
17 cd /usr/local/cuda/lib64/
18 sudo rm -rf libcudnn.so libcudnn.so.7 #删除原有动态文件,版本号注意变化,可在cudnn的lib64文件夹中查看
19 sudo ln -s libcudnn.so.9.0.176 libcudnn.so.7 #生成软衔接(注意这里要和自己下载的cudnn版本对应,可以在/usr/local/cuda/lib64下查看自己libcudnn的版本)我的是9.0.176,使用命令:nvcc --version查看
20 sudo ln -s libcudnn.so.7 libcudnn.so #生成软链接
21 sudo ldconfig -v #立刻生效
这时候python的程序能够正确运行了,在后期的工作中,只需要使用conda命令虚拟出多个环境,分别配置每个环境下需要的包即可,使用pycharm来修改解释器路径来应用不同的conda虚拟环境。
pycharm的安装
Windows下查看英伟达显卡对应的CUDA版本方法
Windows下打开英伟达控制面板
查看显卡支持的CUDA版本,GTX1060支持最高支持CUDA 9.2,所以一定不要使用最新的CUDA10的版本。
Ubuntu16.04下TensorFlow-GPU安装记录(GTX1060显卡)相关推荐
- Ubuntu 20.04 安装Tensorflow GPU版本 (GTX-1060显卡)
Ubuntu 20.04 安装Tensorflow GPU版本 (GTX-1060显卡) 参考: https://cyfeng.science/2020/05/02/ubuntu-install-nv ...
- ubuntu16.04下源码安装arachni扫描器
前段时候看一个对各开源扫描器的评测,arachni在综合评价上胜出.最近正好想研究一下arachni的源码,那就在ubuntu下先把玩一下.其实之前在kali和ubuntu下源码安装都失败了,这次算是 ...
- 双路1080Ti主机ubuntu16.04.3+nivdia小白安装记录
硬件: 配置:i7 8700k+技嘉Z370 HD3P主板+双路1080Ti+SSD 注意阅读主板说明书,这块主板安装的时候,应该把SSD安装到靠近CPU的口,否则会占掉第二块卡的带宽,造成第二块10 ...
- Ubuntu16.04下的Opencv安装与使用
目录 一.ubantu16.04安装opencv-3.4.1 二.编写一个打开图片进行特效显示的代码 test1.cpp 三.练习使用opencv库编写打开摄像头压缩视频的程序. 1).虚拟机获取主机 ...
- Ubuntu16.04下tensorflow安装
博文地址:https://blog.csdn.net/wizen641372472/article/details/72675549
- Ubuntu16.04 下 Python3 虚拟环境安装 OpenCV
wg_shun 2018-10-25 19:18:53 6400 收藏 20 分类专栏: 环境搭建 文章标签: Ubuntu python3 opencv 版权 前言 转载自:https://blo ...
- questasim linux安装包,Ubuntu16.04下Questasim10.7安装(64bit)全攻略
第二步:Crack (1) 将sfk.MentorKG.exe文件复制到 /usr/local/games/questasim/[安装目录]下 cp sfk /usr/local/games/ques ...
- ubuntu16.04下FSA-Net环境安装和训练
代码下载 下载代码, 可以使用码云下载代码 git clone FSA-Net: [CVPR19] FSA-Net: Learning Fine-Grained Structure Aggregati ...
- Ubuntu16.04下codeblocks16.01安装,适用于不同的架构
1.安装编译环境,C库.C++库和Boost库装好 sudo apt-get install build-essential //有可能安装 build-essential 后gdb就已经安装过了 ...
最新文章
- 【2019/4/30】周进度报告
- ACM入门之【哈希】
- 机器学习中的数学--数学知识复习
- protobuf2和3同时安装_安装protobuf可能遇到的问题
- JavaScript-在当前显示区范围内实现点不到的小方块
- DWM1000 收发RXLED TXLED控制代码修改
- 微软模拟飞行2020服务器多少内存,《微软模拟飞行2020》到底有多大?我们的硬盘装得下吗?...
- 三种方法帮你恢复删除的文件
- 在邮箱中用html写邮件
- 以太坊区块链中的数据结构
- Bailian-1的个数
- 卖衣服有什么引流产品?微商卖衣服引流推广?
- 用word2003打开.docx文件
- F. Equalize the Array
- Python基础之列表(list)操作
- python音频处理库librosa基本操作
- 谐振电路及品质因数(三)
- button按钮居中
- 汇编语言——用DOSBox的debug查看CPU和内存 用机器指令和汇编指令编程
- 计算机网络实验感想6,计算机网络实验项目六
热门文章
- Unity3D制作3dRPG游戏——主角移动控制实现
- eclipse中配置文件中文乱码问题解决
- 关于微信公众号搭建H5网页时 网页授权域名配置问题
- JS逆向-PDD商家后台-手机号
- js高德地图 地理位置转经纬度 生成地图
- java emptyqueueexception,阅读以下说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。说明 类Queue表示队列,类中的 - 赏学吧...
- JavaWeb:网上书店的案例
- 数字城市的建设有哪些意义?如何构建数字城市?
- IFTTT使用测试教程
- 【Python开发小游戏】安装 pygame