+
    ‹°³j%	  ã            	       óR   € R RR RR RR RR //t R	RR
RRR/tR	RR
RRR/tR tR tR# )ÚCUDAÚ80c                 ó"   € R V ^,          ,          # )g  ¸’2¼C© ©ÚwidthÚkwargss   &,ÚV/home/luca/screen-checking/.venv/lib/python3.14/site-packages/triton/profiler/specs.pyÚ<lambda>r
      s   €  ¨%°!­)Ö 4ó    Ú89c                 ó"   € RV ^,          ,          # )gÍÌÌÌÌ¤t@g €µbÆòBr   r   s   &,r	   r
   r
      s   €  °%¸!µ)Ö <r   Ú90c                 óh   € V^r,          V,          R,          R,          R,          V ^,          ,          # )ér   ié  g   ¢”mBg    xÇ:Ar   ©r   Únum_smsÚ
clock_rater   s   &&&,r	   r
   r
      s+   € °wÀµ}ÀzÕ7QÐU_Õ7`ÐcgÕ7gÐkoÕ6oØ	��ö6r   Ú100c                 óZ   € VR ,          VR,          ,          R,          V ^,          ,          # )i @  ç     @�@g    €„.Ar   r   s   &&&,r	   r
   r
      s%   € °gÀµoÈÐVYÕIYÕ6ZÐ]`Õ6`ÐejÐmnÕenÖ5or   Úgfx90aÚgfx942Úgfx950i   i   i    c                ó  € V R8X  d1   \         V,          V,          V,          R,          V^,          ,          # V \        9  d   \        RV  24      hV\        V ,          9  d   \        RV 24      h\        V ,          V,          pV! W#VR7      # )a¦  
Calculate the maximum FLOPS for a given device type and width.

Args:
    device_type (str): The type of device (e.g., "CUDA", "HIP").
    arch (str): The architecture of the device (e.g., "80", "90").
    width (int): The width in bits.
    num_sms (int): The number of streaming multiprocessors.
    clock_rate (float): The clock rate in GHz.

Returns:
    float: The maximum FLOPS for the given device type and width.
ÚHIPr   zUnsupported device type: zUnsupported architecture: )r   r   )Úamd_fp8_flops_by_archÚflops_by_deviceÚ
ValueError)Údevice_typeÚarchr   r   r   Ú
flops_funcs   &&&&& r	   Ú	max_flopsr"      s‡   € ð �eÔÜ$ TÕ*¨WÕ4°zÕAÀCÕGÈ5ÐSTÍ9ÕUÐUàœ/Ô)ÜÐ4°[°MÐBÓCÐCà”? ;Õ/Ô/ÜÐ5°d°VÐ<Ó=Ð=ä  Õ-¨dÕ3€Já�e¸ÔDÐDr   c                óx   € V R8X  d   ^V,          V,          R,          ^,          # V R8X  g   Q h\         V,          # )zø
Calculate the maximum bytes per second for a given bus width and memory clock rate.

Args:
    bus_width (int): The bus width in bits.
    memory_clock_rate (float): The memory clock rate in GHz.

Returns:
    float: The maximum bytes per second.
r   r   r   )Úamd_bps_by_arch)r   r    Ú	bus_widthÚmemory_clock_rates   &&&&r	   Úmax_bpsr'   6   s?   € ð �fÔØ�9�}Ð0Õ0°3Õ6¸Õ:Ð:à˜eÔ#Ð#Ð#Ü˜tÕ$Ð$r   Ng   èvH‡Bg   xH“Bg   ¢”�B)r   r$   r   r"   r'   r   r   r	   Ú<module>r(      sf   ðà
ØÙ4ØÙ<Øñ	àÙoð
ð€ð ˆjØˆjØˆjð€ð " 4¨°4¸À4ÐHÐ òEô8%r   