[深度学习] ubuntu18.04配置深度学习环境笔记
最近装过很多ubuntu18.04系统的nvidia驱动,cuda10.2,cudnn7.6.5,发现每次都会出现一些小问题。总结了具体步骤,做个记录。主要分为三个步骤:驱动安装,cuda安装,cudnn安装。本文主要参考了博客Ubuntu18.04安装CUDA10、CUDNN和Ubuntu18.04+CUDA10.2 深度学习开发环境配置指南。本文也适用于其他linux系统安装不同版本cuda,cudnn。
1 nvidia驱动安装
安装驱动前,最好禁用nouveau驱动,这一步是建议,也可以不做。本文方法不需要禁止,我没有禁用这个nouveau驱动。禁用的教程见:Ubuntu下安装INVIDIA显卡驱动(避免循环登录问题)
nvidia驱动先通过以下命令查看你的系统支持的版本:
ubuntu-drivers devices
结果如下所示:

一般情况下是安装红线对应的recommend驱动,但是如果不是安装cuda10.2需要查看cuda版本和nvidia驱动版本是否对应。具体查看CUDA Toolkit and Compatible Driver Versions就有相关说明。
如下图所示,可以看到要安装的nvidia-driver-455符合cuda10.2的版本要求。

然后就是直接输入命令安装了,不需要自己下载驱动。命令如下:
sudo apt-get purge nvidia*
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-driver-455
应该是傻瓜式安装,安装完后直接重启系统。
sudo reboot
2 CUDA10.2安装
本文安装的是cuda10.2版本。进入CUDA历史版本下载页面。进去后先点击要安装的版本页面,

打开版本页面后,选择系统和版本信息。这里选择runfile安装,如下所示:

这个cuda安装包国内下载可能会很慢,可以复制wget后面的下载链接,用迅雷、IDM等下载工具先行下载。
如果以上方式还是下载太慢或者下载失败,可以找找网上别人的分享镜像。 比如CUDA下载分享这篇文章(可能cuda版本不全)就有cuda百度网盘分享地址。如下:
下载完成后直接输入
sudo sh cuda_10.2.89_440.33.01_linux.run
在安装cuda的时候不要选择安装驱动,其他默认,就可以了。
安装成功后再添加环境变量,先用vim命令打开~/.bashrc文件。再最后添加如下命令就行了:
# cuda环境变量
export CUDA_HOME=/usr/local/cuda
export PATH=$PATH:$CUDA_HOME/bin
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
当然可以看看是否安装成功,输入nvidia-smi看看显卡驱动是否安装成功,然后输入nvcc -V可以看到cuda版本。

3 cudnn安装
直接打开cudnn历史版本下载页面选择对应的版本。一般来说cuda版本和cudnn版本并不是一一对应的。只要符合cuda版本要求的cudnn版本都行。

本文用的是7.6.5版本,下载需要注册账号,很容易搞定。然后点击其中的cuDNN library for Linux即可。

下载完成后,解压文件。进入解压后的cuda文件夹,输入以下命令,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*
通过以下命令查看cudnn版本:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
根据输出可以判断cudnn版本为7.6.5.

