Ubuntu下安装cuda_Ubuntu下KDE的安装删除

Ubuntu下安装cuda_Ubuntu下KDE的安装删除Ubuntu下安装CUDA、cuDNN;多版本安装

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

Jetbrains全系列IDE稳定放心使用

系列总目录 链接→ [系统配置、包/库安装、问题修复]

注意:

  • Ubuntu18.04默认GCC-7,由于CUDA 9.x不支持GCC-7(下载页面没有对ubuntu18的支持),所以需要安装低版本的5或者<= 6.3.0,并设置为默认版本。否则应安装10.0以上版本CUDA
  • Nvidia显卡驱动与CUDA版本对应关系,显卡驱动版本越高,就可支持越高版本的CUDA,并对低等级驱动向下支持

安装步骤

  1. 查看是否安装了cuda

    # 法1
    cat  /usr/local/cuda/version.txt
    # 法2
    nvcc --version
    
  2. 若没有安装,则查看是否有N卡驱动,若无N卡驱动,则到软件与更新 -> 附加驱动中安装驱动

  3. 查看N卡驱动支持的cuda版本

    nvidia-smi
    

    如下图支持最高CUDA版本是11.4在这里插入图片描述

  4. cuda-toolkit-archive,选择需要的CUDA下载

  5. 如下图,选择runfile(local),并使用生成的指令进行下载和安装
    在这里插入图片描述
    若第1步提示Existing package manager installation of the driver found. It is strongly recommended that you remove this before continuing.,选择continue,在下一步中去除driver项,之后选择install在这里插入图片描述
    安装完成后,显示如下:
    在这里插入图片描述

  6. ~/.bashrc文件中添加如下环境变量:

    export PATH=/usr/local/cuda-11.3/bin${ 
         PATH:+:${ 
         PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda-11.3/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
    
  7. 验证是否安装成功

    nvcc -V
    

    在这里插入图片描述

  8. 安装cuDNN,到cudnn-archive下载和CUDA对应的版本

    1.Navigate to your <cudnnpath> directory containing the cuDNN tar file.
    2.Unzip the cuDNN package.
      $ tar -xvf cudnn-linux-x86_64-8.x.x.x_cudaX.Y-archive.tar.xz
    3. Copy the following files into the CUDA toolkit directory.
      $ sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda/include 
      $ sudo cp -P cudnn-*-archive/lib/libcudnn* /usr/local/cuda/lib64 
      $ sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
    

    按照↑教程,可下载cuDNN Library for Linux (x86_64)用复制的方式安装,使用如下命令查看安装版本

    cat /usr/local/cuda-11.3/include/cudnn.h | grep CUDNN_MAJOR -A 2
    
  9. 也可下载Runtime LibraryDeveloper Library的deb包,使用sudo dpkg -i xxx.deb命令进行安装,使用如下命令查看安装版本

    cat /usr/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
    
  10. ~/.bashrc文件中添加cudnn环境变量如下:

    export LD_LIBRARY_PATH=/usr/local/cuda-11.3/targets/x86_64-linux/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
    
  11. 多版本CUDA安装重复上述步骤即可,最后通过更改第6步、第10步中环境变量切换CUDA版本

Cuda使用中的一些问题

  • cmake error,报错找不到cuda_cublas_device_library
    解决:出错版本为cuda10.2。cuda10.0版本的libcublas.so在其lib64目录下,cuda11.x版本的libcublas.so在其targets/x86_64-linux/lib/目录下,但cuda10.2放在系统目录中,要升级到高版本cmake才能让其主动找到对应文件。经查其他博文,cuda10.2需要camke3.17以上。cmake升级参考cmake 升级,cmake下载时下那个源码包。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

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


相关推荐

  • Springmvc工作原理详解

    Springmvc工作原理详解关于三层架构和MVC我们的开发架构一般都是基于两种形式,一种是C/S架构,也就是客户端/服务器,另一种是B/S架构,也就是浏览器服务器。在JavaEE开发中,几乎全都是基于B/S架构的开发。那么在B/S架构中,系统标准的三层架构包括:表现层、业务层、持久层。三层架构在我们的实际开发中使用的非常多,所以我们课程中的案例也都是基于三层架构设计的。三层架构中,每一层各司其…

    2022年5月15日
    40
  • SpringBoot请求第三方接口[通俗易懂]

    SpringBoot请求第三方接口[通俗易懂]/*SpringBoot请求第三方接口*/Stringurl=”http://192.168.3.8:8011/file/openadd”;RestTemplateclient=newRestTemplate();//设置请求头HttpHeadersheaders=newHttpHeaders();MediaTypetype=MediaType.pa…

    2022年6月5日
    258
  • 分布式锁的应用场景和三种实现方式的区别_负载均衡策略

    分布式锁的应用场景和三种实现方式的区别_负载均衡策略多线程对同一资源的竞争,需要用到锁,例如Java自带的Synchronized、ReentrantLock。但只能用于单机系统中,如果涉及到分布式环境(多机器)的资源竞争,则需要分布式锁。分布式锁的主要作用:保证数据的正确性:比如:秒杀的时候防止商品超卖,表单重复提交,接口幂等性。避免重复处理数据:比如:调度任务在多台机器重复执行,缓存过期所有请求都去加载数据库。分布式锁的主要特性:互斥:同一时刻只能有一个线程获得锁。可重入:当一个线程获取锁后,还可以再次获取这个锁,避免死锁发生。高可用:当

    2025年10月5日
    4
  • 网络编程初识和socket套接字[通俗易懂]

    网络的产生不同机器上的程序要通信,才产生了网络:凡是涉及到倆个程序之间通讯的都需要用到网络软件开发架构软件开发架构的类型:应用类、web类应用类:qq、微信、网盘、优酷这一类是属于需要安装的桌

    2022年3月29日
    86
  • Spring Cloud微服务架构图

    Spring Cloud微服务架构图SpringCloud微服务架构图相关技术名词说明SpringCloudGatewaySpringCloudGateway是SpringCloud的一个全新项目,该项目是基于Spring5.0,SpringBoot2.0和ProjectReactor等技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的API路由管理方式。SpringCloudGateway是基于WebFlux框架实现的,而WebFlux框架底层则使用了高性能的Reactor模式通信

    2022年6月17日
    32
  • 知识图谱—知识推理综述(三)

    知识图谱—知识推理综述(三)知识图谱—知识推理综述(三)接上一篇文章知识图谱—知识推理综述(二)3基于表示的知识推理3.1方法简述在之前所介绍的知识推理中,都显示的定义了知识推理所需要的规则,条件等等离散符号。而在基于表示的知识推理中,我们第一步是将知识图谱中的节点和关系进行连续向量空间的映射,需要将其物理表示映射为数值表示,然后在利用数学中的相关算法,通过数值计算的方式进行知识推理。对于映射的向量空间而言,其可以是一个或者多个的向量或者矩阵。基于表示的推理的核心在于“如何表示”,在表示学习的过程中,我们需要的是让算法自

    2022年5月12日
    43

发表回复

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

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