Ë
    Z^(h§  ã                   ó  — d dl mZ d dlmZmZ d dlZd dlZd dlZd dlm	Z	 de
dee
   fd„Zdej                  j                  fd	„Zd
e
deeee   f   fd„Zd„ Zd„ Zdddœdefd„Zed„ «       Zdefd„Zdefd„Zdefd„Zy)é    )Úcontextmanager)ÚAnyÚcastN)ÚTimerÚfilenameÚreturnc           	      óÔ  — d}d}d }g }t        | «      5 }|j                  «       j                  |«      }t        |«      D ]‹  \  }}|dk(  rŒ|j	                  |«      }	|	dk(  rŒ#|d |	 }
||dz
     j                  «       d   }|
j                  d¬«      D �cg c]  }|t        |«      d  ‘Œ }}|j                  dj                  |«      «       Œ� 	 d d d «       |S c c}w # 1 sw Y   |S xY w)	Nz<GRAPH_EXPORT>z</GRAPH_EXPORT>r   éÿÿÿÿé   T)ÚkeependsÚ )	ÚopenÚreadÚsplitÚ	enumerateÚfindÚ
splitlinesÚlenÚappendÚjoin)r   ÚBEGINÚENDÚpfxÚgraphsÚfÚ
split_strsÚiÚ	split_strÚend_locÚsÚxÚliness                úY/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/torch/utils/jit/log_extract.pyÚ
extract_irr$   	   sõ   € Ø€EØ
€CØ
€CØ€FÜ	ˆh‹ð *˜1Ø—V‘V“X—^‘^ EÓ*ˆ
Ü% jÓ1ò 		*‰LˆAˆyØ�AŠvØØ—n‘n SÓ)ˆGØ˜"Š}ØØ˜(˜7Ð#ˆAØ˜Q ™UÑ#×.Ñ.Ó0°Ñ4ˆCØ+,¯<©<À¨<Ó+FÖG a�Q”s˜3“x�y’\ÐGˆEÐGØ�M‰M˜"Ÿ'™' %›.Õ)ñ		*÷*ð €Mùò H÷*ð €Mús   ”B CÂCÂ)$CÃCÃC'Úinp_typec                 óÔ   — | j                  «       }| j                  «       }| j                  «       }| j                  «       }|€J ‚|€J ‚|€J ‚|€J ‚t	        j
                  ||||¬«      S )N)ÚsizeÚstrideÚdeviceÚdtype)ÚsizesÚstridesr)   r*   ÚtorchÚempty_strided)r%   r'   r(   r)   r*   s        r#   Úmake_tensor_from_typer/      s{   € Ø�>‰>Ó€DØ×ÑÓ€FØ�_‰_Ó€FØ�N‰NÓ€EØÐÐÐØÐÐÐØÐÐÐØÐÐÐÜ×Ñ D°ÀÈeÔTÐTó    Úirc                 ó|  — t         j                  j                  | d¬«      }|j                  «        g }|j	                  «       D �]©  }t        |j                  «       t         j                  j                  «      r&|j                  t        j                  dd«      «       Œ\t        |j                  «       t         j                  j                  «      r&|j                  t        j                  dd«      «       Œ´t        |j                  «       t         j                  j                  «      rNt        t         j                  j                  |j                  «       «      }|j                  t        |«      «       �Œ4t        |j                  «       t         j                  j                   «      r*|j                  t        j                  dd«      dk(  «       �Œ�t#        d|j                  «       › �«      ‚ t         j                  j%                  d|«      }t         j                  j'                  |j(                  «       ||fS )	NT)Úparse_tensor_constantsgš™™™™™¹?éd   r   r   z,A default value is not implemented for type Úforward)r-   Ú_CÚparse_irÚmakeMultiOutputIntoTupleÚinputsÚ
isinstanceÚtypeÚ	FloatTyper   ÚrandomÚuniformÚIntTypeÚrandintÚ
TensorTyper   r/   ÚBoolTypeÚNotImplementedErrorÚ_create_function_from_graphÚ!_jit_pass_erase_shape_informationÚgraph)r1   rF   r9   ÚinpÚ
tensorTypeÚfuncs         r#   Úload_graph_and_inputsrJ   )   sy  € Ü�H‰H×Ñ˜b¸ÐÓ>€EØ	×"Ñ"Ô$Ø€FØ�|‰|‹~ó cˆÜ�c—h‘h“j¤%§(¡(×"4Ñ"4Ô5Ø�M‰Mœ&Ÿ.™.¨¨SÓ1Õ2Ü˜Ÿ™›
¤E§H¡H×$4Ñ$4Ô5Ø�M‰Mœ&Ÿ.™.¨¨CÓ0Õ1Ü˜Ÿ™›
¤E§H¡H×$7Ñ$7Ô8ÜœeŸh™h×1Ñ1°3·8±8³:Ó>ˆJØ�M‰MÔ/°
Ó;Ö<Ü˜Ÿ™›
¤E§H¡H×$5Ñ$5Ô6Ø�M‰Mœ&Ÿ.™.¨¨AÓ.°!Ñ3Ö4ä%Ð(TÐUX×U]ÑU]ÓU_ÐT`Ð&aÓbÐbðcô �8‰8×/Ñ/°	¸5ÓA€DÜ	‡H�H×.Ñ.¨t¯z©zÔ:Ø�&ˆ>Ðr0   c                 ó`   — t        d| |dœ¬«      }|j                  «       }|j                  dz  S )Nzfn(*inputs))Úfnr9   )ÚstmtÚglobalséè  )r   Úblocked_autorangeÚmedian)rL   r9   Ú	test_runsÚtÚtimess        r#   Ú	time_cudarU   >   s0   € Ü�=°ÀÑ*GÔH€AØ×ÑÓ!€EØ�<‰<˜$ÑÐr0   c                 ó’   — t        j                  «       }t        |«      D ]  } | |Ž  Œ	 t        j                  «       }||z
  |z  dz  S )NrO   )ÚtimeÚperf_counterÚrange)rL   r9   rR   r    Ú_Úes         r#   Útime_cpur\   C   sM   € Ü×ÑÓ€AÜ�9Óò ˆÙ
