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

AlphaFold环境下nvidia-smi、nvcc等版本差异与冲突解决咨询

问题描述

本人具备机器学习经验,尝试搭建AlphaFold运行环境。已创建虚拟环境并安装CuDNN(8.1.0.77)、CuDNN Toolkit(11.2.2)、TensorFlow(2.10.0)及TensorFlow-GPU(2.10.0)。使用nvidia-smi和nvcc --version验证时发现版本不一致:nvidia-smi显示CUDA版本11.4,nvcc显示10.1,CuDNN Toolkit版本为11.2。本人使用的GPU为RTX 3090,现咨询这些组件的版本关系、是否需要修复该问题及解决方法。

验证命令及输出

$ nvidia-smi
    +-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.199.02   Driver Version: 470.199.02   CUDA Version: 11.4     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA GeForce ...  Off  | 00000000:04:00.0  On |                  N/A |
|  0%   35C    P8    22W / 420W |    324MiB / 24265MiB |      1%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      1060      G   /usr/lib/xorg/Xorg                 66MiB |
|    0   N/A  N/A      1505      G   /usr/bin/gnome-shell               85MiB |
|    0   N/A  N/A      1917      G   /usr/lib/firefox/firefox          170MiB |
+-----------------------------------------------------------------------------+

$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Sun_Jul_28_19:07:16_PDT_2019
Cuda compilation tools, release 10.1, V10.1.243

解答

组件版本关系说明

  • nvidia-smi显示的CUDA版本是驱动支持的最高CUDA版本,470.199.02驱动支持最高CUDA 11.4,这是正常的。
  • nvcc --version显示的是当前系统PATH中优先级最高的CUDA Toolkit编译器版本,你现在PATH指向的是旧的CUDA 10.1,和你安装的11.2.2 Toolkit不是同一套。
  • TensorFlow-GPU 2.10.0要求CUDA Toolkit版本为11.2、CuDNN版本为8.1.x,你安装的CuDNN 8.1.0.77符合要求,但系统实际调用的CUDA编译器版本不匹配,会导致依赖失效。
  • RTX 3090基于Ampere架构,仅支持CUDA 11.x及以上版本,CUDA 10.1完全不兼容该架构,无法调用GPU。

是否需要修复该问题

必须修复,核心原因有两点:

  1. CUDA 10.1不支持RTX 3090的Ampere架构,AlphaFold无法利用GPU加速,运行效率会极低甚至直接报错。
  2. TensorFlow-GPU 2.10.0依赖CUDA 11.2,当前系统PATH指向的CUDA 10.1会导致TensorFlow无法正确加载GPU组件,出现CUDA初始化失败等错误。

解决方法

方法1:更新系统PATH,指向CUDA 11.2.2

  1. 找到CUDA 11.2.2的安装目录,通常为/usr/local/cuda-11.2
  2. 临时修改当前终端的PATH:
export PATH=/usr/local/cuda-11.2/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.2/lib64:$LD_LIBRARY_PATH
  1. 验证修改:重新运行nvcc --version,应显示11.2版本
  2. 永久修改:编辑~/.bashrc或~/.zshrc,加入上述两行,执行source ~/.bashrc生效

方法2:卸载旧的CUDA 10.1

如果不需要CUDA 10.1,可以直接卸载:

sudo apt-get remove --purge cuda-10-1
sudo apt-get autoremove

卸载后确保CUDA 11.2的PATH配置正确,再验证版本。

方法3:检查虚拟环境的环境变量

若在虚拟环境中安装组件,确认虚拟环境没有继承系统旧的CUDA路径,或在虚拟环境的激活脚本中配置正确的CUDA 11.2路径。


内容的提问来源于stack exchange,提问作者Young Tae Won

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 13:19:53