4 参考
[深度学习] ubuntu18.04配置深度学习环境笔记的更多相关文章
- ubuntu18.04配置nvidia docker和远程连接ssh+远程桌面连接(一)
ubuntu18.04配置nvidia docker和远程连接ssh+远程桌面连接(一) 本教程适用于想要在远程服务器上配置docker图形界面用于深度学习的用户. (一)ubuntu18.04配置n ...
- ubuntu18.04配置nvidia docker和远程连接ssh+远程桌面连接(二)
ubuntu18.04配置nvidia docker和远程连接ssh+远程桌面连接(二) 本教程适用于想要在远程服务器上配置docker图形界面用于深度学习的用户. (二)nvidia docker配 ...
- ubuntu18.04配置nvidia docker和远程连接ssh+远程桌面连接(三)
ubuntu18.04配置nvidia docker和远程连接ssh+远程桌面连接(三) 本教程适用于想要在远程服务器上配置docker图形界面用于深度学习的用户. (三)配置远程桌面连接访问dock ...
- Ubuntu18.04下搭建LAMP环境
一.Apache2 web 服务器的安装 : 可以先更新一下服务器 1.sudo apt-get update # 获取最新资源包 2.sudo apt-get upgrade ...
- Ubuntu18.04配置中文输入法(系统自带的)
Ubuntu18.04配置中文输入法 之前安装Ubuntu18.04的时候选择了english,现在要配置中文的输入法 打开系统设置 点击其中的工具按钮左边第一个 点击管理语言 ==如果系统刚安装可能 ...
- Ubuntu20.04配置Java开发环境
Ubuntu20.04配置Java开发环境 JDK 1.8 安装 下载地址 下载后进行解压 tar -xvzf jdk-8u301-linux-x64.tar.gz 配置环境变量 gedit ~/.b ...
- AgileEAS.NET SOA 中间件平台5.2版本下载、配置学习(三):配置ActiveXForm运行环境
一.前言 AgileEAS.NET SOA 中间件平台是一款基于基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速开发应用平台.用于帮助中小型软件企业建立一条适合市 ...
- 【Tool】---ubuntu18.04配置oh-my-zsh工具
作为Linux忠实用户,应该没有人不知道bash shell工具了吧,其实除了bash还有许多其他的工具,zsh就是一款很好得选择,基于zsh shell得基础之上,oh-my-zsh工具更是超级利器 ...
- 【.net core 跨平台】第一步 在Ubuntu16.04 配置.net core环境
本次使用VMware10.0.4工具安装Ubuntu16.04系统并配置.net core环境 Ubuntu 16.04 desktop下载地址:http://releases.ubuntu.co ...
随机推荐
- httpd常用配置之虚拟主机
httpd常用配置 目录 httpd常用配置 虚拟主机: 相同IP不同端口 不同IP相同端口 相同IP相同端口不同域名 切换使用MPM(编辑/etc/httpd/conf.modules.d/00-m ...
- 洛谷 P5607 [Ynoi2013] 无力回天 NOI2017
人生第一道Ynoi,开心 Description https://www.luogu.com.cn/problem/P5607 Solution 拿到这个题,看了一下,发现询问要求最大异或和,怎么办? ...
- 常见的 Kerberos 错误消息
常见的 Kerberos 错误消息 问题:All authentication systems disabled; connection refused 原因:此版本的 rlogind 不支持任何验证 ...
- java.lang.ClassNotFoundException:(新建的servlet无法找到class文件)的报错
该问题有可能是IDEA的部署没有更新的问题 将out中的 删除,然后重新导入即可
- element-ui select可搜索下拉框无法在IOS或Ipad调起小键盘输入法
参考:https://segmentfault.com/q/1010000021748033 原因:常规select是可以调起小键盘的.但是element-ui的select其实是input.并且这个 ...
- Springboot+vue 实现汽车租赁系统(毕业设计二)(前后端项目分离)
文章目录 1.系统功能列表 2.管理员端界面 2.1 商家登录界面 2.2 用户信息管理界面 2.3 汽车管理界面 2.4 订单界面 2.5 汽车图形报表 2.6 优惠券新增界面 3.普通用户界面 3 ...
- NLP之基于BERT的预测掩码标记和句间关系判断
BERT @ 目录 BERT 程序步骤 程序步骤 设置基本变量值,数据预处理 构建输入样本 在样本集中随机选取a和b两个句子 把ab两个句子合并为1个模型输入句,在句首加入分类符CLS,在ab中间和句 ...
- C++ lower_bound/upper_bound用法解析
1. 作用 lower_bound和upper_bound都是C++的STL库中的函数,作用差不多,lower_bound所返回的是第一个大于或等于目标元素的元素地址,而upper ...
- 29.渲染器Renderer
什么是渲染器 渲染器就是将服务器生成的数据格式转为http请求的格式 渲染器触发及参数配置 在DRF配置参数中,可用的渲染器作为一个类的列表进行定义 但与解析器不同的是,渲染器的列表是有顺 ...
- 2022HNCTF--WEB
@ 目录 [Week1]Interesting_http 分析 payload [Week1]2048 分析 payload [Week1]easy_html 分析 paylaod [Week1]In ...