我正在努力让一个CUDA应用程序监视GPU的核心温度,该信息可以通过NVAPI访问。 问题在于,我想确保我正在监视与运行代码相同的GPU。 但是,似乎有一些信息表明我从NvAPI_EnumPhysicalGPUs获取的设备ID与SetDeviceId使用的设备ID不对应。 有人能澄清一下吗?
我在我的电脑上测试了两个NVIDIA GTX 550 ti GPU。 结果是,所有信息都相同,除了总线ID。 因此,在nvapi中,使用NvAPI_GPU_GetBusId,这将得到一个整数,如1、2等。 然后,在cuda API中,使用cudaDeviceGetPCIBusId,这将得到一个字符串,如0000:01:00.0。 比较总线ID整数与总线ID字符串的第二部分, 您可以得到它们之间的关系。