ubuntu 安装 多版本 cuda 11.4 11.8

2023-11-13

显卡 rtx3060,笔记本已经安装了 cuda 11.4 和 对应的cudnn;现在想要安装 cuda 11.8 和 cudnn 8.8

原理:  新的 driver 可以 兼容 旧的 cuda sdk;

             旧的 driver 不能 兼容 新的cuda sdk;

下载 cuda 11.8

wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run

清理旧的driver

sudo apt-get purge nvidia*
sudo reboot

开始安装 cuda 11.8

sudo sh cuda_11.8.0_520.61.05_linux.run

选项选择:
continue
accept
yes(/usr/local/cuda  ->  new cuda version)

——安装后的提示内容——————————————————————————————

Please make sure that
 -   PATH includes /usr/local/cuda-11.8/bin
 -   LD_LIBRARY_PATH includes /usr/local/cuda-11.8/lib64, or, add /usr/local/cuda-11.8/lib64 to /etc/ld.so.conf and run ldconfig as root
————————————————————————————————————————

sudo reboot

如果x起不来,可以试试执行:

$ sudo init 5

或者 进入advanced ubuntu 模式,启动后再回来


测试:

export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
nvcc --version

下载官方示例:

$ git clone --recursive https://github.com/NVIDIA/cuda-samples.git

$ git tag

$ git checkout v11.8

编译运行

$ cd /cuda-samples/Samples/0_Introduction/vectorAdd
$ make
$ ./vectorAdd

打印:
Test PASSED
Done

—————————————————————————————————————————

安装cudnn_8.8
下载cudnn lib 需要nvidia 开发者账户

下载cudnnxxx.tar.xz

$ tar -xvf cudnnxxx.tar.xz
$ 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*

所有用户都能读

参考:
https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html

测试cudnn

$ git clone --recursive https://github.com/HangJie720/cudnn-samples.git
$ cd cudnn-samples/conv_sample
$ vim Makefile


将 SMS变量的值设置成自己的显卡,比如 rtx3060 为  86
*******
#LL:: SMS ?= 30 35 50 53 60 61 $(SMS_VOLTA)
SMS ?= 86
*******

$ make
$ conv_sample


打印:
Testing single precision
Testing conv
^^^^ CUDA : elapsed = 0.332502 sec,
Test PASSED
Testing half precision (math in single precision)
Testing conv
^^^^ CUDA : elapsed = 2.81334e-05 sec,
Test PASSED

____________________________________________________________________

切换:

改变软连接 ln -s  /usr/local/cuda-11.4   /usr/local/cuda

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

