Ubuntu20.04安装cuda10.1「建议收藏」

Ubuntu20.04安装cuda10.1「建议收藏」安装前准备首先要查看你的NVIDIA显卡驱动是否支持cuda10.1版本。在终端执行以下命令:nvidia-smi如果**CUDAVersion:…**这里的版本号大于等于10.1(我这里的是10.2),就可以安装cuda10.1.关键点:gcc降级因为Ubuntu20.04自带的gcc版本为9.3,而cuda10.1不支持gcc-9,因此要手动安装gcc-7,命令如下:sudoapt-getinstallgcc-7g++-7安装完gcc-7,系统中就存在两个版本

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

安装前准备

CUDA的主要用途是深度学习,而目前主流的深度学习框架Tensorflow2最高支持CUDA 10.1,因此本文讲解在Ubuntu 20.04系统上安装CUDA 10.1的主要过程。

首先要查看你的NVIDIA显卡驱动是否支持cuda10.1版本。
在终端执行以下命令:
nvidia-smi

在这里插入图片描述

如果 CUDA Version: … 这里的版本号大于等于10.1(我的是10.2),就可以安装cuda10.1.

关键点:gcc降级

因为Ubuntu20.04自带的gcc版本为9.3,而cuda10.1不支持gcc-9,因此要手动安装gcc-7,命令如下:

sudo apt-get install gcc-7 g++-7

安装完gcc-7,系统中就存在两个版本的gcc,因此要设置默认的gcc,命令如下:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 1
此命令可以通过update-alternatives设置gcc各版本的优先级,优先级最高的为系统默认版本,可以用下述命令显示其优先级:
sudo update-alternatives --display gcc

设置默认的g++也是如此:

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 9
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 1

显示g++优先级:

sudo update-alternatives --display g++

按照官网的安装步骤下载并安装CUDA 10.1

CUDA Toolkit 10.1 update2 Archive
在这里插入图片描述如上图所示,推荐选择run文件安装,比较简洁。

  1. 当安装界面启动,选择continue。
  2. 然后输入accept,回车。
  3. 由于你的系统中已经有了NVIDIA显卡驱动,如果不想安装CUDA 10.1中附带的驱动,移动到Driver选项上,按空格键将该项取消。如下图。
    在这里插入图片描述
    移动到Install选项,回车,等待安装完成。

配置可执行文件及库路径

安装完成后,需要为CUDA 10.1配置环境。

  1. 首先打开家目录下的.bashrc文件: gedit ~/.bashrc
  2. 在文件的末尾添加如下内容:
export PATH=/usr/local/cuda-10.1/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
  1. 保存并关闭文件,完成配置。
  2. 更新环境:source ~/.bashrc

安装cuDNN

下载cuDNN

Download cuDNN

打开链接后,网站会要求你登陆,如果没有NVIDIA账号,注册后再登陆。

在这里插入图片描述
选择与CUDA 10.1对应的版本(7.6.5),点开后选择 cuDNN Library for Linux,点击下载。(最好选择 cuDNN Library for Linux 这个文件格式安装比较方便

在这里插入图片描述

安装cuDNN

切换到下载文件所在目录,解压下载好的cuDNN压缩文件到当前目录:
tar zxvf ./cudnn-10.1-linux-x64-v7.6.5.32.tgz -C ./

将解压出的
cuda/include/cudnn.h文件复制到/usr/local/cuda/include文件夹

cuda/lib64/下所有文件复制到/usr/local/cuda/lib64文件夹

为上述文件添加读取和执行权限:
sudo chmod 755 /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

安装完毕

参考文章:

Ubuntu 20.04 CUDA&cuDNN安装方法
Ubuntu:安装 cuda10.1 驱动

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ESP-Drone开源 Wi-Fi 无人机固件首次编译与错误排查

    ESP-Drone开源 Wi-Fi 无人机固件首次编译与错误排查**ESP-Drone原名ESP-Plane***代码仓库:[esp-drone](https://github.com/espressif/esp-drone)*中文文档:[gettingstarted](https://docs.espressif.com/projects/espressif-esp-drone/zh_CN/latest/index.html)*展示视频:[安装与试飞](https://b23.tv/hnLq8Z)

    2022年8月15日
    8
  • eureka手动注册服务_istio服务注册与发现

    eureka手动注册服务_istio服务注册与发现一、Eureka简介Eureka是Netflix开发的服务发现框架,本身是一个基于REST的服务,主要用于定位运行在AWS域中的中间层服务,以达到负载均衡和中间层服务故障转移的目的。SpringCloud将它集成在其子项目spring-cloud-netflix中,以实现SpringCloud的服务发现功能。1.Eureka包含两个组件:EurekaSer…

    2022年8月21日
    12
  • PO模式介绍

    PO模式介绍目标1.深入理解PO模式的思想2.熟练掌握PO模式的分层思想1.存在的问题在做UI自动化时定位元素特别依赖页面,一旦页面发生变更就不得不跟着去修改定位元素的代码。举例:假设要对一个元素进行点击操作,而且会经常对该元素进行操作,那么你就可能会编写多处如下代码 1 driver.find_element_by_id(“login-btn”…

    2022年4月30日
    110
  • vue的render函数用法[通俗易懂]

    vue的render函数用法[通俗易懂]1.render简介前面我们的组件的模板都是在模板里写的(template),模板最后都会被vue编译成virtualdom(虚拟dom),在某些情况下模板可能不好用,例如需要实现一个动态的文章标题,根据父组件的level属性,动态的渲染成h1~hx标签,用模板写部分代码如下。<article-header:level=”1″>Helloworld</article-h…

    2025年6月15日
    3
  • MJRefresh框架的使用

    MJRefresh框架的使用MJRefresh

    2025年10月25日
    4
  • 反向传播——通俗易懂[通俗易懂]

    反向传播——通俗易懂[通俗易懂]最近在看深度学习的东西,一开始看的吴恩达的UFLDL教程,有中文版就直接看了,后来发现有些地方总是不是很明确,又去看英文版,然后又找了些资料看,才发现,中文版的译者在翻译的时候会对省略的公式推导过程进行补充,但是补充的又是错的,难怪觉得有问题。反向传播法其实是神经网络的基础了,但是很多人在学的时候总是会遇到一些问题,或者看到大篇的公式觉得好像很难就退缩了,其实不难,就是一个链式求导法则反复用。如果…

    2022年4月28日
    41

发表回复

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

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