Linux安装CUDA的正确姿势[通俗易懂]

Linux安装CUDA的正确姿势CUDA(ComputeUnifiedDeviceArchitecture,统一计算架构)是由NVIDIA所推出的一种集成技术,是该公司对于GPGPU的正式名称。透过这个技术,用户可利用NVIDIA的GeForce8以后的GPU和较新的QuadroGPU进行计算。查看显卡是否支持CUDA输入下面命令查看电脑的NVIDIA型号:v…

大家好,又见面了,我是你们的朋友全栈君。

Linux安装CUDA的正确姿势

CUDA(Compute Unified Device Architecture,统一计算架构)是由NVIDIA所推出的一种集成技术,是该公司对于GPGPU的正式名称。

透过这个技术,用户可利用NVIDIAGeForce 8以后的GPU和较新的Quadro GPU进行计算。

查看显卡是否支持CUDA

输入下面命令查看电脑的NVIDIA型号:

vincent@dell-Inspiron-7559 Dir:~
·····$lspci | grep -i nvidia
02:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 960M] (rev a2)

我的显卡型号为: GeForce GTX 960M

然后到官网查看是否支持CUDA网址地址

查看CUDA版本与NVIDIA驱动的关系

在这里插入图片描述
也可以到官网查看,点击查看链接

下载CUDA文件

下载最新的CUDA软件安装包, CUDA Toolkit 9.2 Download

这里写图片描述

我们选择runfile文件进行安装。然后放到一个目录下,要记住,后面我们会要执行它。

确认安装环境

1. NVIDIA显卡已经正常安装

2. nouveau已经禁用

可以使用下面命令查看,如果没有输出代表成功:

lsmod | grep nouveau

如果正确安装了NVIDIA的驱动就会禁止掉了。

3. 验证系统是否安装了gcc

终端输入下面命令查看是否安装:

vincent@dell-Inspiron-7559 Dir:~
·····$gcc --version
gcc (Ubuntu 7.3.0-16ubuntu3) 7.3.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 

安装CUDA

1. 进入tty界面

alt + ctrl + F1进入tty命令行界面,登录用户和密码

2. 关闭图形界面

tty中输入下面命令关闭图形界面:

sudo service lightdm stop

或者

sudo telinit 3

3. 运行cuda文件

首先给cuda可执行权限:

sudo chmod a+x cuda_9.2_linux.run

运行cuda文件:

sudo ./cuda_9.2_linux.run --no-opengl-libs

cuda主要有以下参数:

  • --no-opengl-libs:表示只安装驱动文件,不安装OpenGL文件。必需参数,原因同上。注意:不是-no-opengl-files
  • --uninstall (deprecated):用于卸载CUDA Driver(已废弃)。
  • --toolkit:表示只安装CUDA Toolkit,不安装DriverSamples
  • --help:查看更多高级选项。

4. 安装过程的选项选择

(1). 会先有个阅读声明,一直按D即可,然后accept
(2). 选项install nvidia accelerated Graphics Driver,输入n,因为我们已经安装了nvidia的驱动。
(3). 选项install the OpenGL libraries,如果双显卡(集显+独显)选择n,如果只有独显可以选择y,如果双显卡选择y的话,会出现黑屏或者循环登录的问题,如果加了上面的参数就不会出现这个选项了。
(4). 后面的可以都选择yes,最后一个选项我们可以选择n,也就是不复制Samples,因为安装目录下有samples

安装过程结束后会有以下信息:

Driver :Installed
Toolkit :Installed in /usr/local/cuda-9.2
Samples :Installed in /home/vincent

代表安装完成,但是不代表成功。这时需要重启。

5. 验证cuda是否成功安装

重启进入界面,打开终端输入:

export PATH="/usr/local/cuda-9.2/bin:$PATH" 
export LD_LIBRARY_PATH="/usr/local/cuda-9.2/lib64:$LD_LIBRARY_PATH" 

这两条命令是将cudabin文件和lib导出到系统环境中。
如果安装的版本不是一样的,更换路径中的cuda-9.2

(1). 终端输入:

nvcc -V

如果有CUDA的版本信息代表正常。

(2). 编译samples例子

#编译并测试设备 deviceQuery:
cd /usr/local/cuda-9.2/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery

#编译并测试带宽 bandwidthTest:
cd ../bandwidthTest
sudo make
./bandwidthTest

如果这两个测试的最后结果都是Result = PASS,说明CUDA安装成功啦。

备注:
如果安装失败,有可能是缺少依赖,终端执行:

sudo apt-get install freeglut3-dev \
build-essential \
libx11-dev \
libxmu-dev \
libxi-dev \
libgl1-mesa-glx \
libglu1-mesa \
libglu1-mesa-dev

