2

我正在尝试将 OpenCL GPU 设备与我NvAPI_EnumPhysicalGPUs在多 GPU 系统中使用的 NVAPI 设备相关联。

问题是,我可以使用clGetDeviceInfowhichCL_DEVICE_VENDOR_ID始终是唯一的,这是最好的方法,我可以从NvAPI_SYS_GetChipSetInfo. 但它与NvPhysicalGpuHandle我从中得到的无关NvAPI_EnumPhysicalGPUs。有没有办法把这个联系起来?

当然,我可以只使用名称,但这并不好。

4

1 回答 1

0

有办法做到这一点。在 OpenCL 中,由于某种原因,文档记录很差。您需要clGetDeviceInfo使用常量调用,0x4008它将为您提供以下设备句柄的总线 ID。

cl_uint busID;
clGetDeviceInfo(device,0x4008,sizeof(cl_uint), &busID,NULL);
printf("%d",busID);

在 NvApi 端使用NvAPI_GPU_GetBusId. 然后您可以通过连接总线来关联句柄。

于 2014-12-07T05:06:02.840 回答