Linux Ubuntu安装多个cuda版本

2023-11-10

因为pytorch版本与cuda版本有一定的对应要求,服务器上的cuda是不能自己随便动的,所以需要在自己账户中安装其他版本的cuda,而不能影响其他账户中已安装的cuda。这里参考了多篇博文总结出以下要点。

1. nvcc和nvidia-smi显示的版本不一致的问题

首先关注一个问题:自己账户中安装了其他版本的cuda后,nvcc -V命令会显示自己安装的cuda版本,但nvidia-smi显示的版本不会被更改,关于两者cuda版本的关系,这里直接引用这篇博客

 这里需要注意,按照上面的博客,自己安装的cuda版本(nvcc -V中显示的runtime api版本),是不能高于nvidia-smi中显示的cuda driver api版本的。

2. 安装cuda

官网下载对应版本的cuda,注意,理论上如果要求cuda版本为11.3,那么下载11.3.x版本的cuda都是可以的。以下以11.3.0为例。

 这里推荐下载runfile版本,与deb版本不同的是,runfile可以选择是否安装显卡驱动,因为涉及到额外版本的cuda安装,所以一般是已安装过显卡驱动的,所以不推荐以deb类型安装。按照红框内的命令行下载和安装。

如果第二行安装命令报错:“ Failed to verify gcc version. See log at /var/log/cuda-installer.log for details.”

只需在后面加“--override”即可:

sudo sh cuda_11.3.0_465.19.01_linux.run --override

如下具体的安装过程参考这篇博文

1. 存在驱动,是否删除之前的驱动继续下面的操作?

Existing package manager installation of the driver found. It is strongly recommended that you remove this before continuing.           Abort
Continue

选择 [Continue],回车

2. 是否接受协议

Do you accept the above EULA? (accept/decline/quit): 
accept

选择 [accept],回车

3. 选择安装选项

CUDA Installer                               
 - [ ] Driver                               
      [ ] 450.51.05                         
 + [X] CUDA Toolkit 11.0                     
   [X] CUDA Samples 11.0                     
   [X] CUDA Demo Suite 11.0                 
   [X] CUDA Documentation 11.0               
   Options                                   
   Install

不选驱动(向上移动到“Driver”处,取消“X”),选择 [Install],回车


4. 是否创建软链接

A symlink already exists at /usr/local/cuda. Update to this installation?
Yes
No 

#首次安装,选Yes,安装额外的版本,选No
这里是指将“/usr/local/cuda”所指向的原版本,重新指向新安装的cuda,由于其他账户很可能使用了这个默认的软链接,这里如果选yes,可能会导致该系统下的其他账户需要重新设置。而我们可以后续在自己账户里重新编辑cuda路径,而不使用这个软链接,因此这里选择 [No],回车。

3. 安装cudnn

cudnn版本需要和cuda版本对应,如11.3可以下载8.5、8.6或8.7,这里以8.5的Tar版本为例。

 下载后首先解压:

$ tar -xvf cudnn-linux-x86_64-8.5.0.96_cuda11-archive.tar.xz

之后在解压后的文件夹下打开终端,运行以下命令:

sudo cp include/cudnn.h /usr/local/cuda-11.3/include
sudo cp lib/libcudnn* /usr/local/cuda-11.3/lib64
sudo chmod a+r /usr/local/cuda-11.3/include/cudnn.h /usr/local/cuda-11.3/lib64/libcudnn*

安装完成,可以删除下载和解压的cudnn文件了。运行nvcc -V命令可以看一下是否安装成功。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux Ubuntu安装多个cuda版本 的相关文章

