
    bim                         d dl mZ d dlZ ej                  d      d        Zej                  d        Zd Zd Zd	 Zd
 Z	d Z
y)    )
nvidia_smiNmodule)scopec                 *    t        j                         S )N)r   getInstance)requests    V/home/cdr/jupyterlab/.venv/lib/python3.12/site-packages/pynvml_utils/tests/test_smi.pysmir
      s    !!##    c                 t    | j                  d      d   }|dkD  sJ t        dt        |      z   dz   d       |S )Ncountr   [z GPUs] )end)DeviceQueryprintstr)r
   results     r	   ngpusr      s>    __W%g.FA::	#F
h
&C0Mr   c                 l    |j                  d      }t        |       D ]  }|d   |   d   d   dk\  rJ  y )Nzmemory.freegpufb_memory_usagefreer   )r   range)r   r
   r   is       r	   test_query_memoryr      sG    __]+F5\ @e}Q 126:a???@r   c                 l    t        |       D ]&  }|j                  d      d   |   d   d   }|dk\  r&J  y )Nzutilization.gpur   utilizationgpu_utilr   r   r   r   r
   r   r   s       r	   test_gpu_utilizationr"      sD    5\ !23E:1=mLZX{{r   c                 l    t        |       D ]&  }|j                  d      d   |   d   d   }|dk\  r&J  y )Nzutilization.memoryr   r   memory_utilr   r    r!   s       r	   test_memory_utilizationr%   &   sI    5\ !56u=a@O
 {{	r   c                 l    t        |       D ]&  }|j                  d      d   |   d   }|d   dk(  r&J  y )Npstater   performance_stater   Pr    r!   s       r	   test_pstater*   /   sE    5\  *51!45HIayC r   c                     t        |       D ]H  }|j                  d      d   |   d   d   }|j                  d      d   |   d   d   }|dkD  r||k  rHJ  y )Nztemperature.gpur   temperaturegpu_tempgpu_temp_max_thresholdr   r    )r   r
   r   tempmax_temps        r	   test_temperaturer1   6   ss    5\ 001%8;MJ:V??#45e<Q?N$
 qth//0r   )pynvml_utilsr   pytestfixturer
   r   r   r"   r%   r*   r1    r   r	   <module>r6      s\    #  h$  $  @ 0r   