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,即配置成功。
相关推荐
_nibel20 小时前
第三章:Details 剩余数据补读 ⭐教你读懂 Nsight Compute 报告 系列合集⭐
cuda·ncu·nsight compute
Starry-sky(jing)4 天前
onnxruntime 安装后 GPU 没加速?3 条命令确认它跑在 CPU 还是 GPU
python·gpu·cuda·onnxruntime·推理加速
Escalating_xu10 天前
【Python】使用库:标准库、第三方库、pip、项目实战与程序打包
java·python·pip
论文复现现场10 天前
LAMMPS 用 RTX 5090 能跑多大?32GB 显存、CUDA 编译与规模验证
cuda·分子动力学·lammps·rtx5090
EatFan10 天前
从 CUDA 到昇腾:一张对照表拆解 DeepSeek 最新开源组件(TileLang / DeepGEMM / DeepEP / TileKernels)
开源·cuda·deepseek·deepgemm·tilelang·华为昇腾
青春不朽51212 天前
pip 安装慢、超时、报错?一份国内源配置 + 9 个高频报错对照表
pip
论文复现现场12 天前
RTX 3090 24GB 适合科研吗?单卡论文复现、PyTorch 显存检查与 OOM 排错
人工智能·pytorch·python·深度学习·cuda·rtx3090
ysu_031413 天前
uv实战指南-从Python版本虚拟环境到pyproject依赖管理
开发语言·python·pip·uv·虚拟环境·包管理·依赖管理
论文复现现场15 天前
RTX 5090 32GB 适合科研计算吗?单卡训练、推理、论文复现与 OOM 判断方法
pytorch·深度学习·cuda·rtx5090