IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 淡黄的炼丹炉(篇三):Ubuntu 18.04深度学习Server NVIDIA与CUDA相关环境安装 -> 正文阅读

[人工智能]淡黄的炼丹炉(篇三):Ubuntu 18.04深度学习Server NVIDIA与CUDA相关环境安装

total tips:

1 不必先安装显卡驱动,cudaToolkit自带有驱动了。先安装反而报各种错误

2 cudaToolKit一定要选择runFile,不要选择deb,否则会报错,并且不能再安装时选择配置

3 安装gcc,ubuntu18.04默认安装版本7.3,在进行cuda和cudnn安装测试时不能make,需要将gcc降级,比如5.5

background konwledge

一、显卡驱动、CUDA、cuDNN介绍

显卡驱动

显卡驱动是封装成软件的程序,硬件厂商根据操作系统编写的配置文件。安装成功后成为了操作系统中的一小块代码,它是硬件所对应的软件,有了它,计算机就可以与显卡进行通信,驱使其工作。如果没有显卡驱动,显卡就无法工作。

CUDA

官网introduction:其是由NVIDIA发明的并行计算平台以及编程模型,它可以显著的提高GPU的计算性能。
官网introduction链接:https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html

cuDNN

官网综述:NVIDIA的cuDNN是针对深度神经网络计算的一个GPU加速库,为标准例程提供了高度优化的实现,比如向前、向后卷积,池化,规范化和激活层。其是NVIDIA Deep Learning SDK的一部分。
官网综述链接:https://docs.nvidia.com/deeplearning/sdk/cudnn-install/
有一个比喻能够更形象的说明CUDA、cuDNN两者的关系:CUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算。它就相当于工作的工具,比如它就是个扳手。但是CUDA这个工作台买来的时候,并没有送扳手。想要在CUDA上运行深度神经网络,就要安装cuDNN,就像你想要拧个螺帽就要把扳手买回来。这样才能使GPU进行深度神经网络的工作,工作速度相较CPU快很多。
比喻出自:https://www.jianshu.com/p/622f47f94784

change source 中科大源

sudo gedit /etc/apt/sources.list
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
sudo apt update

降内核版本

如果不降内核,直接安装cuda ,效果是这个样子的
在这里插入图片描述
在这里插入图片描述
可以看到,安装失败,原因是:
在这里插入图片描述所以我们要更换内核

step1:查

https://developer.nvidia.com/cuda-toolkit-archive
找你想装的 cuda 的online document(我的是10.0)
https://docs.nvidia.com/cuda/archive/10.0/cuda-installation-guide-linux/index.html
在这里插入图片描述
可以看到,这里面是内核4.15.0,gcc是7.3,但是18.04默认内核是5.4.0,所以要降内核。
PS:降内核有风险,操作前请慎重
参考地址:
https://www.cnblogs.com/leeqizhi/p/11469309.html
https://www.jianshu.com/p/f284bc90944f

step2:装

 sudo apt-get install linux-headers-x.x.x-x-generic linux-image-x.x.x-x-generic

x.x.x-x = 4.15.0-38

step3:改

修改GRUB,使用新内核进系统

编辑/etc/default/grub文件中的GRUB_DEFAULT
默认为GRUB_DEFAULT=0,改为如下代码
??????????????还插timeout!!!!!!!!!!!!!!!!!!!!!

GRUB_DEFAULT="Advanced options for Ubuntu > Ubuntu, with Linux  4.15.0-38-generic"

3、更新GRUB并重启

sudo update-grub
reboot

4、重启选择的内核

在重启过程中,需要进入【Ubuntu高级选项】,选择Linux 4.15.0 generic进行启动刚才安装的内核,否则无法进入系统

系统启动以后,使用uname -a 查看内核版本,看看是不是成功了。

step4:删

查看所有内核

dpkg --get-selections | grep linux

移除冗余内核:
所有和4.15.0-38无关的内核统统干掉

sudo apt-get remove XXXXX

卸载后重新检查:

dpkg --get-selections | grep linux

状态为deinstall即已经卸载,如果觉得看着不舒服的话可以使用purge连配置文件里一起彻底删除,清理内核列表

sudo apt-get purge XXXX

更新系统引导
删除内核后需要更新grub移除失效的启动项

sudo update-grub

这样操作后,就完成了内核降级的操作

Install driver cuda and cudnn

1st Step: change gcc version(如有需要)

sudo apt install software-properties-common
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt install gcc-5 g++-5 gcc-7 g++-7 gcc-8 g++-8 gcc-9 g++-9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90 --slave /usr/bin/g++ g++ /usr/bin/g++-9 --slave /usr/bin/gcov gcov /usr/bin/gcov-9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 30
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 40
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 50


sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 30
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-6 40
sudo update-alternatives --install /usr/bin/g++ gc++/usr/bin/g++-5 50
sudo update-alternatives --config gcc
gcc --version

2nd Step:Download cuda

card - driver

https://developer.nvidia.com/cuda-toolkit-archive

在这里插入图片描述在这里插入图片描述

3rd Step:Download cudnn

https://developer.nvidia.com/rdp/cudnn-archive

在这里插入图片描述

4th Step: Install cuda

1 禁用nouvea显卡驱动

sudo nano /etc/modprobe.d/blacklist-nouveau.conf

在结尾添加

blacklist nouveau 

接着执行

 sudo update-initramfs -u
 sudo reboot

重启后执行:

 lsmod | grep nouveau

没有输出即屏蔽好了.

2 关闭图形界面(注意是关闭,不是切换),重启选择进入命令行界面

关闭图形界面:

sudo systemctl set-default multi-user.target
sudo reboot

打开图形界面

sudo systemctl set-default graphical.target
sudo reboot

3 先彻底删除原有nvidia驱动

sudo apt-get remove --purge nvidia* 

4 安装cuda10, –no-opengl-libs参数一定要if wanna remove cudnn:
加上,注意no前面‘–’

./cuda_10.0.130_410.48_linux.run --no-opengl-libs

安装效果如下:

在这里插入图片描述在这里插入图片描述可以看到,安装成功了。

5.设置环境变量

sudo vim .bashrc

in the end of this file ,add this several lines:

PATH=/usr/local/cuda/bin:$PATH
LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export PATH
export LD_LIBRARY_PATH
sudo su #切换到root账户
echo "/usr/local/cuda/lib64" > /etc/ld.so.conf.d/cuda.conf

6.reboot and have a look at nvidia-smi :

sudo reboot 
nvidia-smi

ls

dmesg | grep NVRM

如果没有问题,就可以往下进行了。

5th Step: install cudnn

sudo dpkg -i libcudnn7_7.4.1.5-1+cuda10.0_amd64.deb
sudo dpkg -i libcudnn7-dev_7.4.1.5-1+cuda10.0_amd64.deb
sudo dpkg -i libcudnn7-doc_7.4.1.5-1+cuda10.0_amd64.deb

如果想要移除cudnn:

sudo dpkg -i libcudnn7-samples
sudo dpkg -i libcudnn7-dev
sudo dpkg -r libcudnn8

6th Step: test cuda and cudnn

测试cuda

cd /usr/local/cuda/samples/1_Utilities/deviceQuery #由自己电脑目录决定
sudo make
sudo ./deviceQuery

cdsud

测试cudnn

cd /usr/src/cudnn_samples_v7/mnistCUDNN
sudo make clean
sudo make
./mnistCUDNN

在这里插入图片描述

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-10-02 14:40:58  更:2021-10-02 14:41:26 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/22 1:34:05-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码