ubuntu多版本cuda如何指定cuda版本

本文作者: slience_me


ubuntu多版本cuda如何指定cuda版本

文章目录

  • ubuntu多版本cuda如何指定cuda版本
    • [1. 关于cuda设置](#1. 关于cuda设置)
      • [1.1 查看当前安装的 CUDA 版本](#1.1 查看当前安装的 CUDA 版本)
      • [1.2 下载并安装所需的 CUDA 版本](#1.2 下载并安装所需的 CUDA 版本)
      • [1.3 设置环境变量](#1.3 设置环境变量)
      • [1.4 验证切换](#1.4 验证切换)
      • [1.5 安装对应的 NVIDIA 驱动程序](#1.5 安装对应的 NVIDIA 驱动程序)
    • [2. 设置环境变量](#2. 设置环境变量)
      • [2.1 打开终端](#2.1 打开终端)
      • [2.2 编辑 `~/.bashrc` 或 `~/.zshrc`](#2.2 编辑 ~/.bashrc~/.zshrc)
      • [2.3 添加环境变量](#2.3 添加环境变量)
      • [2.4 保存并退出](#2.4 保存并退出)
      • [2.5 使更改生效](#2.5 使更改生效)
      • [2.6 验证更改](#2.6 验证更改)

1. 关于cuda设置

在 Ubuntu 系统上选择和管理 CUDA 的多个版本可以通过以下步骤进行:

1.1 查看当前安装的 CUDA 版本

你可以通过以下命令查看当前安装的 CUDA 版本:

bash 复制代码
nvcc --version

1.2 下载并安装所需的 CUDA 版本

你可以从 NVIDIA CUDA Toolkit 下载页面 下载你需要的 CUDA 版本。选择你的操作系统(Linux)、架构(x86_64)、发行版(Ubuntu)和版本,然后按照提示下载并安装。

1.3 设置环境变量

每个 CUDA 版本都会安装在不同的目录中,例如 /usr/local/cuda-10.1, /usr/local/cuda-10.2 等。你可以通过设置环境变量 CUDA_HOME 和修改 PATH 来切换不同的 CUDA 版本。

以下是一个示例脚本,可以根据你需要的 CUDA 版本进行修改:

bash 复制代码
# 切换到 CUDA 10.1
export CUDA_HOME=/usr/local/cuda-10.1
export PATH=$CUDA_HOME/bin:$PATH
export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH

# 切换到 CUDA 10.2
# export CUDA_HOME=/usr/local/cuda-10.2
# export PATH=$CUDA_HOME/bin:$PATH
# export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH

你可以将这个脚本添加到你的 ~/.bashrc~/.zshrc 文件中,或者每次需要切换 CUDA 版本时手动运行这个脚本。

1.4 验证切换

切换 CUDA 版本后,可以运行以下命令来验证切换是否成功:

bash 复制代码
nvcc --version

这个命令将显示当前使用的 CUDA 版本。

1.5 安装对应的 NVIDIA 驱动程序

确保你安装了与所需 CUDA 版本兼容的 NVIDIA 驱动程序。如果需要更新或切换驱动程序,可以使用以下命令:

bash 复制代码
sudo ubuntu-drivers devices
sudo ubuntu-drivers autoinstall

或者你也可以从 NVIDIA 驱动程序下载页面 手动下载并安装所需的驱动程序。

通过以上步骤,你可以在 Ubuntu 系统上管理和切换多个 CUDA 版本。

2. 设置环境变量

在 Ubuntu 上修改环境变量可以通过编辑 ~/.bashrc~/.zshrc 文件来实现,具体取决于你使用的是 Bash 还是 Zsh。以下是详细步骤:

2.1 打开终端

2.2 编辑 ~/.bashrc~/.zshrc

如果你使用的是 Bash,编辑 ~/.bashrc 文件:

bash 复制代码
nano ~/.bashrc

如果你使用的是 Zsh,编辑 ~/.zshrc 文件:

bash 复制代码
nano ~/.zshrc

2.3 添加环境变量

在文件末尾添加以下行来设置 CUDA 环境变量。例如,假设你有两个 CUDA 版本:10.1 和 10.2,你可以按以下方式添加:

bash 复制代码
# 设置 CUDA 10.1 环境变量
export CUDA_HOME=/usr/local/cuda-10.1
export PATH=$CUDA_HOME/bin:$PATH
export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH

如果你需要切换到 CUDA 10.2,则可以将上述代码注释掉,并添加如下代码:

bash 复制代码
# 设置 CUDA 10.2 环境变量
# export CUDA_HOME=/usr/local/cuda-10.1
# export PATH=$CUDA_HOME/bin:$PATH
# export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH

export CUDA_HOME=/usr/local/cuda-10.2
export PATH=$CUDA_HOME/bin:$PATH
export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH

你也可以使用条件语句来更灵活地切换 CUDA 版本:

bash 复制代码
# 根据需要选择 CUDA 版本
if [ "$CUDA_VERSION" == "10.1" ]; then
    export CUDA_HOME=/usr/local/cuda-10.1
elif [ "$CUDA_VERSION" == "10.2" ]; then
    export CUDA_HOME=/usr/local/cuda-10.2
fi
export PATH=$CUDA_HOME/bin:$PATH
export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH

然后在需要切换版本时设置 CUDA_VERSION 环境变量,例如:

bash 复制代码
export CUDA_VERSION=10.1
source ~/.bashrc  # 或者 source ~/.zshrc

2.4 保存并退出

编辑完成后,按 Ctrl+O 保存文件,然后按 Ctrl+X 退出编辑器。

2.5 使更改生效

运行以下命令使更改生效:

bash 复制代码
source ~/.bashrc  # 如果使用的是 Bash
source ~/.zshrc   # 如果使用的是 Zsh

2.6 验证更改

可以通过以下命令验证环境变量是否设置正确:

bash 复制代码
echo $CUDA_HOME
nvcc --version

通过这些步骤,你可以方便地修改和管理环境变量,以切换不同的 CUDA 版本。

相关推荐
吴声子夜歌8 小时前
TypeScript——基础类型(三)
java·linux·typescript
DA02218 小时前
系统移植-STM32MP1启动详解(BootROM)
linux·bsp·系统移植
春日见8 小时前
自驾算法的日常工作?如何提升模型性能?
linux·人工智能·机器学习·计算机视觉·自动驾驶
李彦亮老师(本人)8 小时前
【Linux系统】Rocky Linux 9.7操作系统简介
linux·运维·服务器·docker·kubernetes
minji...9 小时前
Linux 进程信号(二)信号的保存,sigset_t,sigprocmask,sigpending
linux·运维·服务器·网络·数据结构·c++·算法
A.A呐9 小时前
【Linux第二十章】socket
linux
何中应9 小时前
Grafana如何重置密码
linux·运维·服务器·grafana
charlie11451419110 小时前
2026年正点原子开发板移植方案——从0开始的Rootfs之路(3)inittab 与 init 系统:Linux 启动的“第一号进程“全解析
linux·驱动开发·学习·嵌入式开发·嵌入式linux
xlp666hub10 小时前
深度剖析 Linux Input 子系统(3):从零写一个 Input 驱动,最详细手把手(附完整代码)
linux·面试
贺小涛10 小时前
jenkins
运维·jenkins