The OpenCL clGetDeviceInfo function returns a device vendor identifier when called with CL_DEVICE_VENDOR_ID. For CL_DEVICE_VENDOR_ID, the OpenCL spec states: "A unique device vendor identifier. An example of a unique device identifier could be the PCIe ID".
On this system, the Intel and AMD GPUs are both returning their PCIe ID (0x8086 and 0x1002 respectively. So, the question is: do all OpenCL devices return their PCIe IDs as their "unique device vendor identifier"? If so, are the PCIe vendor IDs listed in a header file somewhere?