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

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


当前回答

通过在终端中键入以下内容,可以获得cuda版本:

$ nvcc -V

# below is the result
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2017 NVIDIA Corporation
Built on Fri_Nov__3_21:07:56_CDT_2017
Cuda compilation tools, release 9.1, V9.1.85

或者,可以先使用以下方法查找安装目录,手动检查版本:

$ whereis -b cuda         
cuda: /usr/local/cuda

然后cd到该目录并检查CUDA版本。

其他回答

在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的评论。

你可能会发现CUDA-Z很有用,这里是他们网站上的一句话:

“这个程序诞生于另一个Z-实用程序的模仿,例如CPU-Z和GPU-Z。CUDA-Z显示了CUDA支持的GPU和GPGPU的一些基本信息。它与nVIDIA Geforce、Quadro和Tesla卡以及ION芯片组一起工作。”

http://cuda-z.sourceforge.net/

在支持选项卡上,有源代码的URL:http://sourceforge.net/p/cuda-z/code/并且下载实际上不是安装程序,而是可执行文件本身(没有安装,所以这是“快速”的)。

此实用程序提供了大量信息,如果您需要了解它是如何派生的,可以查看源代码。您可以搜索与此类似的其他实用程序。

如果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使用相同版本的驱动程序。

如果nvcc--版本不适合您,请使用cat/usr/local/cuda/version.txt

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