如何获取CUDA版本?

908

有没有快速的命令或脚本来检查安装的CUDA版本?

我在安装目录下找到了4.0的手册,但我不确定它是否是实际安装版本。


4
请参阅:如何验证CuDNN安装? - Martin Thoma
7
这个问题的目标操作系统是哪个? - nbro
17
@JaredHoberock nvcc --version 命令会提示 The program 'nvcc' is currently not installed. You can install it by typing: sudo apt install nvidia-cuda-toolkit,但是 nvidia-smi 命令显示 CUDA 版本为 10.1。 - mrgloom
4
但运行 cat /usr/local/cuda/version.txt 命令可以得到更精确的版本信息:CUDA 版本 10.1.168 - mrgloom
如果您正在寻找实际版本数字的字符串,在Unix中,您可以使用nvidia-smi混合获取版本,使用grep识别行,并使用sed删除不必要的字符:nvidia-smi | grep -o 'CUDA Version: [0-9].\.[0-9]' | sed 's/.*: //' - Eduardo Pignatelli
显示剩余2条评论
31个回答

3
安装完CUDA后,可以通过以下命令检查版本:nvcc -V。
我已经安装了5.0和5.5版本,因此它会显示:
Cuda Compilation Tools,release 5.5,V5.5,0
该命令适用于Windows和Ubuntu。

4
nvcc未安装。 - KansaiRobot

3

使用TensorFlow:

import tensorflow as tf
from tensorflow.python.platform import build_info as build
print(f"tensorflow version: {tf.__version__}")
print(f"Cuda Version: {build.build_info['cuda_version']}")
print(f"Cudnn version: {build.build_info['cudnn_version']}")

TensorFlow版本:2.4.0

CUDA版本:11.0

CuDNN版本:8


0

我收到了“/usr/local - 没有这个文件或目录”的错误。虽然 nvcc -V 命令可以正常运行。

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Sun_Sep__4_22:14:01_CDT_2016
Cuda compilation tools, release 8.0, V8.0.44

0
假设CUDA已经安装在Ubuntu上(可以说是ML / DL最常见的系统),我们可以使用apt在当前(容器)系统中获取安装了CUDA和cuDNN库版本:
$ apt list --installed | grep cud

示例输出:

$ docker run -it --rm mirekphd/cuda-11.2-cudnn8-devel-ubuntu22.04:latest apt list --installed | grep cud

cuda-command-line-tools-11-2/now 11.2.2-1 amd64 [installed,local]
cuda-compat-11-2/now 460.106.00-1 amd64 [installed,local]
cuda-compiler-11-2/now 11.2.2-1 amd64 [installed,local]
cuda-cudart-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-cudart-dev-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-cuobjdump-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-cupti-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-cupti-dev-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-cuxxfilt-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-driver-dev-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-gdb-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-keyring/now 1.1-1 all [installed,local]
cuda-libraries-dev-11-2/now 11.2.2-1 amd64 [installed,local]
cuda-memcheck-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-minimal-build-11-2/now 11.2.2-1 amd64 [installed,local]
cuda-nvcc-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-nvdisasm-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-nvml-dev-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-nvprof-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-nvprune-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-nvrtc-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-nvrtc-dev-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-nvtx-11-2/now 11.2.152-1 amd64 [installed,local]
cuda-sanitizer-11-2/now 11.2.152-1 amd64 [installed,local]
libcudnn8-dev/now 8.1.1.33-1+cuda11.2 amd64 [installed,local]
libcudnn8/now 8.1.1.33-1+cuda11.2 amd64 [installed,local]
libnccl-dev/now 2.18.1-1+cuda12.1 amd64 [installed,local]
libnccl2/now 2.18.1-1+cuda12.1 amd64 [installed,local]

0
打开终端并运行以下命令:
cd /usr/local/cuda/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery

您可以获取CUDA驱动程序版本、CUDA运行时版本以及GPU(s)的详细信息。下面是我端口的输出示例图像。 您可以在此处找到图像。

CUDA示例不再包括在CUDA工具包中,因此此答案已过时。 - paleonix

0

在我的cuda-11.6.0安装中,可以在/usr/local/cuda/version.json中找到信息。它包含完整的版本号(11.6.0而不是nvidia-smi显示的11.6)。

可以按照以下方式检索信息:

python -c 'import json; print(json.load(open("/usr/local/cuda/version.json"))["cuda"]["version"])'

0

找到我的方式:

whereis cuda

cuda: /usr/lib/cuda /usr/include/cuda.h

使用

nvcc --version

CUDA版本9.1.85

0
以编程方式使用 CUDA Runtime API C++ 包装器(注意:我是作者):
auto v1 = cuda::version::maximum_supported_by_driver();
auto v2 = cuda::version::runtime();

这将为您提供一个cuda::version_t结构,您可以进行比较并打印/流输出,例如:
if (v2 < cuda::version_t{ 8, 0 } ) {
    std::cerr << "CUDA version " << v2 << " is insufficient." std::endl;
}

你能提出一种不需要编译C++代码的方法吗?在之前的评论中,你提到cat /usr/local/cuda/version.txt在CUDA 11中已经不再适用... - drevicko
@drevicko:好的,请尝试这个,或者本页面上的其他几个答案。 - einpoklum
好的。我希望避免安装CUDA SDK(nvcc所需),因为使用nvidia-smi不可靠。从/usr/local/cuda链接的文件夹(应该是符号链接)似乎是一个不错的选择:这是否符合您对CUDA 11的了解和工作? - drevicko
2
@drevicko:是的,如果您愿意假设CUDA已安装在/usr/local/cuda下(这对于具有默认位置的独立安装程序是正确的,但对于将CUDA集成为软件包的发行版来说则不是真实情况)- 那么查看符号链接就足够了。 - einpoklum
我找到了/usr/local/cuda/version.json文件,其中包含了CUDA相关的软件包和版本信息。我正在使用Ubuntu 20.04操作系统。 - panc

-1
您可以使用以下代码检查CUDA版本:

nvcc -V

或者你可以使用

nvcc --version

或者您可以使用以下命令检查CUDA的位置

whereis cuda 

然后执行

cat location/of/cuda/you/got/from/above/command

-1

要验证机器上安装的CUDA版本,您可以在终端中使用nvidia-smi命令。

输出应该类似于以下内容:

+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.54.03              Driver Version: 535.54.03    CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| 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 GT 1030         Off | 00000000:43:00.0 Off |                  N/A |
| 35%   28C    P8              N/A /  30W |    255MiB /  2048MiB |      0%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|    0   N/A  N/A      4396      G   /usr/libexec/Xorg                            63MiB |
|    0   N/A  N/A      4521      G   /usr/bin/gnome-shell                        190MiB |
+---------------------------------------------------------------------------------------+

1
之前已经发布了相同的答案。 - SilentCloud
nvidia-smi显示的是驱动程序支持的版本,而不是已安装的版本。 - goe

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接