(6). 将cudabinlib写入系统环境

打开~.bashrc文件在末尾追加两句:

export CUDA_HOME=/usr/local/cuda-9.2
export LD_LIBRARY_PATH=/usr/local/cuda-9.2/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-9.2/bin:$PATH

然后退出重新打开终端即可。

CUDA卸载

CUDA默认安装在 /usr/local/cuda-9.2下,用下面的命令卸载::

sudo /usr/local/cuda-9.2/bin/uninstall_cuda-9.2.pl

NVIDIA驱动卸载:

sudo /usr/bin/nvidia-uninstall

卸载过程一路都是yes

其他问题

1. 如果出现循环登录

alt + ctrl + F1进入tty,然后切换集显:

sudo  prime-select intel

卸载cuda文件:

sudo /usr/local/cuda-9.2/bin/uninstall_cuda_9.2.pl

如果重启之后还是不能进入,那就把nvidia驱动卸载:

sudo /usr/bin/nvidia-uninstall

也可以在启动时选择Advanced然后以root方式进入系统,卸载nvidia、cuda等软件。

然后重启,如果重启黑屏,在grub界面进入linux的选择上按e键,找到quiet splash,在后面加nouveau.modeset=0,然后按F10启动。
然后安装nvidia驱动,再安装CUDA软件。

2.gcc版本校验失败
如果安装cuda过程中出现

Failed to verify gcc version

那么很有可能你的gcc版本太高,例如:cuda 10.1要求gcc版本是7.3.0,但是ubuntu 20.04/linux mint 20默认gcc版本为9.3.0,所以可以增加下面参数安装。

sudo sh cuda_10.1.243_418.87.00_linux.run --override

END

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/125956.html原文链接:https://javaforall.net

(0)
上一篇 2022年4月18日 上午9:40
下一篇 2022年4月18日 上午10:00


相关推荐

  • android root 卸载app,如何免ROOT卸载安卓系统自带APP

    android root 卸载app,如何免ROOT卸载安卓系统自带APP本教程需要使用 adb 应用督察 本方法适用于 Android7 0 及以上 Android8 的手机同样适用 本教程仅供参考 卸载有风险 出现问题后果自负 准备工作 windows 系统以上电脑一台 数据线一根 一 分别开启开发者选项和 USB 调试 可能部分品牌手机设置位置不同 1 设置 gt 关于本机 gt 连续点击 7 次 版本号 这样就开启了开发者选项 2 设置 gt 开发者选项 开启 开启开发者

    2026年3月19日
    1
  • 一步一步教学《虚拟化工程师实战培训》让想学者学得更容易。

    一步一步教学《虚拟化工程师实战培训》让想学者学得更容易。一步一步教学《虚拟化工程师实战培训》让想学者学得更容易。

    2022年4月20日
    48
  • java模板引擎哪个好_模板引擎比较

    java模板引擎哪个好_模板引擎比较18 9 3 总结 1 FreeMarker 是一个用 Java 语言编写的模板引擎 它基于模板来生成文本输出 FreeMarker 与 Web 容器无关 即在 Web 运行时 它并不知道 Servlet 或 HTTP 它不仅可以用作表现层的实现技术 而且还可以用于生成 XML JSP 或 Java 等 在 spring4 0 中推荐使用 thymeleaf 来做前端模版引擎 2 JSP 技术 springboot 官方是不推荐的 原因

    2026年3月17日
    2
  • 斗战神 拳猴刷图加点

    斗战神 拳猴刷图加点是输出手法,我觉得这个一般来说争议不大,但是很重要一点,BOSS战开始前,一定保证身上有一个蛮横的BUFF,如上图所示。至于顺序分别是:九豆或满豆起手-乱星舞-八荒-极影腿×2-巨猿-神行-

    2022年7月2日
    23
  • edger多组差异性分析_使用edgeR进行无重复差异表达分析

    edger多组差异性分析_使用edgeR进行无重复差异表达分析写这篇文章一部分原因是填 2 年前的一个坑转录组入门 7 差异表达分析 另一部分原因是 GQ 最近又在搞一波无重复的差异表达分析 所以专门去学了 edgeR 我个人是不太推荐没有重复的差异表达分析 毕竟统计学上的 p 值是为了证明两个样本的差异是真实存在而不是抽样误差导致 但是你单个样本如何计算变异呢 因此每当别人提问的时候 我个人的建议就是定性看看倍数变化吧 但是如果真的强行要算 p 值 其实也不

    2026年3月17日
    1
  • 第一批“养虾”的运营:有人躺赚,有开始卸载了

    第一批“养虾”的运营:有人躺赚,有开始卸载了

    2026年3月13日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号