随机推荐

  • Linux环境搭建 JDK,简单超级实用

    Linux环境搭建 JDK 一 将下载的linux版本jdk 解压 解压命令 tar zxvf 文件名 二 配置环境变量 1 用vim编辑器打开profile文件 gt vim etc profile 并在配置文件末尾加上环境变量配置 如下
  • css 网格布局_CSS网格布局:Fr单元

    css 网格布局 介绍 Introduction With CSS Grid Layout we get a new flexible unit the Fr unit Fr is a fractional unit and 1fr is
  • C# GET方式请求时url地址长度超过限制问题解决

    问题分析 一般通过Get方式请求 服务器只能接受url长度不超过2048个字节的请求 问题解决 我们可以将服务器能够接受的最大请求长度设置为100MB 在Web config文件中添加以下配置
  • 自定义MVC框架原理

    目录 一 什么是MVC 1 模型 Model 2 视图 View 3 控制器 Controller 二 自定义mvc核心思想 三 自定义MVC的核心原则 四 三层架构和MVC的区别 1 结构层次不同 2 重点关注不同 3 强调的功能不同 4
  • install Android Studio 1.3 —— VM Acceleration on Linux

    http developer android com tools devices emulator html vm linux Configuring VM Acceleration on Linux Linux based systems
  • 堪称全网最详细的Java八股面试文,面试必备(附答案)

    前言 听一些小伙伴说 近期的面试越来越难了 为了帮大家节约时间 给大家搞来了今年上半年碰到的大厂Java面试题合集 内容非常的全面 耗时半月 终于把牛客网上的互联网大厂Java面试八股文整理成了PDF合集 其中概括的知识点有 java基础
  • virtualenv创建“隔离”的Python运行环境

    Windows 安装mkvirtualenv pip install virtualenv pip install virtualenvwrapper 新建虚拟python环境 1 创建python工程目录 2 创建一个独立的Python运
  • OpenCV教程——Mat对象

    1 Mat对象和IplIamge对象 Mat对象是OpenCV2 0之后引进的图像数据结构 自动分配内存 不存在内存泄漏的问题 是面向对象的数据结构 分为两个部分 头部和数据部分 IplIamge是从2001年OpenCV发布之后就一直存在
  • SpringBoot自学笔记《黑马程序员》

    SpringBoot 文章目录 SpringBoot SpringBoot简介 SpringBoot开发步骤 SpringBoot配置文件 属性配置 YAML格式 YAML读取 多环境配置 配置文件级别 SpringBoot整合junit
  • 20230822 Windows上使用find_package引入OpenCV报错

    报错信息 打开Cmake项目时 find package 报错 Found OpenCV Windows Pack but it has no binaries compatible with your configuration You
  • chipsel语言_未来发行版中可能删除的功能

    未来发行版中可能删除的功能 未来的 Oracle Solaris 软件发行版可能不支持以下功能 LP 打印服务 未来的 Oracle Solaris 发行版可能不包含 LP 打印服务 SPARC 对传统系统的支持 未来的 Oracle So
  • 【华为 OD】

    目录 一 题目描述 二 输入描述 三 输出描述 用例 四 题目解析 五 Java玩法 六 JavaScript玩法 一 题目描述 给定一组数字 表示扑克牌的牌面数字 忽略扑克牌的花色 请按如下规则对这一组扑克牌 进行整理 步骤 1 对扑克牌
  • 备份技术

    备份技术 备份技术是灾难恢复技术的一个基础 没有使用备份技术进行全面 及时以及准确的备份 就无法进行灾难恢复 1 备份策略 备份策略的制定是备份系统的一个重要部分 备份策略的选择依赖于数据的重要性 允许备份的可用时间以及其他的一些因素 一般
  • 序列化与反序列化(1)Serializable —— Java原生态方法

    摘自 序列化与反序列化 1 Serializable Java原生态方法 作者 丶PURSUING 发布时间 2021 05 08 19 20 21 网址 https blog csdn net weixin 44742824 articl
  • windows11安装docker时,修改默认安装到C盘

    1 修改默认安装到C盘 2 如果之前安装过docker 请删除如下目录 C Program Files Docker 3 在D盘新建目录 D Program Files Docker 4 win r 以管理员权限运行cmd 5 在cmd中执
  • MySQL权限详解

    本文为joshua317原创文章 转载请注明 转载自joshua317博客 https www joshua317 com article 55 MySQL提供了哪些权限 MySQL提供的权限列表如图所示 其中 All或者Allprivil
  • 一步一步学区块链(1)概念了解

    区块链是分布式数据存储 点对点传输 共识机制 加密算法等计算机技术的 新型应用模式 所谓共识机制是区块链系统中实现不同节点之间建立信任 获取权益的数学算法 含义 比特币 BitCoin 的概念最初由中本聪在2009年提出 根据中本聪的思路设
  • PageHelper中的RowBounds

    RowBounds是处理ResultSet结果集进行分页 也就是说是mybatis默认实现是逻辑分页 并不是物理分页 但PageHelper将这个类利用起来进行了物理分页 PageHelper的其中一种使用方式就是将RowBounds参数获
  • DRM驱动代码分析:色彩管理

    高通PQ有哪些子模块 DSPP sub blocks SDE DSPP IGC DSPP Inverse gamma correction block SDE DSPP PCC Panel color correction block SD
  • Linux Ubuntu安装多个cuda版本

    因为pytorch版本与cuda版本有一定的对应要求 服务器上的cuda是不能自己随便动的 所以需要在自己账户中安装其他版本的cuda 而不能影响其他账户中已安装的cuda 这里参考了多篇博文总结出以下要点 1 nvcc和nvidia sm