ubuntu18.04+CUDA10.0+cuDNN+Tensorflow配置全解

作为深度学习的入门刚需,配置了主机若干,每次都要各种找攻略,终于下定决心写个完整的了T T

硬件参考

  • RTX2070(显卡什么的无所谓,根据你的预算买个计算力高的就行了,入门级的话1060性价比就很高啦)
  • PC(笔记本还是台式机无所谓╮(╯_╰)╭)
  • 内存32G(最最最低也得来个8G吧~~~)

版本匹配攻略

各模块之间存在匹配关系,不是你想安啥就安啥!!!这种情况参考官网是最佳选择,网上攻略千千万,各种版本的都有,不过参照官网的总是能少些弯路,省时省力啊!此处给出链接,根据你的安装需求,综合考虑Python版本、系统版本、驱动版本、cuda版本、cudnn版本、tensorflow。

PS: 鉴于tensorflow已经2.0,大家可以自己考虑用哪个版本,不过过程大同小异。

此处送上CUDA与系统驱动版本对应关系表。

安装系统

  1. 下载系统
    https://www.ubuntu.com/download/desktop
  2. 制作启动盘
    推荐个软件http://rufus.ie/,全小白操作,自己下个镜像就行
  3. 安装系统
    按F2进入BIOS,不同主板可能不一样,自行百度吧~~
    从U盘启动,一路安装系统

安装显卡驱动

显卡驱动的安装方法很多,可以在线也可以手动。这里推荐在线安装,当然你的电脑得联网!!!

  1. 如果曾经安装过其他版本的驱动,先卸载驱动
sudo apt-get remove --purge nvidia*
  1. 安装相关依赖项
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
  1. 添加Graphic Drivers PPA
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
  1. 寻找合适的驱动版本
ubuntu-drivers devices
  1. 安装驱动
sudo apt-get install nvidia-driver-435(根据自己的驱动号,选recommend)
  1. 安装完成后重启即可

有的博客说需要禁用nouveau驱动,笔者没有也没啥事。如果按照上述方法没有安装成功,就禁用试试吧 参考

CUDA安装

  1. 进入官网, 根据实际情况选择对应版本即可

这里我们选择.deb文件,按照官网提示一步一步执行命令即可

很多人在执行最后一行命令的时候发现,明明想安装10.0,最后却装成了10.1。这是系统自动升级为高版本的CUDA,解决方法是后面加上版本号即可

sudo apt-get install cuda-10.0

如果之前安装错误的版本,想要卸载之前的cuda,可以执行下面的命令

sudo apt-get remove cuda
sudo apt autoremove
sudo apt-get remove cuda*

然后将终端运行目录切换到/usr/local/下,可能会看到一个"cuda"或者“cuda-10.1”文件夹,再或者两者都有。输入指令删除残留的文件夹,比如要删除 cuda-10.1 文件夹:

sudo rm -r cuda-10.1

cuDNN安装

  1. 进入官网,注册账号,下载对应cudnn版本,选择第一个for linux(cudnn的版本选择参照前面的对应表格)

  2. 下载完成解压文件

tar -zxvf cudnn-10.0-<自己的版本>.tgz
  1. 解压完成将相应的文件拷贝到对应的CUDA目录下即可(要cd到含cudnn文件的目录下)
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
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

因为是拷贝安装,如果版本不对直接删除文件就好啦~~

sudo rm /usr/local/cuda/include/cudnn.h
sudo rm /usr/local/cuda/lib64/libcudnn*
  1. 编辑环境变量
sudo gedit ~/.bashrc

将cuda的环境变量加到打开的文件最后

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64"
export CUDA_HOME=/usr/local/cuda
export PATH="CUDAH​OME/bin:$PATH"

保存后,终端输入

source ~/.bashrc

Anaconda3安装

1.进入官网,下载需要版本
https://www.anaconda.com/distribution/

  1. cd进入下载文件所在的目录,在命令行输入:
bash Anaconda2-4.0.0-Linux-x86_64.sh
  1. 安装完成之后,在.bashrc中添加Anaconda的库文件,输入
sudo gedit ~/.bashrc

文件最后加入

export PATH="/home/你的用户名/anaconda3/bin:$PATH"
export LD_LIBRARY_PATH="/home/lyndon/anaconda2/lib:$LD_LIBRARY_PATH"

保存后,终端输入

source ~/.bashrc

安装完成后最好重启下电脑

tensorflow-gpu安装

  1. 如果利用anaconda安装,最好建立隔离环境,删除也十分方便
conda create -n <环境名称> python=<版本号,例如3.6>
  1. 激活隔离环境
activate <环境名称>
  1. 为conda更新为国内源
    跟换linux的源一个道理,国外的源实在是太慢了,换个源,让你配置系统效率再次起飞。对于conda我们使用清华大学的TUNA提供的Anaconda 仓库的镜像​执行下面的3条指令就OK了
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
  1. 为pip更换阿里源
    首先执行
mkdir ~/.pip

之后执行

cat > ~/.pip/pip.conf << EOF

然后依次输入下面4行

[global]
trusted-host=mirrors.aliyun.com
index-url=https://mirrors.aliyun.com/pypi/simple/
EOF
  1. tenorflow安装
conda intall tensorflow-gpu
or
pip intall tensorflow-gpu

上述两个均可,默认安装最新版本,也可指定版本号安装。安装完成后进行测试,看看你的tensorflow装没装好,在虚拟环境内输入python然后输入下面内容

import tensorflow as tf
hello = tf.constant('first tensorflow')
sess = tf.Session()
print sess.run(hello)

如果正常输出就是成功了!
这里推荐用pip安装,自己用conda安装后出现若干问题,后来才发现是conda会默认再次安装cudnn相关库,可能出现版本冲突问题


附加

安装Keras
在虚拟环境中执行

pip install keras

安装PyTorch
在虚拟环境中执行

conda install pytorch torchvision -c pytorch

然后进入python测试

import torch
print(torch.cuda.is_available())

输出True则为成功

安装搜狗输入法
可以参考LotusPanda:[Ubuntu18+RTX2080Ti]从0开始搭建深度学习环境TensorFlow+PyTorch​
大体的步骤是:

先安装3个fcitx的软件(在software里面直接搜fcitx,三个小企鹅全安就对了);
然后安装linux搜狗拼音;
重启电脑

安装opencv

pip install opencv-python
pip install opencv-contrib-python

[参考链接]
https://zhuanlan.zhihu.com/p/58075604
https://zhuanlan.zhihu.com/p/51373519
https://tensorflow.google.cn/install
https://blog.csdn.net/weixin_40779727/article/details/90453345
https://developer.nvidia.com/cuda-10.0-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1804&target_type=deblocal

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,128评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,316评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,737评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,283评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,384评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,458评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,467评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,251评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,688评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,980评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,155评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,818评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,492评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,142评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,382评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,020评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,044评论 2 352

推荐阅读更多精彩内容