ubuntu 安装 多版本 cuda 11.4 11.8 的相关文章

  • C语言中如何通过内存地址映射函数名和行号?

    如何用 GCC 中的内存地址映射回函数名称和行号 即假设一个 C 语言原型 void func Get the address of caller maybe this could be avoided MemoryAddress get
  • 为什么我可以直接从 bash 执行 JAR?

    我是一个长期从事 Java 工作的人 并且知道运行带有主类的 JAR 的方法MANIFEST MFJar 中的文件很简单 java jar theJar jar 我用它来启动 Fabric3 服务器 包含在bin server jar在其标
  • PHP 无法打开流:是一个目录

    非常简单的 PHP 脚本 我在我亲自设置的 Ubuntu Web 服务器上的 EE 模板中运行 我知道这与权限有关 并且我已经将我尝试写入的目录的所有者更改为 Apache 用户 我得到的错误是 遇到 PHP 错误 严重性 警告 消息 fi
  • docker容器大小远大于实际大小

    我正在尝试从中构建图像debian latest 构建后 报告的图像虚拟大小来自docker images命令为 1 917 GB 我登录查看尺寸 du sh 大小为 573 MB 我很确定这么大的尺寸通常是不可能的 这里发生了什么 如何获
  • 查找哪些页面不再与写入时复制共享

    假设我在 Linux 中有一个进程 我从中fork 另一个相同的过程 后forking 因为原始进程将开始写入内存 Linux写时复制机制将为进程提供与分叉进程使用的不同的唯一物理内存页 在执行的某个时刻 我如何知道原始进程的哪些页面已被写
  • Git 无法识别重命名和修改的包文件

    我有一个名为的java文件package old myfile java 我已经通过 git 提交了这个文件 然后我将我的包重命名为new所以我的文件在package new myfile java 我现在想将此文件重命名 和内容更改 提交
  • 在脚本内使用不带密码的 sudo

    由于某种原因 我需要作为用户在没有 sudo 的情况下运行脚本 script sh 该脚本需要 root 权限才能工作 我认为将 sudo 放入 script sh 中是唯一的解决方案 让我们举个例子 script sh bin sh su
  • Linux 上有关 getBounds() 和 setBounds() 的 bug_id=4806603 的解决方法?

    在 Linux 平台上 Frame getBounds 和 Frame setBounds 的工作方式不一致 这在 2003 年就已经有报道了 请参见此处 http bugs java com bugdatabase view bug do
  • BRISK 特征检测器检测零个关键点

    下面显示的 Brisk 探测器没有给我任何关键点 有人可以提出一个问题吗 我将尝试用一些代码解释我在下面所做的事情 include opencv2 features2d features2d hpp using namespace cv u
  • 是否可以创建一个脚本来保存和恢复权限?

    我正在使用 Linux 系统 需要对一组嵌套文件和目录进行一些权限实验 我想知道是否没有某种方法可以保存文件和目录的权限 而不保存文件本身 换句话说 我想保存权限 编辑一些文件 调整一些权限 然后将权限恢复到目录结构中 将更改的文件保留在适
  • Travis CI 可以在同一存储库的不同分支中使用加密文件吗?

    我正在尝试让 Travis CI 构建在我自己的私人分支和我组织的存储库中工作 我使用以下方法加密了配置文件travis encrypt file命令 它似乎在我自己的 fork 的 travis 设置中创建了两个环境变量 如下所示 加密
  • 删除 Git 存储库,但保留所有文件

    在我使用 Linux 的过程中的某个时刻 我决定将我的主目录中的所有内容都放入源代码管理中是个好主意 我不是在问这是否是一个好主意 我是在问如何撤销它 删除存储库的原因是我最近安装了 Oh My Zsh 而且我非常喜欢它 问题是我的主目录有
  • 需要一些建议来开始在 ARM(使用 Linux)平台上编程

    我 也许 很快就会在托管 Linux 发行版的 ARM 平台上工作 我不知道哪个发行版 我知道该项目涉及视频流 但我无法告诉你更多信息 其实我只收到通知 还没见到任何人 我从来没有在这样的平台上工作过 所以我的想法是在项目开始之前进行测试
  • Git - 远程:错误:无法运行钩子/后接收:没有这样的文件或目录

    我收到错误 remote error cannot run hooks post receive No such file or directory 当尝试推送到远程时 接收后文件存在于正确的位置 testnew git hooks 并包含
  • php exec 返回的结果比直接进入命令行要少

    我有一个 exec 命令 它的行为与通过 Penguinet 给 linux 的相同命令不同 res exec cd mnt mydirectory zcat log file gz echo res 当将命令直接放入命令行时 我在日志文件
  • Linux - 从第二个选项卡获取文本

    假设我们有这样的文件 一些文本11 一些文本12 一些文本13 一些文本21 一些文本22 一些文本23 文本由制表符分隔 我们知道第 1 列中的一些文本 但希望从第 2 列中获取文本 我知道我可以通过以下方式获取线路 grep somet
  • waitpid() 的作用是什么?

    有什么用waitpid 它通常用于等待特定进程完成 或者如果您使用特殊标志则更改状态 基于其进程 ID 也称为pid 它还可用于等待一组子进程中的任何一个 无论是来自特定进程组的子进程还是当前进程的任何子进程 See here http l
  • 进程退出后 POSIX 名称信号量不会释放

    我正在尝试使用 POSIX 命名信号量进行跨进程同步 我注意到进程死亡或退出后 信号量仍然被系统打开 在进程 打开它 死亡或退出后是否有办法使其关闭 释放 早期的讨论在这里 当将信号量递减至零的进程崩溃时 如何恢复信号量 https sta
  • 如果在等待“read -s”时中断,在子进程中运行 bash 会破坏 tty 的标准输出吗?

    正如 Bakuriu 在评论中指出的那样 这基本上与BASH 输入期间按 Ctrl C 会中断当前终端 https stackoverflow com questions 31808863 bash ctrlc during input b
  • 为 RHEL 6 安装/构建 git-svn

    我无权访问 RHEL6 存储库 那么在 RedHat Enterprise Linux 6 上构建和 或安装 git svn 工具的最佳方法是什么 通过卸载现有的 yum擦除git 并从源安装最新的来设法安装git和git svn 1 7

