是否有任何快速命令或脚本来检查安装的CUDA版本?
我在安装目录下找到了4.0的手册,但我不确定它是否是实际安装的版本。
是否有任何快速命令或脚本来检查安装的CUDA版本?
我在安装目录下找到了4.0的手册,但我不确定它是否是实际安装的版本。
当前回答
正如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中的另一版本早于上述版本,则可能会报告版本不准确,因此请谨慎使用。
其他回答
安装CUDA后,可以通过以下方式检查版本:nvcc-V
我已经安装了5.0和5.5
Cuda编译工具5.5版V5.5,0
此命令适用于Windows和Ubuntu。
打开终端并运行以下命令:
cd /usr/local/cuda/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
您可以获得CUDA驱动程序版本、CUDA运行时版本的信息,以及GPU的详细信息。我的终端输出的图像示例如下。
您可以在此处找到图像。
在Windows 10上,我在“C:\Program Files\nvidia Corporation\NVSMI”中找到了nvidia-smi.exe;在cd之后插入该文件夹(在我的情况下不在PATH中)和'。\它显示了nvidia smi.exe
使用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;
}
如果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使用相同版本的驱动程序。