You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WSL2(Ubuntu22.04)+Poetry环境下cuDNN配置失败求助

WSL2(Ubuntu 22.04)+ Poetry环境下CUDA与cuDNN配置指南及错误修复

一、前置环境检查

  • 确认WSL2架构:执行wsl --list --verbose,确保目标Ubuntu22.04实例为WSL2版本
  • 验证Windows端NVIDIA驱动:打开NVIDIA控制面板,确认驱动版本支持目标CUDA版本(RTX A1000最低支持CUDA 11.4,推荐选择11.8)
  • WSL2内显卡验证:执行nvidia-smi,能正常显示显卡信息及驱动支持的最高CUDA版本即为合格

二、CUDA Toolkit 安装与验证(已安装可跳过,建议检查)

  1. 清理旧版本残留(若之前安装过其他CUDA版本):
    sudo apt-get purge nvidia* cuda*
    sudo apt-get autoremove
    sudo rm -rf /usr/local/cuda*
    
  2. 安装适配WSL2的CUDA 11.8(兼容性最优):
    wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
    sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
    sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/3bf863cc.pub
    sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/ /"
    sudo apt-get update
    sudo apt-get install -y cuda-toolkit-11-8
    
  3. 配置环境变量:
    编辑~/.bashrc或~/.zshrc,添加以下内容:
    export PATH=/usr/local/cuda-11.8/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
    
    执行source ~/.bashrc使配置生效
  4. 验证CUDA:执行nvcc -V,输出正确版本信息即为成功

三、cuDNN 正确安装(避免版本冲突)

选择与CUDA 11.8匹配的cuDNN 8.6.0.tar包安装,规避deb包的依赖冲突:

  1. 解压下载的cuDNN tar包:
    tar -xzvf cudnn-linux-x86_64-8.6.0.163_cuda11-archive.tar.xz
    
  2. 复制文件到CUDA目录并赋予权限:
    sudo cp cudnn-linux-x86_64-8.6.0.163_cuda11-archive/include/cudnn*.h /usr/local/cuda-11.8/include
    sudo cp cudnn-linux-x86_64-8.6.0.163_cuda11-archive/lib/libcudnn* /usr/local/cuda-11.8/lib64
    sudo chmod a+r /usr/local/cuda-11.8/include/cudnn*.h /usr/local/cuda-11.8/lib64/libcudnn*
    
  3. 验证cuDNN版本:
    cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
    
    应显示对应8.6.0版本信息

四、Poetry 环境适配配置

  1. 创建或进入Poetry项目:
    poetry new tf-cuda-project
    cd tf-cuda-project
    
  2. 添加适配CUDA 11.8的TensorFlow版本(推荐2.12.0):
    poetry add tensorflow==2.12.0
    
  3. 确认环境变量继承:
    执行poetry run python -c "import os; print(os.environ.get('LD_LIBRARY_PATH', 'Not found'))",需包含/usr/local/cuda-11.8/lib64路径
  4. 测试GPU支持:
    poetry run python -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"
    
    输出GPU设备信息即为配置成功

五、"cuDNN工厂重复注册"错误修复

该错误源于环境中存在多个cuDNN实例,按以下步骤清理:

  1. 卸载deb安装的cuDNN残留:
    sudo apt-get purge libcudnn*
    sudo apt-get autoremove
    sudo rm -rf /usr/lib/x86_64-linux-gnu/libcudnn*
    
  2. 检查Poetry环境内是否自带cuDNN包:
    poetry run pip list | grep cudnn
    
    若存在nvidia-cudnn-cu11等包,执行卸载:
    poetry run pip uninstall -y nvidia-cudnn-cu11
    
  3. 重新加载环境后测试:
    source ~/.bashrc
    poetry run python -c "import tensorflow as tf; print(tf.test.is_gpu_available())"
    

内容的提问来源于stack exchange,提问作者Lysapala

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 02:23:12