You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在Anaconda启动的Jupyter Notebook中配置GPU(PyTorch检测CUDA不可用)

如何在Anaconda启动的Jupyter Notebook中配置GPU(PyTorch检测CUDA不可用)

我之前也遇到过一模一样的问题,折腾了好一阵才搞定,给你几个排查和解决的步骤,应该能帮到你:

  • 确认你的Anaconda环境里装的是CUDA版PyTorch
    很多人会不小心装成CPU版PyTorch,这自然就检测不到GPU了。你可以打开Anaconda Prompt,先激活你的目标环境(比如conda activate 你的环境名),然后输入conda list torch,看看输出里的torch包名称是否带有cuda标识——比如类似torch 2.3.0 py310_cuda12.1_cudnn8.9.2_0这种。如果显示的是cpu_only版本,那你需要重新安装对应CUDA版本的PyTorch。
    安装命令可以根据你的系统CUDA版本来选,比如你的系统装的是CUDA 12.1,用conda安装的命令大概是:

    conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
    

    记得一定要在激活目标环境后再执行安装命令,别装到默认的base环境里了。

  • 检查Jupyter Notebook使用的内核是否对应正确环境
    有时候你从Anaconda启动Jupyter,但它默认调用的是base环境的内核,而你的CUDA版PyTorch装在另一个单独的环境里,这也会导致检测失败。解决方法很简单:

    1. 激活你的目标环境,安装ipykernel:conda install ipykernel
    2. 将这个环境添加为Jupyter的可用内核:python -m ipykernel install --user --name=你的环境名称 --display-name="Python (你的环境名称)"
    3. 重启Jupyter Notebook,在页面右上角的「Kernel」菜单里切换到你刚才添加的那个内核,再运行torch.cuda.is_available()试试。
  • 验证系统CUDA与PyTorch内置CUDA版本的兼容性
    你可以在Jupyter里运行下面两行代码,查看PyTorch内置的CUDA版本:

    import torch
    print(torch.version.cuda)
    

    然后在系统命令行里输入nvcc --version,查看你手动安装的CUDA Toolkit版本。这两个版本不需要完全一致,但要保证PyTorch支持你的系统CUDA版本(比如PyTorch 2.3支持CUDA 11.8、12.1等主流版本)。如果版本差距过大,要么升级/降级系统CUDA,要么重新安装对应版本的PyTorch。

  • 确认CuDNN配置正确
    如果你是通过conda安装的PyTorch,那conda会自动匹配安装对应版本的CuDNN,这一步基本不用操心。但如果你是手动安装的CuDNN,要确保它的版本和系统CUDA版本匹配,并且已经把CuDNN的库路径添加到系统环境变量中(Windows是PATH,Linux是LD_LIBRARY_PATH)。

备注:内容来源于stack exchange,提问作者Hasham Asif

火山引擎 最新活动