Ë
    ÏÍ:j�  ã                   ó6   — d „ d„ d„ d„ dœd„ d„ dœdœZ d	„ Zd
„ Zy)c                 ó   — d| dz  z  S )Ng  ¸’2¼Cé   © ©ÚwidthÚkwargss     új/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/triton/profiler/specs.pyú<lambda>r	      s   €  ¨%°!©)Ñ 4€ ó    c                 ó   — d| dz  z  S )Ng €µbÆòBr   r   r   s     r   r	   r	      s   €  °%¸!±)Ñ <€ r
   c                 ó0   — |dz  |z  dz  dz  dz  | dz  z  S )Nér   g    xÇ:Aié  g   ¢”mBr   r   ©r   Únum_smsÚ
clock_rater   s       r   r	   r	      s-   € °wÀ±}ÀzÑ7QÐU_Ñ7`ÐcgÑ7gÐkoÑ6oØ	�‰ñ6€ r
   c                 ó*   — |dz  |dz  z  dz  | dz  z  S )Ni @  ç     @�@g    €„.Ar   r   r   s       r   r	   r	      s'   € °gÀ±oÈÐVYÑIYÑ6ZÐ]`Ñ6`ÐejÐmnÑenÑ5o€ r
   )Ú80Ú89Ú90Ú100c                 ó   — d| dz  z  S )Ng  //bÅõBr   r   r   s     r   r	   r	      s   € ¨&°E¸A±IÑ*>€ r
   c                 ó   — d| dz  z  S )Ng ?³y”"Cr   r   r   s     r   r	   r	      s   € ¨)°u¸q±yÑ*A€ r
   )Úgfx90aÚgfx942)ÚCUDAÚHIPc                 óŽ   — | t         vrt        d| › �«      ‚|t         |    vrt        d|› �«      ‚t         |    |   } ||||¬«      S )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.
    zUnsupported device type: zUnsupported architecture: )r   r   )Úflops_by_deviceÚ
ValueError)Údevice_typeÚarchr   r   r   Ú
flops_funcs         r   Ú	max_flopsr#      s]   € ð œ/Ñ)ÜÐ4°[°MÐBÓCÐCà”? ;Ñ/Ñ/ÜÐ5°d°VÐ<Ó=Ð=ä  Ñ-¨dÑ3€Já�e W¸ÔDÐDr
   c                 ó   — d| z  |z  dz  dz  S )a  
    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   )Ú	bus_widthÚmemory_clock_rates     r   Úmax_bpsr(   -   s   € ð ˆy‰=Ð,Ñ,¨sÑ2°QÑ6Ð6r
   N)r   r#   r(   r   r
   r   ú<module>r)      s<   ðñ 	5á<ñ	ñ 	pñ
ñ ?ÙAññ€ò&Eó27r
   