Torch未编译CUDA支持问题:VSCode中GPU加速验证失败求助
问题解决指南
一、解决Torch未编译CUDA支持的问题
你遇到的AssertionError: Torch not compiled with CUDA enabled报错,核心原因是当前安装的PyTorch为纯CPU版本,和系统CUDA toolkit无关,需安装对应CUDA版本的PyTorch包:
- 卸载现有torch组件:
pip uninstall torch torchvision torchaudio -y - 针对CUDA 12.1安装适配的PyTorch 2.0.1:
pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu121 - 验证安装结果:
在VSCode终端(需激活对应环境)运行:import torch print(torch.cuda.is_available()) # 正常应输出True print(torch.version.cuda) # 正常应显示12.1
二、解决CUDA版本切换无效的问题
nvcc --version和nvidia-smi版本不一致是正常现象,两者定义不同:
nvidia-smi显示的是显卡驱动支持的最高CUDA版本,驱动不更换的话这个值不会变;nvcc --version显示的是当前系统PATH中优先级最高的CUDA toolkit版本。
要彻底切换CUDA版本,按以下步骤操作:
完全卸载旧CUDA:
- 打开「控制面板 > 程序和功能」,卸载所有含
NVIDIA CUDA字样的程序(包括Toolkit、Patch、Runtime等); - 删除默认安装目录
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA; - 删除系统环境变量中所有旧CUDA相关条目(如
CUDA_PATH、CUDA_PATH_Vxx.x,以及Path内的CUDA路径)。
- 打开「控制面板 > 程序和功能」,卸载所有含
安装新CUDA版本:
- 下载目标版本的CUDA Toolkit,选择自定义安装,可取消勾选Visual Studio Integration等非必需组件;
- 安装完成后,检查系统环境变量:确保
CUDA_PATH指向新安装目录,且Path中新增的CUDAbin和libnvvp路径排在最前列。
验证切换效果:
关闭所有终端和VSCode后重新打开,在命令提示符运行:nvcc --version此时应显示新安装的CUDA版本。
三、VSCode环境排查
确保VSCode使用正确的Python环境:
- 点击VSCode左下角的Python环境选择器,确认选中安装了带CUDA支持PyTorch的虚拟环境/conda环境;
- 运行代码前先激活对应环境(conda环境用
conda activate 环境名,虚拟环境用Scripts\activate)。
内容的提问来源于stack exchange,提问作者Mack Jack
相关产品推荐
相关产品推荐

