获取 nvcc 正确报告的 CUDA 版本

问题描述 投票:0回答:1

我正在尝试在 Ubuntu 中更新 CUDA。按照此处的指南,我的初始设置将 CUDA 版本报告为:

  • 通过 nvcc - Cuda 编译工具,版本 10.1,V10.1.243
  • 通过 nvidia-smi - 11.1

无错误更新后,CUDA 版本报告为:

  • 通过 nvcc - Cuda 编译工具,版本 10.1,V10.1.243
  • 通过 nvidia-smi - 12.1

这导致的困难是,当我尝试安装时,

torch-cluster
我收到错误:

RuntimeError:
      The detected CUDA version (10.1) mismatches the version that was used to compile
      PyTorch (11.7). Please make sure to use the same CUDA versions.

根据这里的建议,我特意从这里下载并安装了Toolkit v11.7,并尝试进行安装,但收到了以下消息:

$ sudo apt-get -y install cuda
Reading package lists... Done
Building dependency tree       
Reading state information... Done
cuda is already the newest version (12.1.1-1).

但nvcc继续报道:

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

我该如何解决这个问题? (this可能是一个尚未回答的类似问题)

已解决:

这最终部分是

nvcc -V
正确报告的 $PATH 问题,部分是库问题。

首先是$PATH。这是更新 $PATH 变量以包含 CUDA 工具包的最新位置的问题。 nvidia-smi 表明正确的驱动程序已就位,因此您只需确保该工具包存在即可。

/usr/local/cuda-xx.x
是否存在。两种可能性:

  • 如果存在,则只需修改您的 $PATH 即可。最简单的方法是查看当前路径
    echo $PATH
    ,然后将整个输出字符串复制到文本编辑器,更改它以使其包含
    :/usr/local/cuda-xx.x/bin
    (如果存在则删除任何旧版本),然后将更改后的字符串复制到
    export PATH=$PATH:<your new string>
    。是的,您可以只添加到路径,但如果您这样做,您可以准确地看到您的路径是什么以及发生了什么变化,而不是盲目地添加到现有路径。
  • 如果您想要的版本的工具包不存在,请安装它(参见下一项)

在这种情况下,我缺少用于库安装的工具包是 11.7。安装驱动程序后,我得到了 nvcc 报告的

/usr/local/cuda-10.1
(旧)和安装后的
/usr/local/cuda-12.1
,但我需要 11.7。事实证明,多个库可以共存。解决方案是:

  • 使用
    sudo apt-get install cuda-toolkit-11-7
  • 安装 11.7
  • 确保可以通过
    export CUDA_HOME=/usr/local/cuda-11.7/
  • 发现它
pytorch cuda nvcc nvidia-smi
1个回答
0
投票

这最终部分是

nvcc -V
正确报告的 $PATH 问题,部分是库问题。

首先是$PATH。这是更新 $PATH 变量以包含 CUDA 工具包的最新位置的问题。 nvidia-smi 表明正确的驱动程序已就位,因此您只需确保该工具包存在即可。

/usr/local/cuda-xx.x
是否存在。两种可能性:

  • 如果存在,则只需修改您的 $PATH 即可。最简单的方法是查看当前路径
    echo $PATH
    ,然后将整个输出字符串复制到文本编辑器,更改它以使其包含
    :/usr/local/cuda-xx.x/bin
    (如果存在则删除任何旧版本),然后将更改后的字符串复制到
    export PATH=$PATH:<your new string>
    。是的,您可以只添加到路径,但如果您这样做,您可以准确地看到您的路径是什么以及发生了什么变化,而不是盲目地添加到现有路径。
  • 如果您想要的版本的工具包不存在,请安装它(参见下一项)

在这种情况下,我缺少用于库安装的工具包是 11.7。安装驱动程序后,我得到了 nvcc 报告的

/usr/local/cuda-10.1
(旧)和安装后的
/usr/local/cuda-12.1
,但我需要 11.7。事实证明,多个库可以共存。解决方案是:

  • 使用
    sudo apt-get install cuda-toolkit-11-7
  • 安装 11.7
  • 确保可以通过
    export CUDA_HOME=/usr/local/cuda-11.7/
  • 发现它
© www.soinside.com 2019 - 2024. All rights reserved.