我正在开发一个 CUDA 应用程序来监控 GPU 的核心温度。该信息可通过 NVAPI 访问。
一个问题是,我想确保在运行代码时监控的是同一个 GPU。
但是,似乎有信息表明我从中获得的设备 IDNvAPI_EnumPhysicalGPUs
与SetDeviceId
.
谁能澄清一下?
我在这里看到了一个有趣的讨论。
据我所知,这些数字没有直接相关性。
我使用两个 NVIDIA GPU GTX 550 ti 在我的计算机上对其进行了测试。
结果是,除了 Bus ID 之外,所有信息都是相同的。
因此,在 nvapi 中,使用 NvAPI_GPU_GetBusId,这将得到一个整数,如 1、2,...
然后,在 cuda API 中,使用 cudaDeviceGetPCIBusId,这将得到一个字符串,如 0000:01:00.0。
将 busID 整数与 BusID String 的第二部分进行比较,
可以得到它们之间的关系。