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

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


当前回答

在Ubuntu Cuda V8上:

$ cat /usr/local/cuda/version.txt
  

您还可以了解CUDA版本的安装情况:

$ ls -l /usr/local | grep cuda

这会给你这样的东西:

lrwxrwxrwx  1 root root    9 Mar  5  2020 cuda -> cuda-10.2
drwxr-xr-x 16 root root 4096 Mar  5  2020 cuda-10.2
drwxr-xr-x 16 root root 4096 Mar  5  2020 cuda-8.0.61

给定一个正常的PATH,cuda指向的版本应该是活动版本(本例中为10.2)。

注意:只有当您愿意假设CUDA安装在/usr/local/CUDA下时,这才有效(这对于具有默认位置的独立安装程序是正确的,但对于CUDA集成为软件包的发行版则不正确)。参考:@einpoklum的评论。

其他回答

使用以下命令检查Conda的CUDA安装:

conda list cudatoolkit

使用以下命令检查conda安装的CUDNN版本:

conda list cudnn

如果要通过CONDA安装/更新CUDA和CUDNN,请使用以下命令:

conda install -c anaconda cudatoolkit
conda install -c anaconda cudnn

或者,您可以使用以下命令检查CUDA安装:

nvidia-smi

OR

nvcc --version

如果您正在通过Anaconda包使用tensorflow-gpu(只需在控制台中打开Python,检查默认的Python在启动时是否显示Anaconda-Inc.,或者您可以运行哪个Python并检查位置),那么手动安装CUDA和CUDNN很可能无法工作。您将不得不通过conda进行更新。

如果您想手动安装CUDA、CUDNN或tensorflow gpu,可以查看此处的说明https://www.tensorflow.org/install/gpu

使用CUDA运行时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;
}

[编辑的答案。感谢所有更正的人]

如果你跑步

nvidia-smi

您应该在命令输出的右上角找到安装的驱动程序支持的CUDA版本最高CUDA版本。至少我发现CUDA版本10.0的输出。,

如果您已安装CUDA SDK,则可以运行“deviceQuery”查看CUDA的版本

正如Jared在命令行的评论中提到的:

nvcc --version

(或/usr/local/cuda/bin/nvcc-version)提供cuda编译器版本(与工具包版本匹配)。

从应用程序代码中,可以使用

cudaRuntimeGetVersion()

或驱动程序API版本

cudaDriverGetVersion()

正如Daniel所指出的那样,deviceQuery是一个SDK示例应用程序,可以查询上面的内容以及设备功能。

正如其他人所指出的,您也可以使用(例如,在Mac或Linux上)检查version.txt的内容

cat /usr/local/cuda/version.txt

但是,如果安装了CUDA工具包的另一个版本,而不是从/usr/local/CUDA符号链接的版本,则如果PATH中的另一版本早于上述版本,则可能会报告版本不准确,因此请谨慎使用。