pip 隔离环境内 安装 cuda 113 不覆盖原有的全局 cuda 115

需要先在服务器上安装CUDA 11.3(独立安装,不覆盖现有11.5),之后再按之前的方法配置虚拟环境专属使用CUDA 11.3,以下是完整的CUDA 11.3安装+虚拟环境隔离配置流程

第一步:安装CUDA 11.3(独立路径,保留11.5)

1. 检查依赖(Ubuntu系统为例)
bash 复制代码
# 安装必备依赖
sudo apt update
sudo apt install -y gcc make libxi-dev libxmu-dev libglu1-mesa-dev freeglut3-dev
2. 下载并安装CUDA 11.3
bash 复制代码
# 进入临时目录
cd /tmp
# 下载CUDA 11.3.1安装包(适配x86_64架构,Ubuntu 20.04,其他系统替换链接)
wget https://developer.download.nvidia.com/compute/cuda/11.3.1/local_installers/cuda_11.3.1_465.19.01_linux.run

# 添加执行权限
chmod +x cuda_11.3.1_465.19.01_linux.run

# 核心:安装到/usr/local/cuda-11.3,不装驱动(避免覆盖现有显卡驱动)
sudo sh cuda_11.3.1_465.19.01_linux.run \
  --override \
  --toolkit \
  --toolkitpath=/home/cscai/cuda-11.3 \
  --no-drm \
  --no-man-page 

若服务器是CentOS系统,替换依赖安装命令:sudo yum install -y gcc make libXi-devel libXmu-devel mesa-libGLU-devel freeglut-devel

3. 验证CUDA 11.3安装成功
bash 复制代码
# 临时加载CUDA 11.3环境
export CUDA_HOME=/home/cscai/cuda-11.3
export PATH=$CUDA_HOME/bin:$PATH
# 检查版本(输出应包含release 11.3)
nvcc -V

第二步:配置虚拟环境专属使用CUDA 11.3

(接你之前的需求,仅指定虚拟环境用11.3,全局仍用11.5)

1. 激活目标虚拟环境
bash 复制代码
source /home/cscai/.virtualenvs/Point-MAE/bin/activate
2. 修改虚拟环境的activate脚本(自动加载11.3)
bash 复制代码
vim /home/cscai/.virtualenvs/Point-MAE/bin/activate
# 仅在 virtualenv 激活后执行

# 保存 CUDA 环境
_OLD_CUDA_HOME="$CUDA_HOME"
_OLD_PATH="$PATH"
_OLD_LD_LIBRARY_PATH="$LD_LIBRARY_PATH"

# 保存原始 deactivate 函数
_old_deactivate="$(declare -f deactivate)"

# 设置 CUDA 11.3
export CUDA_HOME=/home/cscai/cuda-11.3
export PATH="$CUDA_HOME/bin:$PATH"
export LD_LIBRARY_PATH="$CUDA_HOME/lib64:$LD_LIBRARY_PATH"

# 重写 deactivate
deactivate () {
    # 先恢复 CUDA
    export CUDA_HOME="$_OLD_CUDA_HOME"
    export PATH="$_OLD_PATH"
    export LD_LIBRARY_PATH="$_OLD_LD_LIBRARY_PATH"

    unset _OLD_CUDA_HOME _OLD_PATH _OLD_LD_LIBRARY_PATH

    # 恢复原 deactivate 并执行
    eval "$_old_deactivate"
    deactivate
}

# 保存退出:Esc → :wq → 回车
3. 验证虚拟环境隔离效果
bash 复制代码
# 激活环境(自动加载11.3)
source /home/cscai/.virtualenvs/Point-MAE-main/bin/activate
nvcc -V  # 输出release 11.3
python -c "import torch; print(torch.version.cuda)"  # 若装了torch1.11.0+cu113,输出11.3

# 退出环境(恢复11.5)
deactivate
nvcc -V  # 输出release 11.5

关键注意事项

  1. 驱动兼容 :CUDA 11.3需要显卡驱动版本≥465.19.01,若服务器现有驱动版本低于此,需先升级驱动(但会影响全局,建议确认:nvidia-smi查看驱动版本);
  2. 无冲突:CUDA 11.3和11.5独立安装,全局默认仍为11.5,仅目标虚拟环境生效11.3。

总结

  1. 先通过指定路径安装CUDA 11.3,避免覆盖现有11.5;
  2. 修改目标虚拟环境的activate脚本,实现"激活环境=用11.3,退出=恢复11.5";
  3. 验证核心:激活环境后nvcc -V显示11.3,退出后显示11.5,即配置成功。
相关推荐
小烤箱8 小时前
CUDA 编程完全理解系列(第二篇):从 Block 生命周期理解调度
自动驾驶·cuda·并行计算·感知算法
KIDGINBROOK10 小时前
Blackwell架构学习
gpu·cuda·blackwell
REDcker11 小时前
Nvidia英伟达显卡型号发布史与架构演进详解
架构·gpu·显卡·nvidia·cuda·英伟达·演进
万粉变现经纪人1 天前
如何解决 pip install mysqlclient 报错 ‘mysql_config’ not found 问题
数据库·python·mysql·pycharm·bug·pandas·pip
小烤箱2 天前
CUDA 编程完全理解系列(第一篇):GPU 的设计哲学与硬件架构基础
自动驾驶·硬件架构·cuda·并行计算·感知算法
英雄各有见2 天前
Chapter 5.1.1: 编写你的第一个GPU kernel——Cuda Basics
c++·gpu·cuda·hpc
hui函数2 天前
如何解决 pip install 编译报错 ‘cl.exe’ not found(缺少 VS C++ 工具集)问题
开发语言·c++·pip
hui函数2 天前
Python系列Bug修复|如何解决 pip install 安装报错 invalid command ‘bdist_wheel’(缺少 wheel)问题
python·bug·pip
hui函数2 天前
Python系列Bug修复|如何解决 pip install -r requirements.txt 私有索引未设为 trusted-host 导致拒绝 问题
python·bug·pip