
    `i                      V    d dl T d Zd Zd Zedk    r e e                       dS dS )    )*c                     | t           k    rdS | t          k    rdS | t          k    rdS | t          k    rdS | t          k    rdS dS )NNonezPass-ThroughVGPUz	Host VGPUz	Host VSGAUnknown)!NVML_GPU_VIRTUALIZATION_MODE_NONE(NVML_GPU_VIRTUALIZATION_MODE_PASSTHROUGH!NVML_GPU_VIRTUALIZATION_MODE_VGPU&NVML_GPU_VIRTUALIZATION_MODE_HOST_VGPU&NVML_GPU_VIRTUALIZATION_MODE_HOST_VSGA)modes    [/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/example.pyStrVirtr   )   s\    000v	9	9	9~	2	2	2v	7	7	7{	7	7	7{y    c                 N    | j         t          k    rdS |                                 S )NzN/A)valueNVML_ERROR_NOT_SUPPORTED__str__)errs    r   handleErrorr   :   s#    	---u{{}}r   c                     d} 	 t                       | dt          t                                z   dz   z  } t                      }| dt          |          z   dz   z  } t	          d|          D ]}t          |          }t          |          }| d|j        z  z  } | dt          |          z   d	z   z  } i t          d
t          dt          dt          dt          dt          dt          dt           dt"          dt$          dt&          dt(          dt*          dt,          dt.          dt0          dt2          d}	 |t5          |                   }n&# t6          $ r}t9          |          }Y d }~nd }~ww xY w| d|z   dz   z  } 	 t;          |          }n&# t6          $ r}t9          |          }Y d }~nd }~ww xY w| d|z   dz   z  } 	 t=          |          }	n&# t6          $ r}t9          |          }	Y d }~nd }~ww xY w| d|	z   d z   z  } | d!z  } 	 t?          tA          |                    }
n&# t6          $ r}t9          |          }
Y d }~nd }~ww xY w| d"|
z   d#z   z  } | d$z  } 	 tC          |          }|j"        d%k    r| d&z  } t	          |j#                  D ]|}|j$        |         j%        dk    rDtA          |          tL          k    r| d'z  } | d(z  } ;| d)|j$        |         j'        z   d*z   z  } | d+z  } \| d)|j$        |         j'        z   d*z   z  } | d(z  } }| d,z  } n&# t6          $ r}t9          |          }Y d }~nd }~ww xY w| d-z  } n4# t6          $ r'}| d.|(                                z   d/z   z  } Y d }~nd }~ww xY wtS                       | S )0N z  <driver_version>z</driver_version>
z  <attached_gpus>z</attached_gpus>
r   z  <gpu id="%s">
z    <product_name>z</product_name>
r   QuadroTeslaNVSGridTitanGeForcezNVIDIA Virtual ApplicationszNVIDIA Virtual PCzNVIDIA Virtual Compute ServerzNVIDIA RTX Virtual WorkstationzNVIDIA Cloud Gamingz
Quadro RTXz
NVIDIA RTXNVIDIAzGeForce RTXz	TITAN RTXz    <product_brand>z</product_brand>
z    <serial>z
</serial>
z
    <uuid>z</uuid>
z    <gpu_virtualization_mode>
z      <virtualization_mode>z</virtualization_mode>
z    </gpu_virtualization_mode>
   z%    <vgpu_software_licensed_product>
zS        <licensed_product_name>NVIDIA Virtual Applications</licensed_product_name>
z2        <license_status>Licensed</license_status>
z        <licensed_product_name>z</licensed_product_name>
z4        <license_status>Unlicensed</license_status>
z&    </vgpu_software_licensed_product>
z	  </gpu>
zexample.py: 
)*nvmlInitstrnvmlSystemGetDriverVersionnvmlDeviceGetCountrangenvmlDeviceGetHandleByIndexnvmlDeviceGetPciInfobusIdnvmlDeviceGetNameNVML_BRAND_UNKNOWNNVML_BRAND_QUADRONVML_BRAND_TESLANVML_BRAND_NVSNVML_BRAND_GRIDNVML_BRAND_TITANNVML_BRAND_GEFORCENVML_BRAND_NVIDIA_VAPPSNVML_BRAND_NVIDIA_VPCNVML_BRAND_NVIDIA_VCSNVML_BRAND_NVIDIA_VWSNVML_BRAND_NVIDIA_CLOUD_GAMINGNVML_BRAND_QUADRO_RTXNVML_BRAND_NVIDIA_RTXNVML_BRAND_NVIDIANVML_BRAND_GEFORCE_RTXNVML_BRAND_TITAN_RTXnvmlDeviceGetBrand	NVMLErrorr   nvmlDeviceGetSerialnvmlDeviceGetUUIDr   nvmlDeviceGetVirtualizationMode#nvmlDeviceGetGridLicensableFeaturesisGridLicenseSupportedlicensableFeaturesCountgridLicensableFeaturesfeatureStater	   productNamer   nvmlShutdown)	strResultdeviceCountihandlepciInfo
brandNames	brandNamer   serialuuidr   rD   s               r   deviceQueryrQ   A   s   I\; 	


)C0J0L0L,M,MMPeee	(**(3{+;+;;>RRR	q+&& N	& N	&A/22F*622G,w}<<I-0A&0I0IIL___I,I +H*G )E *F	
 +G -I 2<Y 0<O 0<[ 0<\ 9<Q 0L 0L ,H 1M  /K!J(-&'9&'A'AB		 - - -',,						- .:=QQQI*,V44 * * *$S))* &0=@@I((00 ( ( ("3''( ,{::I::I(>vFFGG ( ( ("3''(6=@ZZZI;;I:)LV)T)T&)@AEE!III"#9#QRR 
i 
i1HKX\]]]>vFFJrrr )  .N  !N	 )-l l		 )-NQgQ~  @A  RB  RN  .N  Qm  .m  !m	 )-n n		%)JMcMz{|M}  NJ  *J  Mi  *i  iI%)hhII!JJI : : :)4S)9)9&&&&&&: %II]N	&`  ; ; ;^ckkmm3d::						; NNNs   D8M =EM 
E6E1,M 1E66M FM 
F8F3.M 3F88M GM 
G:!G50M 5G::M H+*M +
I5I	M 	IM "B5LM 
L;"L61M 6L;;
M 
M7M22M7__main__N)pynvmlr   r   rQ   __name__print r   r   <module>rW      sv   H    
  "  c c cL z	E++-- r   