
    3j                        S r SSKJr  SSKJr  SSKJrJrJrJrJ	r	J
r
JrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJr  SSKJrJrJrJ r J!r!J"r"J#r#J$r$J%r%J&r&J'r'J(r(J)r)J*r*J+r+J,r,J-r-J.r.J/r/J0r0J1r1J2r2J3r3J4r4J5r5J6r6J7r7J8r8J9r9J:r:J;r;J<r<J=r=J>r>J?r?J@r@JArAJBrBJCrCJDrDJErEJFrFJGrGJHrHJIrIJJrJJKrKJLrLJMrMJNrNJOrOJPrPJQrQJRrRJSrSJTrTJUrUJVrVJWrWJXrXJYrYJZrZJ[r[J\r\J]r]J^r^J_r_J`r`JaraJbrbJcrcJdrdJereJfrfJgrgJhrhJiriJjrjJkrkJlrlJmrmJnrnJoroJprpJqrqJrrrJsrsJtrtJuruJvrvJwrwJxrx  SSKJyryJzrzJ{r{J|r|J}r}J~r~JrJrJrJrJrJrJrJrJrJrJr  SSKJrJrJrJrJrJrJrJrJrJr  SSKJr  / S	QrS
 rg)zisort:skip_file   )math)extra)argmaxargminbitonic_mergecdivcumprodcumsumflip
interleavemaxminravel	reduce_orsigmoidsoftmaxsortsqueezesum	swizzle2dtopk	unsqueezexor_sumzeros
zeros_like)\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
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	conditionconst	constexprconstexpr_type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map_elementwisemax_constancymax_contiguousmaximumminimummulmultiple_ofnum_programspermutepi32_tpointer_type
program_idrangereducereshapeslicesplitstatic_assertstatic_printstatic_rangestoresubtensor	to_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)target_info)r   r   r   r   r    r!   r   r#   r$   r%   r   r   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r   r1   r2   r3   r4   r5   r   r   r6   r7   r8   r9   r:   r~   r	   r
   r;   r<   r=   r   r>   r?   r@   r   ry   rz   rA   r   r   r   rB   rC   rD   rE   rF   rG   rH   rI   r   r{   rJ   rK   rL   rM   r   rN   rO   rP   rQ   rR   rS   rT   r|   r}   rU   rV   r   r   rW   rX   rY   r   rZ   r[   r\   r]   r   r^   r   r   r_   r`   ra   r   r   r   r   r   r   rb   r   rc   r   rd   r   re   r   r   r   r   rf   r   r   r   rg   rh   ri   rj   rk   r   r   r   rl   r   rm   rn   ro   rq   rr   rs   rt   r   rx   r   ru   rv   rw   r   r   r   c           	         SSK Jn  [        X5      (       aK  [        U 5      R                  R                  SS 5      n[        U  Vs/ s H  n[        XA5      PM     snU5      $ U S   S:X  a+  U SS  n SnU S   S:X  a  U SS  n Sn[        X5      n[        XeS	9$ U R                  S
5      (       GaX  U R                  S5      S   R                  S5      nUR                  SSS9u  pU	R                  SSS9u  pU
R                  S5      R                  S5       Vs/ s H  n[        UR                  5       5      PM     n
nU	R                  S5      n[        U5      n[        US 5      n[        U
5      n[        [         /U-  5      n[        ["        /U-  5      n[%        X5      nU(       aR  SSKJnJnJn  SSKJn  SSKJn  [5        U[7        UUUS95      n[        UU5      (       a  U" UUUU5      $ U" UUUU5      $ [1        UUU5      $ U R                  S5      (       a  [9        U5      $ 0 S[:        _S[<        _S[>        _S[@        _S[B        _S[D        _S[F        _S[H        _S[J        _S[L        _S[N        _S[P        _S [         _S!["        _S"[L        _S#[R        _S$[T        _[V        [X        [L        S%.EnUU    $ s  snf s  snf )&N    )ro   _fields*r   FkT)
element_tyr8   
tensordesc<>[)maxsplit],)NVMMASharedLayoutPaddedSharedLayoutSwizzledSharedLayout)r"   r9   fp8e4nvfp8e4b8fp8e5fp8e5b16fp8e4b15fp16bf16fp32fp64i1i8i16i32i64u1u8u16)u32u64B)-builtinsro   
isinstancetype__dict__getrp   	str_to_tyr`   
startswithrf   rstripintstriplstriplenrP   rQ   r1   +triton.experimental.gluon.language._layoutsr   r   r   4triton.experimental.gluon.language.nvidia.hopper.tmar"   2triton.experimental.gluon.language.amd.gfx1250.tdmevaldictr:   rF   rG   rH   rI   rE   rB   r0   rC   rD   rN   rR   rO   rt   rq   rr   rs   )namecro   fieldsxr8   tyinnerr@   restblock_shapeslayoutis_gluonndim
shape_typestride_typeblockr   r   r   nvidia_tensor_descriptor_typeamd_tensor_descriptor_typetyss                           R/home/wildlama/miniconda3/lib/python3.13/site-packages/triton/language/__init__.pyr   r      s   $d$$((D9D9Dq9Q?D96BBAw#~ABx7c>8DEtr77|$$

3"))#.kk#k2 JJsQJ7/:/A/A#/F/L/LS/QR/Q!s1779~/QRS!v;%&;$/
 5'D.25. E'8M_*>@AF &"3444UJU[\\1%[RXYY%eZEE{##a  :: 	 	K	
 	K 	 	 	 	 	d 	d 	u 	u 	u 	d  	e!" 	v#$ )C, t9 : Ss   J6#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   r   r   corer   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   r   r   r   r   r   r   randomr   r   r   r   r   r   r   r   r   r   r   __all__r        r   <module>r      s            2] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ]|       PfDr   