真实机下 ubuntu 18.04 安装GPU +CUDA+cuDNN 以及其版本选择(亲测非常实用)【转】
本文转载自:https://blog.csdn.net/u010801439/article/details/80483036
ubuntu 18.04 安装GPU +CUDA+cuDNN :
目前,大多情况下,能搜到的基本上都ubuntu 14.04.或者是ubuntu 16.04的操作系统安装以及GPU 环境搭建过程,博主就目前自身实验室环境进行分析,总结一下安装过程。
1.实验室硬件配置(就需要而言):
gpu : GeForce titan xp 12G 显存
内存: 64G
硬盘 :512 SDD +2T 机械
主板: 微星 x299 SLI PLUS
就配置而言,唯一有遗憾的就是主板,微星主板安装ubuntu 各种报小毛病,打电话给微星客服,客服说,这块主板供应商只在window 10 环境下进行过测试,但是,LINUX 系统,不知道行不行得通,让我自己想办法解决,-_-|| 。 此处还是建议要采购设备的主板选择技嘉或者华硕的,注意看主板是否支持安装linux操作系统。
2 .ubuntu18.04 系统安装
首先,建议制作U盘启动盘(点击此处)进行安装,安装时需要设定主板 grub+legacy方式(重启进bios,boot项里面的),博主在安装系统时,尝试安装了各种版本的ubuntu系统,包括14.01、14.03、16.01、16.03、16.04,均未成功,所有的问题,都是,系统安装到一半,直接就报错,无法安装,在网上查找了许久,据说是显卡的问题导致的,有相关文档说,18.04版本可以避免这个问题。于是,尝试安装ubuntu18.04版本,OK ,按照大神推荐的双硬盘分配方案(点击此处)进行安装配置。安装成功。
大家在安装好系统后,要记得更新源。
3.安装GPU(针对ubuntu18.04)
进入系统后,系统默认是使用主板上的集成显卡,那么,我们需要做的事就是安装上自己的独立显卡,也就是titan xp的驱动,网上有3中安装方法,给大家推荐一下,可以收藏一下如何安装NVIDIA显卡(点击此处)。
此处给大家示范其中一个方法(自己的显卡对应自己的信息,以下只是示例):
修改root密码:
1. $ sudo passwd 输入两次新密码
2. $ su root 登陆 root账户
step .1:首先,检测你的NVIDIA图形卡和推荐的驱动程序的模型。执行命令:
$ ubuntu-drivers devices
输出结果为:
- == /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
- modalias : pci:v000010DEd00001180sv00001458sd0000353Cbc03sc00i00
- vendor : NVIDIA Corporation
- model : GK104 [GeForce GTX 680]
- driver : nvidia-304 - distro non-free
- driver : nvidia-340 - distro non-free
- driver : nvidia-384 - distro non-free recommended
- driver : xserver-xorg-video-nouveau - distro free builtin
- == cpu-microcode.py ==
- driver : intel-microcode - distro free
从中可以看到,这里有一个设备是GTX 680 ,对应的驱动是NVIDIA -304,340,384 ,而推荐是安装384版本的驱动。
$ sudo ubuntu-drivers autoinstall
$ sudo apt install nvidia-340
OK 驱动安装完成,重新启动,查看系统配置---》详细信息---》关于 ,图形处理是否对应于自己的独立显卡。
4.安装CUDA(针对18.04)
安装CUDA 这里需要注意;
咱们需要根据cuDNN 来选择,如图,首先,cuda只能支持17.04,16.04的ubuntu 下载安装,但,实际上,有点类似于word一样(高版本word能打开低版本的word文件 .)18.04版本的系统,能够安装16.04版本对应的CUDA。
目前cuda 最高版本为9.2,且只支持 16.04,17.04 这两个系统,而且,我们安装完CUDA 之后还需要安装cuDNN。
那么cuDNN 的版本又有什么选择呢,如下
首先,根据cuDNN 的版本,目前,较为完善的,是cuDNN v7.0.5 ,其适用于 CUDA 9.1 版本,所以,咱们在选择安装cuda的时候,选择 CUDA 9.1。下载地址
按下图进行选择
对应的有一下四个文件,需要统统下载,第一个是主文件,后3个相当于补丁。
开始安装:
step .1 GCC 降级
由于CUDA 9.0仅支持GCC 6.0及以下版本,而Ubuntu 18.04预装GCC版本为7.3,
故手动进行降级:
sudo apt-get install gcc-4.8
sudo apt-get install g++-4.8
装完后进入到/usr/bin目录下
$ls -l gcc*
会显示以下结果
lrwxrwxrwx 1 root root 7th May 16 18:16 /usr/bin/gcc -> gcc-7.3
发现gcc链接到gcc-7.0, 需要将它改为链接到gcc-4.8,方法如下:
sudo mv gcc gcc.bak #备份
sudo ln -s gcc-4.8 gcc #重新链接
同理,对g++也做同样的修改:
ls -l g++*
lrwxrwxrwx 1 root root 7th May 15:17 g++ -> g++-7.3
需要将g++链接改为g++-4.8:
sudo mv g++ g++.bak
sudo ln -s g++-4.8 g++
再查看gcc和g++版本号:
gcc -v g++ -v
均显示gcc version 4.8 ,说明gcc 4.8安装成功。
step. 2 安装cuda ,及其补丁
输入命令安装Base Installer:
sudo sh cuda_9.1.85_387.26_linux.run
需要注意的是,之前已经安装过显卡驱动程序,故在提问是否安装显卡驱动时选择no,其他 选择默认路径或者yes即可。
然后,继续执行以下操作安装3个 patch :
sudo sh cuda_9.1.85.1_linux.run
sudo sh cuda_9.1.85.2_linux.run
sudo sh cuda_9.1.85.3_linux.run
安装完毕之后,将以下两条加入.bashrc
文件中.
sudo vim ~/.bashrc
export PATH=/usr/local/cuda-9.1/bin${PATH:+:$PATH}} #注意,根据自己的版本,修改cuda-9.2/9.0...
export LD_LIBRARY_PATH=/usr/local/cuda-9.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} #注意,根据自己的版本,修改cuda-9.2/9.0...
OK ,那么,到这一步,cuda 就安装完成了
5.安装cuDNN(针对18.04)
cuDNN 的安装,就是将 cuDNN 包内的文件,拷贝到cuda文件夹中即可。
step.1按照第四点分析的内容,我们需要下载的cuDNN 版本为
cuDNN v7.0.0 library for liunx,下载地址(需要注册才能进行下载)
下载完毕后,切到默认的Downloads文件夹,可以看到 cudnn-9.1-linux-x64-v7.tgz 压缩包
先解压,然后将其中的内容复制到CUDA安装文件夹里面.
step.2 复制cuDNN内容到cuda相关文件夹内
sudo cp cuda/include/cudnn.h /usr/local/cuda/include 注意,解压后的文件夹名称为cuda ,将对应文件复制到 /usr/local中的cuda内
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
到此处,所以的安装就完成。
接下来就可以安装相应的软件,如:anaconda,pycharm tensorflow 等。。。
真实机下 ubuntu 18.04 安装GPU +CUDA+cuDNN 以及其版本选择(亲测非常实用)【转】的更多相关文章
- Ubuntu 18.04安装MongoDB 4.0(社区版)
Ubuntu 18.04(虚拟机VirtualBox上),MongoDB 4.0, 听室友说,23点有世界杯决赛呢!可是,孤要写博文的啊!以记录这忙乱的下午和晚间成功安装了一个软件到Linux上.—— ...
- Ubuntu 18.04 安装部署Net Core、Nginx全过程
Ubuntu 18.04 安装部署Net Core.Nginx全过程 环境配置 Ubuntu 18.04 ,Nginx,.Net Core 2.1, Let's Encrypt 更新系统 sudo a ...
- Ubuntu 18.04 安装和常用软件安装
Ubuntu 18.04 安装 下载 Ubuntu 制作 U 盘启动盘 设置电脑为 U 盘启动 插入 U 盘,重启电脑 按照提示安装 Ubuntu 更新 NVIDIA 显卡和 Broadcom 无线网 ...
- [笔记] Ubuntu 18.04安装Docker CE及nvidia-docker2流程
Docker的好处之一,就是在Container里面可以随意瞎搞,不用担心弄崩Host的环境. 而nvidia-docker2的好处是NVidia帮你配好了Host和Container之间的CUDA相 ...
- Ubuntu 18.04安装Samba服务器及配置
Ubuntu 18.04安装Samba服务器及配置 局域网下使用samba服务在Linux系统与Windows系统直接共享文件是一项很方便的操作.以Ubuntu为例配置samba服务,Linux服务器 ...
- Ubuntu 18.04 安装配置 MySQL 5.7
Ubuntu 18.04 安装 mysql 的过程中,竟然没有让你输入秘密?!(之前在 Ubuntu 14.04 下,安装过程中会询问密码),这导致安装完 mysql 初始秘密不知道的问题. $ su ...
- [笔记] Ubuntu 18.04安装Docker CE及NVIDIA Container Toolkit流程
之前写的[笔记] Ubuntu 18.04安装Docker CE及nvidia-docker2流程已经out了,以这篇为准. Docker的好处之一,就是在Container里面可以随意瞎搞,不用担心 ...
- Linux (Ubuntu 18.04) 安装vim编辑器
大家可以去Ubuntu官网下载桌面系统:https://ubuntu.com/download/desktop,虽然最新版是19.04,但是建议大家下载稳定版18.04.安装过程非常简洁,我使用的是V ...
- Ubuntu 18.04安装配置Apache Ant
Ubuntu 18.04安装配置Apache Ant 文章目录 Ubuntu 18.04安装配置Apache Ant 下载 执行以下命令 `/etc/profile`中配置环境变量 载入配置 测试 执 ...
随机推荐
- Mahout实现基于用户的协同过滤算法
Mahout中对协同过滤算法进行了封装,看一个简单的基于用户的协同过滤算法. 基于用户:通过用户对物品的偏好程度来计算出用户的在喜好上的近邻,从而根据近邻的喜好推测出用户的喜好并推荐. 图片来源 程序 ...
- python搭建简易Web Server
如果你急需一个简单的Web Server,但你又不想去下载并安装那些复杂的HTTP服务程序,比如:Apache,ISS等.那么, Python可能帮助你,使用Python可以完成一个简单的内建 HTT ...
- 【BZOJ3939】[Usaco2015 Feb]Cow Hopscotch 动态规划+线段树
[BZOJ3939][Usaco2015 Feb]Cow Hopscotch Description Just like humans enjoy playing the game of Hopsco ...
- 监控linux流量shell版
想要实时查看linux流量情况,又不想再去下第三方工具,可以直接写脚步运行! 系统:centos 6.5 原理:从/proc/net/dev中获取到流量情况,再通过换算并除以间隔时间来得到流量单位M ...
- java面向对象(上)
一.一些重要的概念理解 Java是面向对象的程序设计语言,提供了类,成员变量,方法等的基本功能.类可被认为是一种自定义的数据类型,可以使用类来定义变量,所有使用类定义的变量都是引用变量.它会引用到类的 ...
- 解决pip install 安装慢问题
使用豆瓣源 比如安装pyspark pip install -i https://pypi.douban.com/simple/ pyspark 速度就比用pip install快N倍 关注公众号:
- 强制关机导致ORA-03113
数据库启动报错:无法打开数据库. [oracle@localhost ORCL]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Productio ...
- 设计模式之——Decorator模式
Decorator模式又叫装饰者模式,这种模式是为了满足Java开发的"面向扩展开放,面向修改闭源"的开发原则设计出来的. 在装饰者模式中,不修改源类的代码,却能修改源类中方法的功 ...
- F(N)---hdu2802(寻找循环节)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2802 f[1] = 1; f[2] = 7; f[n] = (f[n-2] - (n-1)*(n-1) ...
- uchome 常用函数示例
一.inserttable //添加数据 //前3个参数 $tablename插入的表名称 $insertsqlarr数据数组 $returnid是否返回插入ID function inserttab ...