ˆFŠðä×ÑÓ€AØ�‰E�YÑ Ñ%Ð%r0   é
   é   )Úwarmup_runsrR   c                ó  — t        | «      \  }}t        |«      D ]  } ||Ž  Œ	 d }|D ]7  }t        |t        j                  «      sŒ|j
                  j                  dk(  } n |€J ‚|rt        |||«      }|S t        |||«      }|S )NÚcpu)	rJ   rY   r:   r-   ÚTensorr)   r;   r\   rU   )	r1   r9   r_   rR   rF   rZ   Úis_cpuÚinputÚouts	            r#   Úrun_testrf   J   s    € Ü$ RÓ(�H€Eˆ1Ü�;Óò ˆÙˆvŠðð €FØò ˆÜ�eœUŸ\™\Õ*Ø—\‘\×&Ñ&¨%Ñ/ˆFÙðð ÐÐÐá06Œ(�5˜& )Ó
,€CØ€Jô =FÀeÈVÐU^Ó<_€CØ€Jr0   c               /   óÚ   K  — t         j                  j                  d«      }	 d –— t         j                  j                  |«       y # t         j                  j                  |«       w xY w­w)NF)r-   r6   Ú_get_graph_executor_optimize)ÚargsÚkwargsÚold_optimizes      r#   Úno_fuserrl   Y   sF   è ø€ ä—8‘8×8Ñ8¸Ó?€Lð<Ûä�‰×-Ñ-¨lÕ;øŒ�‰×-Ñ-¨lÕ;üs   ‚ A+£A § A+Á!A(Á(A+c                 óZ   — t        «       5  t        | |«      cd d d «       S # 1 sw Y   y xY w)N)rl   rf   ©r1   r9   s     r#   Úrun_baseline_no_fusionro   a   s&   € Ü	‹ñ $Ü˜˜FÓ#÷$÷ $ò $ús   ‹!¡*c                 óœ  — 	 |rdgndg}t         j                  j                  |«      }t         j                  j                  d«      5  t	        | |«      cd d d «       t         j                  j                  |«       S # 1 sw Y   nxY w	 t         j                  j                  |«       y # t         j                  j                  «       w xY w)N)ÚDYNAMICr]   )ÚSTATICr]   Úfuser1)r-   ÚjitÚset_fusion_strategyÚfuserrf   )r1   r9   ÚdynamicÚstratÚ	old_strats        r#   Úrun_nncrz   f   sž   € ð1Ù%,�Ñ!°>Ð2BˆÜ—I‘I×1Ñ1°%Ó8ˆ	Ü�Y‰Y�_‰_˜XÓ&ñ 	(Ü˜B Ó'÷	(ð 	(ô 	�	‰	×%Ñ% iÕ0÷	(ð 	(úð 	(ô 	�	‰	×%Ñ% iÕ0øŒ�	‰	×%Ñ% iÕ0ús$   ‚AB* ÁA=Á	B* Á=BÂB* Â*!Cc                 ó„   — t         j                  j                  d«      5  t        | |«      cd d d «       S # 1 sw Y   y xY w)NÚfuser2)r-   rt   rv   rf   rn   s     r#   Úrun_nvfuserr}   o   s1   € Ü	�‰�‰˜Ó	"ñ $Ü˜˜FÓ#÷$÷ $ò $ús    6¶?)Ú
contextlibr   Útypingr   r   r=   r-   rW   Útorch.utils.benchmarkr   ÚstrÚlistr$   r6   rA   r/   ÚtuplerJ   rU   r\   Úfloatrf   rl   ro   rz   r}   © r0   r#   ú<module>r†      s»   ðå %ß Û Û Û Ý 'ð˜ð   c¡ó ð*	U E§H¡H×$7Ñ$7ó 	Uð˜cð  e¨C°°c±¨NÑ&;ó ò*ò
&ð )+°bò ¸Uó ð ñ<ó ð<ð$¨%ó $ð
1 Eó 1ð$˜uô $r0   