如何检查我的系统上是否有 NVIDIA GPU?

How to check if an NVIDIA GPU is available on my system?

是否有一种简单的方法可以仅使用标准库来检查我的系统上是否有 NVIDIA GPU ?我已经看到他们推荐使用 PyTorch 或 TensorFlow 的其他答案,但这不是我要找的。我想知道如何在 Windows 和 Linux 上执行此操作。谢谢!

当您安装了 Nvidia 驱动程序后,命令 nvidia-smi 会输出一个整洁的 table,为您提供有关 GPU、CUDA 和驱动程序设置的信息。

通过查看是否存在该命令,可以知道是否存在Nvidia GPU。

请注意,此代码仅在安装了 Nvidia GPU 适当的驱动程序时才有效。

此代码应该适用于 Linux 和 Windows,并且它使用的唯一库是 subprocess,这是一个标准库。

import subprocess

try:
    subprocess.check_output('nvidia-smi')
    print('Nvidia GPU detected!')
except Exception: # this command not being found can raise quite a few different errors depending on the configuration
    print('No Nvidia GPU in system!')
    

以下代码显示 cuda 是否可用。 cuda正在接触gpu

print(torch.cuda.is_available())
print(torch.backends.cudnn.enabled)