@@ -22,6 +22,7 @@ const (
2222 gpuDeviceIDH100 = "0x2331"
2323 gpuDeviceIDH200 = "0x2335"
2424 gpuDeviceIDB200 = "0x2901"
25+ gpuDeviceIDB300 = "0x3182"
2526)
2627
2728// forEachNVIDIAGPU iterates over PCI devices that are NVIDIA GPUs
@@ -59,7 +60,7 @@ func detectGPUCount() (int, error) {
5960 return count , nil
6061}
6162
62- // detectGPUArch returns "h100", "h200", "b200", or "" from the first GPU.
63+ // detectGPUArch returns "h100", "h200", "b200", "b300", or "" from the first GPU.
6364func detectGPUArch () (string , error ) {
6465 const pciPath = "/sys/bus/pci/devices"
6566 var arch string
@@ -75,6 +76,8 @@ func detectGPUArch() (string, error) {
7576 arch = "h200"
7677 case gpuDeviceIDB200 :
7778 arch = "b200"
79+ case gpuDeviceIDB300 :
80+ arch = "b300"
7881 default :
7982 return true
8083 }
@@ -235,9 +238,9 @@ func verifyGPUAttestation(expectedGPUs int) (*GPURawEvidence, error) {
235238 return nil , fmt .Errorf ("detecting GPU arch: %w" , err )
236239 }
237240 switch arch {
238- case "b200" :
239- // B200 MPT: NVSwitches are not exposed to the guest.
240- log .Printf ("HGX B200 MPT: no in-guest NVSwitch evidence" )
241+ case "b200" , "b300" :
242+ // Blackwell MPT: NVSwitches are not exposed to the guest.
243+ log .Printf ("HGX Blackwell MPT: no in-guest NVSwitch evidence" )
241244
242245 case "h100" , "h200" , "" :
243246 if err := runNvattest ("nvswitch" ); err != nil {
0 commit comments