是否有任何快速命令或脚本来检查安装的CUDA版本?

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


当前回答

使用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

其他回答

对于CUDA版本:

nvcc --version

或者使用,

nvidia-smi

对于cuDNN版本:

对于Linux:

使用以下方法查找cuDNN的路径:

$ whereis cuda
cuda: /usr/local/cuda

然后使用该命令从头文件获取版本,

$ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

对于Windows,

使用以下方法查找cuDNN的路径:

C:\>where cudnn*
C:\Program Files\cuDNN7\cuda\bin\cudnn64_7.dll

然后使用它从头文件转储版本,

type "%PROGRAMFILES%\cuDNN7\cuda\include\cudnn.h" | findstr CUDNN_MAJOR

如果您在Windows上获得CUDA的两个不同版本-nvcc和NVIDIA smi显示的不同CUDA版本

我得到/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

使用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

如果nvcc和nvidia-smi之间存在版本不匹配,则使用不同版本的cuda作为驱动程序和运行时环境。

为了确保使用相同版本的CUDA驱动程序,您需要做的是在系统路径上获取CUDA。

首先运行cuda所在的位置,找到cuda驱动程序的位置。

然后转到.bashrc并修改路径变量,并使用变量“LD_LIBRARY_path”设置搜索的目录优先顺序。

例如

$ whereis cuda
cuda: /usr/lib/cuda /usr/include/cuda.h /usr/local/cuda

CUDA安装在/usr/local/CUDA,现在我们需要将路径变量添加到.bashrc,如下所示:

vim  ~/.bashrc
export PATH="/usr/local/cuda/bin:${PATH}"

在该行之后,将目录搜索路径设置为:

export LD_LIBRARY_PATH="/usr/local/cuda/lib64:${LD_LIBRARY_PATH}"

然后保存.bashrc文件。并将其刷新为:

$ source ~/.bashrc

这将确保您有nvcc-V和nvidia-smi使用相同版本的驱动程序。

安装CUDA后,可以通过以下方式检查版本:nvcc-V

我已经安装了5.0和5.5

Cuda编译工具5.5版V5.5,0

此命令适用于Windows和Ubuntu。