
    ^j                        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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/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`maZambZbmcZcmdZdmeZemfZfmgZgmhZhmiZimjZjmkZkmlZlmmZmmnZnmoZompZpmqZqmrZrmsZsmtZtmuZumvZvmwZwmxZx ddlmyZymzZzm{Z{m|Z|m}Z}m~Z~mZmZmZmZmZmZmZmZmZmZmZ ddlmZmZmZmZmZmZmZmZmZmZ ddlmZ g d	Zd
 Zy)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           	      d   ddl m} t        | |      rIt        |       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
      rW| 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        |d       }t        |
      }t        t         g|z        }t        t"        g|z        }t%        ||
      }|rPddlm}m}m} ddlm} ddlm} t5        |t7        |||            }t        ||      r |||||      S  |||||      S t1        |||      S | j                  d      rt9        |      S i dt:        dt<        dt>        dt@        dtB        dtD        dtF        dtH        dtJ        dtL        dtN        dtP        d t         d!t"        d"tL        d#tR        d$tT        tV        tX        tL        d%}||    S c c}w c c}w )&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                           c/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/triton/language/__init__.pyr   r      s   $d$$((D9D9q9Q?96BBAw#~ABx7c>8DEtQr77|$

3"))#.kk#k2t JJsQJ7T/:/A/A#/F/L/LS/QR!s1779~RRS!v;%&;$/
 5'D.25+. E'8M_*>@AF &"3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   J( 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   