随机推荐

  • 复数乘法是什么?

    逛木虫的时候看到一个很旧的数学帖子被人挖了坟 这个帖子大概是讨论如果把复数看作是向量 那么复数乘法应该怎么看待 向量之间有乘法 例如复数 1 i 和复数 i 其对应的向量分别是 left begin array 20 c 1 1 end a
  • git没有冲突 但是提示有_git 处理冲突步骤

    背景 工程中有一块功能是在别的远程分支上的 然后自己的分支也是一直在更新的 现在要将该分支上的信功能合到自己的分支上 于是采用了git cherry pick的方法 但是出现了报错 查了许多网上的资料最后总结出处理冲突的步骤 具体实现 输入
  • [实习]Skywalking

    SkyWalking 1 是什么 skywalking是一个包含监控 追踪 并拥有故障诊断能力的分布式系统 它主要的作用是全链路监控 收集数据 分析处理数据 然后可视化呈现 这么说有点抽象 接下来画图来说 这是skywalking的架构 它
  • VscodeSSH免密远程登录服务器

    1 windows下cmd或git bash 或powershell等输入 ssh keygen 指令输入后一直回车 在C Users user name ssh路径下生成如下文件 2 linux服务器Terminal输入 ssh keyg
  • 【SVN命令】之 revert

    名称 子命令Svn revert 取消所有的本地编辑 概要 子命令Svn revert PATH 描述 Reverts any local changes to a file or directory and resolves any co
  • nodejs HelloWorld

    nodejs 服务器端 HelloWorld 程序 a hello js d02 hollo js var http require http http createServer function request response 请求对象
  • C++&Qt 各种数据类型转换

    1 uint64转QString QString strfilerename QString 1 arg nFileID nFileID为uint64类型 QString number nFileID 2 QString转超长数字串 QSt
  • 计算机图形学GAMES101(三)变换(模型、视图、投影)

    补充内容 R 是逆时针方向旋转的矩阵 R 是顺时针方向旋转的矩阵 可以发现R T R 1 像这样的矩阵叫做正交矩阵 以后如果要求往相反的方向旋转相同角度的变换 R 只需要求正向旋转的矩阵然后转置就可以了 本节涉及内容 仿射变换 线性变换 平
  • LeetCode-Python-389. 找不同

    给定两个字符串 s 和 t 它们只包含小写字母 字符串 t 由字符串 s 随机重排 然后在随机位置添加一个字母 请找出在 t 中被添加的字母 示例 输入 s abcd t abcde 输出 e 解释 e 是那个被添加的字母 第一种思路 转成
  • Java笔记:泛型、限定通配符与非限定通配符

    目录 1 泛型 2 限定通配符与非限定通配符 2 1 限定通配符 2 2 非限定通配符 3 PECS Producer Extends Consumer Super 原则 3 1 Producer Extends 3 2 Consumer
  • jar文件怎么打开 查看jar文件内容操作方法

    jar文件怎么打开 查看jar文件内容操作方法 jar文件是java项目生成的一个小的文件项目 也可以描述为一个java压缩包 里面封装了 许多java类以及方法 变量 很多用户想要查看jar文件内容 可是却不知道jar文件怎么打开 下面小
  • TorchServe环境构建+模型更新+新模型注册

    目录 1 背景 2 torchserve环境搭建 2 1jdk环境搭建 2 2 python 环境搭建 2 3 启动服务 2 3 1 注册模型 2 3 2 模型查看 2 3 3 接口调用 3 进阶功能 3 1 模型多版本管理 3 2 新模型
  • NLP神器Gensim库(一):入门操作

    Gensim是一款开源的第三方Python工具包 用于从原始的非结构化的文本中 无监督地学习到文本隐层的主题向量表达 它支持包括TF IDF LSA LDA 和word2vec在内的多种主题模型算法 支持流式训练 并提供了诸如相似度计算 信
  • 【值得收藏的种子搜索引擎】

    种子搜索引擎和磁力搜索引擎是用于搜索和下载种子文件和磁力链接的工具 本文将介绍五个值得收藏的子搜索引擎和磁力搜索引擎 并提供两个示例说明 BT Kitty BT Kitty是一个功能强大的子搜索引 可以搜索各种类型的种子文件和磁力链接 它的
  • nextjs开发 + vercel 部署 ssr ssg

    前言 最近想实践下ssr 就打算用nextjs 做一个人博客 vercel 部署 提供免费域名 来学习实践下ssr ssg nextjs 一个轻量级的react服务端渲染框架 vercel 由 Next js 的创建者制作 支持nextjs
  • FlinkCDC-自定义序列化器

    package com lcy app customer import com alibaba fastjson JSONObject import com alibaba ververica cdc debezium DebeziumDe
  • 【前端】React使用react-markdown+antd实现引入渲染markdown文件

    项目中遇见一个需求 要求直接在浏览器打开markdown文件进行预览 初次使用遇见一些坎坷 以下记录实现过程 将其封装成了一个组件 1 下载依赖 yarn add react markdown 其余样式插件 yarn add remark
  • centos7安装mysql5.7

    一 下载mysql5 7 1 下载地址 点击跳转 2 然后上传到服务器上面 解压命令 tar xvf mysql 5 7 36 1 el7 x86 64 rpm bundle tar 3 解压后得到以下的rpm包 4 依次安装所需要的rpm
  • 因为错误消息指示这是由于上一个问题导致的错误,没有写入 apport 报告。

    依赖关系问题 仍未被配置dpkg 依赖关系问题使得 smbclient 的配置工作不能继续 smbclient 依赖于 samba common 2 3 5 8 dfsg 1ubuntu2 3 然而 软件包 samba common 尚未配
  • ubuntu 安装 多版本 cuda 11.4 11.8

    显卡 rtx3060 笔记本已经安装了 cuda 11 4 和 对应的cudnn 现在想要安装 cuda 11 8 和 cudnn 8 8 原理 新的 driver 可以 兼容 旧的 cuda sdk 旧的 driver 不能 兼容 新的c