> +#define NVIDIA_GPU_GH100 0x2335 /* H200 SXM 141GB */ > > As you can see it requires knowledge to get the right name for each ID. > Not everything is in https://pci-ids.ucw.cz/ > https://github.com/NVIDIA/open-gpu-kernel-modules is a good source but not > perfect as well.
Right, the naming is a little tricky since neither source is fully complete. I wrote a sync script that cross-references the PCI ID DB and OKM repo to construct unique macro names. For the few entries with totally identical descriptions across both sources, the device ID is appended as a fallback. Here is an example for the GH100 family: #define NVIDIA_GPU_GH100_H20 0x2329 /* H20 */ #define NVIDIA_GPU_GH100_H20_HBM3E 0x232c /* H20 HBM3e */ #define NVIDIA_GPU_GH100_H100_SXM5_80GB 0x2330 /* H100 SXM5 80GB */ #define NVIDIA_GPU_GH100_H100_PCIE 0x2331 /* H100 PCIe */ #define NVIDIA_GPU_GH100_H200_SXM_141GB 0x2335 /* H200 SXM 141GB */ #define NVIDIA_GPU_GH100_H100 0x2336 /* H100 */ The script also updates pci_id_cuda_map[] in cuda.c and I wrote a test to verify both files are consistent.

