Ë
    ÏÍ:j  ã                   ón  — d Z ddlmZ ddlmZ ddlmZmZmZmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ ddlmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZWmXZXmYZYmZZZm[Z[m\Z\m]Z]m^Z^m_Z_m`Z`maZambZbmcZcmdZdmeZemfZfmgZgmhZhmiZimjZjmkZkmlZlmmZmmnZnmoZompZpmqZqmrZr ddlmsZsmtZtmuZumvZvmwZwmxZxmyZymzZzm{Z{m|Z|m}Z}m~Z~mZm€Z€m�Z�m‚Z‚mƒZƒ ddl„m…Z…m†Z†m‡Z‡mˆZˆm‰Z‰mŠZŠm‹Z‹mŒZŒm�Z�mŽZŽ g d¢Z�d	„ Z�y
)zisort:skip_fileé   )Úmath)Úextra)ÚargmaxÚargminÚbitonic_mergeÚcdivÚcumprodÚcumsumÚflipÚ
interleaveÚmaxÚminÚravelÚ	reduce_orÚsigmoidÚsoftmaxÚsortÚsumÚ	swizzle2dÚtopkÚxor_sumÚzerosÚ
zeros_like)XÚPropagateNanÚTRITON_MAX_TENSOR_NUMELÚload_tensor_descriptorÚstore_tensor_descriptorÚmake_tensor_descriptorÚtensor_descriptorÚtensor_descriptor_typeÚaddÚadvanceÚarangeÚassociative_scanÚassumeÚ
async_taskÚ
atomic_addÚ
atomic_andÚ
atomic_casÚ
atomic_maxÚ
atomic_minÚ	atomic_orÚatomic_xchgÚ
atomic_xorÚbfloat16Ú
block_typeÚ	broadcastÚbroadcast_toÚcatÚcastÚclampÚconstÚ	constexprÚconstexpr_functionÚdebug_barrierÚdevice_assertÚdevice_printÚdotÚ
dot_scaledÚdtypeÚexpand_dimsÚfloat16Úfloat32Úfloat64Úfloat8e4b15Ú
float8e4nvÚ
float8e4b8Úfloat8e5Úfloat8e5b16ÚfullÚgatherÚ	histogramÚinline_asm_elementwiseÚint1Úint16Úint32Úint64Úint8ÚjoinÚloadÚmake_block_ptrÚmax_constancyÚmax_contiguousÚmaximumÚminimumÚmultiple_ofÚnum_programsÚpermuteÚpi32_tÚpointer_typeÚ
program_idÚrangeÚreduceÚreshapeÚsliceÚsplitÚstatic_assertÚstatic_printÚstatic_rangeÚstoreÚtensorÚtransÚtupleÚ
tuple_typeÚuint16Úuint32Úuint64Úuint8ÚviewÚvoidÚwhere)ÚumulhiÚexpÚexp2ÚfmaÚlogÚlog2ÚcosÚrsqrtÚsinÚsqrtÚsqrt_rnÚabsÚfdivÚdiv_rnÚerfÚfloorÚceil)
Úpair_uniform_to_normalÚphiloxÚphilox_implÚrandÚrand4xÚrandintÚ	randint4xÚrandnÚrandn4xÚuint_to_uniform_float)ˆr   r   r   r   r   r   r}   r!   r"   r#   r   r   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r   r0   r1   r2   r3   r4   r   r‚   r5   r6   r7   r8   rx   r	   r
   r9   r:   r;   r   r<   r=   r>   r€   rs   rt   r?   r   r~   r   r@   rA   rB   rC   rD   rE   rF   rG   r�   ru   rH   rI   rJ   rK   r   rL   rM   rN   rO   rP   rQ   rR   rv   rw   rS   r   r   rT   rU   rV   r   rW   rX   rY   rƒ   rZ   r„   r…   r[   r\   r]   r†   r‡   rˆ   r‰   rŠ   r‹   r^   r   r_   r   r`   ry   ra   r   rz   r   r   rb   r{   r|   rc   rd   re   rf   r   r   rg   r   rh   ri   rk   rl   rm   rn   rŒ   rr   ro   rp   rq   r   r   r   c                 ó  — ddl m} t        | |«      rHt        | «      j                  j                  dd «      }t        | D �cg c]  }t        |«      ‘Œ c}|«      S | d   dk(  r.| dd  } d}| d   dk(  r| dd  } d}t        | «      }t        ||¬	«      S | j                  d
«      �rA| j                  d«      d   j                  d«      }|j                  dd¬«      \  }}|j                  dd¬«      \  }	}|	j                  d«      j                  d«      D �
cg c]  }
t        |
j                  «       «      ‘Œ }	}
|j                  d«      }t        |«      }t        |«      }t        |	«      }t        t         g|z  «      }t        t"        g|z  «      }t%        ||	«      }|r;ddlm} ddlm} t/        |t1        |¬«      «      }t        ||«      sJ ‚ |||||«      S t-        |||«      S | dk(  rt2        S i dt4        “dt6        “dt8        “dt:        “dt<        “dt>        “dt@        “dtB        “dtD        “dtF        “dtH        “d tJ        “d!t         “d"t"        “d#tF        “d$tL        “d%tN        “tP        tR        tF        d&œ¥}||    S c c}w c c}
w )'Né    )ri   Ú_fieldsÚ*r   FÚkT)Ú
element_tyr6   Ú
tensordescú<ú>ú[é   )Úmaxsplitú]ú,)ÚNVMMASharedLayout)r    r7   Úfp8e4nvÚfp8e4b8Úfp8e5Úfp8e5b16Úfp8e4b15Úfp16Úbf16Úfp32Úfp64Úi1Úi8Úi16Úi32Úi64Úu1Úu8Úu16)Úu32Úu64ÚB)*Úbuiltinsri   Ú
isinstanceÚtypeÚ__dict__Úgetrj   Ú	str_to_tyr\   Ú
startswithrb   ÚrstripÚintÚstripÚlstripÚlenrN   rO   r0   Ú+triton.experimental.gluon.language._layoutsr›   Ú4triton.experimental.gluon.language.nvidia.hopper.tmar    ÚevalÚdictr7   rD   rE   rF   rG   rC   r@   r/   rA   rB   rL   rP   rM   rn   rk   rl   rm   )Únameri   ÚfieldsÚxr6   ÚtyÚinnerr>   ÚrestÚblock_shapeÚsÚlayoutÚis_gluonÚndimÚ
shape_typeÚstride_typeÚblockr›   Úgluon_tensor_descriptor_typeÚtyss                       úm/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/triton/language/__init__.pyrµ   rµ     sÈ  € Ýä�$˜ÔÜ�d“×$Ñ$×(Ñ(¨°DÓ9ˆÜ°Ö6¨Aœ9 Q�<Ò6¸Ó?Ð?àˆA�w�#‚~Ø�A�BˆxˆØˆØ�‰7�cŠ>Ø˜˜�8ˆDØˆEÜ�t‹_ˆÜ r°Ô7Ð7à‡��|Õ$Ø—
‘
˜3“ Ñ"×)Ñ)¨#Ó.ˆØ—k‘k #°�kÓ2‰ˆˆtØ ŸJ™J s°Q˜JÓ7Ñˆ�TØ/:×/AÑ/AÀ#Ó/F×/LÑ/LÈSÓ/QÖR¨!”s˜1Ÿ7™7›9•~ÐRˆÐRØ—‘˜SÓ!ˆÜ�v“;ˆÜ˜%Ó ˆÜ�;ÓˆÜ¤ ¨$¡Ó/ˆ
ä ¤5 '¨D¡.Ó2ˆÜ˜5 +Ó.ˆÙÝUõ DÜ˜&¤$Ð9JÔ"KÓLˆFÜ˜fÐ&7Ô8Ð8Ð8Ù/°°zÀ;ÐPVÓWÐWÜ% e¨Z¸ÓEÐEàˆ{ÒÜÐðØ”:ðà”:ðð 	”ðð 	”Kð	ð
 	”Kðð 	”ðð 	”ðð 	”ðð 	”ðð 	Œdðð 	Œdðð 	Œuðð 	Œuðð 	Œuðð 	Œdðð  	Œeð!ð" 	Œvð#ô$ ÜÜò)€Cð, ˆt‰9Ðùòs 7ùò Ss   ÁI?Ä JN)‘Ú__doc__Ú r   r   Ústandardr   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   Úcorer   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r€   r�   r‚   Úrandomrƒ   r„   r…   r†   r‡   rˆ   r‰   rŠ   r‹   rŒ   Ú__all__rµ   © ó    rÐ   ú<module>rÙ      sï   ðÙ õ Ý ÷÷ ÷ ÷ ÷ õ ÷.Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Y÷ Yó Y÷t÷ ÷ ÷ õ ÷÷ ÷ òI€óX>rØ   