Ë
    [^(hZ
  ã                   óB   — d Z ddlZddlmc mZ d„ Zedk(  r e«        yy)zCExample of the Timer and Fuzzer APIs:

$ python -m examples.fuzzer
é    Nc                  ó¨  — t        j                  t        d«      D � cg c]  } t        j                  d| › �ddd¬«      ‘Œ  c} t        j                  ddd	d
œ¬«      gdD �cg c]  }t        j                  |ddddd¬«      ‘Œ c}gd¬«      }d}g }t        |j                  |¬«      «      D �]>  \  } \  }}}|d   t        |d   d   «      }	}|d   t        |d   d   «      }}
dj                  t        d„ |j                  D «       «      «      }dj                  |j                  «       d›d|d›d�|j                  «       rdn|	d ›d�|
j                  «       rdn|d ›d�g«      }t        j                  d!||¬"«      }|j                  |j                  d#¬$«      «       d%|j                  «       i|d&   _        t#        d'| d(z   › d)|› �d¬*«       t$        j&                  j)                  «        �ŒA t#        «        t#        d+d,d,|j*                  z
  z  d-›�«       d.„ }|j-                  |¬/«       d0d1› d2d3› d4d5› �}t#        |j/                  d6«      «       |d d7 D ]&  }t#         ||«      d8z  d9›d:|j0                  › �«       Œ( t#        d;|j/                  d<«      z   «       |d=d  D ]&  }t#         ||«      d8z  d9›d:|j0                  › �«       Œ( y c c} w c c}w )>Né   Úké   i @  Ú
loguniform)ÚnameÚminvalÚmaxvalÚdistributionÚdg333333ã?gš™™™™™Ù?)é   r   )r   r   )ÚxÚy)Úk0Úk1Úk2g      è?i   i   )r   ÚsizeÚdim_parameterÚprobability_contiguousÚmin_elementsÚmax_elementsr   )Ú
parametersÚtensorsÚseedéú   )Únr   Úorderr   z, c              3   ó$   K  — | ]  }|d ›–— Œ
 y­w)z>4N© )Ú.0Úis     úc/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/torch/utils/benchmark/examples/fuzzer.pyú	<genexpr>zmain.<locals>.<genexpr>0   s   è ø€ Ò;¨a 1 R &£	Ñ;ùs   ‚Ú z>7z | z<16Ú
contiguousz<12zx + y)ÚstmtÚglobalsÚdescriptiongš™™™™™¹?)Úmin_run_timeÚnumeléÿÿÿÿúé   z / )Úendz#Average attempts per valid config: g      ð?z.1fc                 ó:   — | j                   | j                  d   z  S )Nr*   )ÚmedianÚmetadata)Úms    r"   Útime_fnzmain.<locals>.time_fnG   s   € Ø�x‰x˜!Ÿ*™* WÑ-Ñ-Ð-ó    )Úkeyz{:>6}z                   zSize    Shapez             zX order        Y order
zP--------------------------------------------------------------------------------zBest:é   g    eÍÍAz>4.1fz ns / element     ú
zWorst:iñÿÿÿ)Úbenchmark_utilsÚFuzzerÚrangeÚFuzzedParameterÚFuzzedTensorÚ	enumerateÚtakeÚstrÚjoinÚtupleÚshaper*   Úis_contiguousÚTimerÚappendÚblocked_autoranger1   ÚprintÚsysÚstdoutÚflushÚrejection_rateÚsortÚformatr(   )r!   r   Ú
add_fuzzerr   Úmeasurementsr   Útensor_propertiesÚ_r   Úx_orderr   Úy_orderrB   r(   Útimerr3   Útemplater2   s                     r"   ÚmainrV      s   € Ü ×'Ñ'ô ! ›8öð ô  ×/Ñ/Ø˜Q˜C˜ØØ$Ø!-ö	òô ×+Ñ+ØØ!$¨Ñ-ôð
ð. )ö	ð ô  ×,Ñ,ØØ+Ø"%Ø+/Ø!*Ø!+öò	ð
ð ô7€Jð< 	€AØ€LÜ.7¸
¿¹È!¸Ó8LÓ.Mó Ñ*ˆÑ*ˆGÐ&¨Ø˜S‘\¤3Ð'8¸Ñ'=¸gÑ'FÓ#Gˆ7ˆØ˜S‘\¤3Ð'8¸Ñ'=¸gÑ'FÓ#Gˆ7ˆØ—	‘	œ%Ñ;°1·7±7Ô;Ó;Ó<ˆà—g‘gØ�w‰w‹y˜ˆn˜C  c˜{¨#Ð.Ø Ÿ™Ô0‰|°g¸cÐBÀ#ÐFØ Ÿ™Ô0‰|°g¸cÐBÀ#ÐFð
ó ˆô  ×%Ñ%ØØØ#ô
ˆð 	×Ñ˜E×3Ñ3ÀÐ3ÓEÔFØ%,¨a¯g©g«iÐ$8ˆ�RÑÔ!Ü��1�q‘5�'˜˜Q˜CÐ  bÕ)Ü�
‰
×ÑÖð)ô* 
„Gô 
Ð/°°b¸:×;TÑ;TÑ6TÑ0UÐVYÐ/ZÐ
[Ô\ò.à×Ñ˜'ÐÔ"à˜˜
 -°¨zÐ9QÐRZÐQ[Ð\€HÜ	ˆ(�/‰/˜'Ó
"Ô#Ø˜#˜2Ðò LˆÜ‘˜“˜cÑ! %Ð(Ð(:¸1¿=¹=¸/ÐJÕKðLô 
ˆ$�—‘ Ó*Ñ
*Ô+Ø˜#˜$Ðò LˆÜ‘˜“˜cÑ! %Ð(Ð(:¸1¿=¹=¸/ÐJÕKñLùòEùò	s   �#K
Á "K
Ú__main__)Ú__doc__rH   Útorch.utils.benchmarkÚutilsÚ	benchmarkr8   rV   Ú__name__r   r4   r"   ú<module>r]      s1   ðñó
 ç /Ð /òFLðR ˆzÒÙ…Fð r4   