NVIDIA Jetson 快速切换CUDA版本| 多CUDA版本

当NVIDIA Jetson中安装了多个CUDA时,可以通过命令,快速切换不同版本的。

这样在环境变量和代码编译时,能使用指定版本的CUDA了。

本文适用于Jetson Nano、TX1/TX2、Xavier 和 Orin系列的设备,供大家参考。

cuda参考地址:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/contents.html

首先看一下当前系统的CUDA 版本

根据 ls /usr/local/ 的输出,系统包含以下 CUDA 版本:

  • cuda-12
  • cuda-12.2
  • cuda-12.6

然后查看 /usr/local/cuda

ls -l /usr/local/cuda

如果/usr/local/cuda 通过符号链接指向了 /etc/alternatives/cuda(这是 update-alternatives 工具的默认管理路径)

这样我们可以通过系统级工具实现多版本 CUDA 切换。

步骤 1:注册所有 CUDA 版本

# 注册已安装版本(优先级数值越大优先级越高)
sudo update-alternatives --install /usr/local/cuda cuda /usr/local/cuda-12.6 200
sudo update-alternatives --install /usr/local/cuda cuda /usr/local/cuda-12.2 150
sudo update-alternatives --install /usr/local/cuda cuda /usr/local/cuda-12 100

步骤 2:交互式选择版本

sudo update-alternatives --config cuda

执行后会显示类似以下菜单:

There are 3 choices for the alternative cuda (providing /usr/local/cuda).Selection    Path                    Priority   Status
------------------------------------------------------------
* 0            /usr/local/cuda-12.6    200       auto mode1            /usr/local/cuda-12      100       manual mode2            /usr/local/cuda-12.2    150       manual mode3            /usr/local/cuda-12.6    200       manual modePress <enter> to keep the current choice[*], or type selection number:

输入目标版本的编号(如切换到 12.2 则输入 2)后按回车。

步骤 3:设置环境变量

 检查并修改用户配置文件( ~/.bashrc):

# 替换为动态引用符号链接路径:
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

然后应用配置:

source ~/.bashrc

验证切换结果

nvcc -V  # 检查 CUDA 编译器版本
ls -l /usr/local/cuda  # 确认链接指向已更新

分享完成~

相关文章推荐:

NVIDIA Jetson 环境安装指导 PyTorch | Conda | cudnn | docker-CSDN博客

Nvidia Jetson 安装谷歌拼音googlepinyin-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/76704.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

当开源邂逅AI,公益长出翅膀 | 回顾3.30 上海「开源×AI 赋能公益」Meetup

在春和景明的三月&#xff0c;一场打破常规的公益聚会在上海剪爱公益发展中心肇清项目点温暖上演。这&#xff0c;便是G-Star公益行带来的「开源AI 赋能公益」Meetup&#xff0c;一场技术与善意交织、创新与温暖共生的奇妙之旅。 活动现场&#xff0c;没有高冷的技术壁垒&#…

高阶函数/柯里化/纯函数

本篇文章主要是介绍一下标题里面的概念&#xff0c;在面试的时候经常文档&#xff0c;结合阅读到的资料&#xff0c;结合本人的个人见解出品了该文章&#xff0c;如有写的不好的地方或理解有误的&#xff0c;还望阁下多多指教。 1、高阶函数 什么是高阶函数&#xff1f; 接受…

Docker+Jenkins+Gitee自动化项目部署

