首页 > 解决方案 > 如何知道我的程序在哪个显卡上运行?

问题描述

我正在使用两张显卡来测试 CUDA 中的一些程序。我认为其中一个坏了,但计算机仍然可以识别它。如何切换“主显卡”以运行我的程序(如果存在)并发现它们是否正常工作?

标签: cudanvidia

解决方案


可能会有所帮助。您可以使用cudaSetDevice来选择要在哪个 GPU 上运行。您还可以从命令行运行nvidia-smi以检查系统上可见的设备。请注意,来自 nvidia-smi 的顺序是 PCIe 顺序,而驱动程序和运行时不保证这一点。

您可以使用cudaGetDeviceCount获取可见设备的总数,然后循环该次,cudaSetDevice使用循环的索引作为参数调用以设置要运行的新设备。

希望这可以帮助!


推荐阅读