前置条件 docker安装成功 按照下面配置加速 sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-EOF {"registry-mirrors": ["https://register.librax.org"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker一、…

穿梭在数字王国:Python进制转换奇遇记

穿梭在数字王国:Python进制转换奇遇记 想象一下,你是一位勇敢的探险家,正在穿越神秘的"数字王国"。在这个王国里,不同的地区使用着不同的语言(或者说,进制)。二进制村的居民只懂"0"和"1";八进制镇的人们使用0到7的数字;而十六进制城的…

FileInputStream 详解与记忆方法

FileInputStream 详解与记忆方法 一、FileInputStream 核心概念 FileInputStream 是 Java 中用于从文件读取原始字节的类&#xff0c;继承自 InputStream 抽象类。 1. 核心特点 特性说明继承关系InputStream → FileInputStream数据单位字节&#xff08;8bit&#xff09;用…

设计模式 四、行为设计模式(2)

五、状态模式 1、概述 状态设计模式是一种行为型设计模式&#xff0c;它允许对象在其内部状态发生时改变其行为&#xff0c;这种模式可以消除大量的条件语句&#xff0c;并将每个状态的行为封装到单独的类中。 状态模式的主要组成部分如下&#xff1a; 1&#xff09;上…

大模型学习八:‌Sealos 私有化部署之VMware 安装ubuntu22.04 虚拟机安装(实操)

一、说明 windows 11 ubuntu22.04.5 安装5个虚拟机&#xff0c;3个master 2个node 二、安装 Vmware 17&#xff08;没成功&#xff0c;但你可以成功&#xff09; 我的电脑配置比较旧&#xff0c;直接提示处理器不支持xsave 无法打开虚拟机的电源&#xff0c;网上方法试过了…

Win32++ 使用初探

文章目录 1. 环境要求2. Win32安装3. 项目创建3.1 项目创建&#xff08;1&#xff09;直接使用Win32里的示例Sample&#xff08;2&#xff09;自行创建项目 最近想用 VC写些 UI&#xff0c;但又不太想用 MFC&#xff0c;正好对界面要求不太高&#xff0c;就使用了一下 Win3…

R 语言科研绘图第 38 期 --- 饼状图-玫瑰

在发表科研论文的过程中&#xff0c;科研绘图是必不可少的&#xff0c;一张好看的图形会是文章很大的加分项。 为了便于使用&#xff0c;本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中&#xff0c;获取方式&#xff1a; R 语言科研绘图模板 --- sciRplothttps://mp.…

Linux驱动开发进阶(六)- 多线程与并发

文章目录 1、前言2、进程与线程3、内核线程4、底半步机制4.1、软中断4.2、tasklet4.3、工作队列4.3.1、普通工作项4.3.2、延时工作项4.3.3、工作队列 5、中断线程化6、进程6.1、内核进程6.2、用户空间进程 7、锁机制7.1、原子操作7.2、自旋锁7.3、信号量7.4、互斥锁7.5、comple…

第四节:React Hooks进阶篇-useEffect依赖项为空数组[]与不写的区别

陷阱题&#xff1a;闭包问题、Stale Closure举例 一、依赖项为空数组[]与不写的核心区别 行为空数组[]不写依赖项执行时机仅在组件挂载时执行一次&#xff08;类似componentDidMount&#xff09;组件每次渲染后都执行&#xff08;类似componentDidUpdate&#xff09;更新触发…

【第39节】windows编程:打造MFC版本任务管理器

目录 一、项目概述 二、项目开发的各种功能关键 2.1 进程信息的获取 2.2 线程信息的获取 2.3 进程模块信息的获取 2.3.1 模块快照 2.3.2 枚举模块 2.4 进程堆信息的获取 2.5 窗口信息的获取 2.6 文件信息的获取 2.7 内存信息和CPU占用率的获取 2.7.1 内存信息相关结…

计算轴承|滚动轴承故障频率

一、轴承故障频率概述 在旋转机械故障诊断中&#xff0c;轴承故障频率&#xff08;BPFO、BPFI、BSF、FTF&#xff09;是重要的分析依据。通过计算这些特征频率&#xff0c;可以帮助工程师&#xff1a; 识别轴承故障类型&#xff08;内圈/外圈/滚动体故障&#xff09;制定振动…

【数据结构与算法】ArrayList 和 顺序表

文章目录 &#x1f332;List&#x1f332;1. 线性表&#x1f332;2. 顺序表&#x1f33f;2.1 MyArrayList2.1.1 类中重写所有接口方法1.新增元素2.在pos位置新增元素(指定位置)3.判定是否包含了某个特定元素 4.查找特定元素对应的位置 5.获取pos下标的元素 6.给pos位置的元素替…

OceanBase 推出单机版 ,为中小规模业务提供高性价比方案

近日&#xff0c;OceanBase正式推出了全新的单机版数据库。这款产品基于OceanBase自主研发的单机分布式一体化架构&#xff0c;具有精简的架构设计和出色的兼容性&#xff0c;能够为中小规模业务场景提供高性价比的数据库解决方案&#xff0c;充分满足客户在不同业务规模下的多…

如何在 Vue 3 中实现百度地图位置选择器组件

如何在 Vue 3 中实现百度地图位置选择器组件 前言 在开发前端应用时&#xff0c;地图选择器是一个非常常见的需求。尤其是在一些需要用户选择地址的场景&#xff0c;如电商平台、旅游网站、酒店预定等&#xff0c;百度地图组件能提供准确的地理位置服务。在本文中&#xff0c…

Python中如何用正则表达式精准匹配IP地址?

在网络编程和数据处理时&#xff0c;我们经常需要从文本中提取或验证IP地址。Python的正则表达式(re模块)是完成这个任务的利器。但你知道怎么写才能准确匹配各种合法的IP地址吗&#xff1f;今天我们就来详细探讨这个问题。 为什么需要IP正则表达式&#xff1f; 假设你正在分…

spring--声明式事务

声明式事务 1、回顾事务 要么都成功&#xff0c;要么都失败&#xff01; 事务在项目开发中&#xff0c;十分重要&#xff0c;涉及数据的一致性问题 确保完整性和一致性 事务ACID&#xff1a; 原子性&#xff1a;事务是原子性操作&#xff0c;由一系列动作组成&#xff0c;…

Kotlin 学习-集合

/*** kotlin 集合* List:是一个有序列表&#xff0c;可通过索引&#xff08;下标&#xff09;访问元素。元素可以在list中出现多次、元素可重复* Set:是元素唯一的集合。一般来说 set中的元素顺序并不重要、无序集合* Map:&#xff08;字典&#xff09;是一组键值对。键是唯一的…

WPF 五子棋项目文档

WPF 五子棋项目文档 1. 项目概述 本项目是一个使用 Windows Presentation Foundation (WPF) 技术栈和 C# 语言实现的桌面版五子棋&#xff08;Gomoku&#xff09;游戏。它遵循 MVVM&#xff08;Model-View-ViewModel&#xff09;设计模式&#xff0c;旨在提供一个结构清晰、可…