
    9i                     J    S SK Jr  S SKJrJr  S SKJr  \ " S S5      5       rg)    )	dataclass)ListAny)validate_block_shapec                       \ rS rSr% \\S'   \\   \S'   \\   \S'   \\   \S'   Sr\	\S'   S r
\SS	\S\\   4S
 jj5       rSrg)TensorDescriptor   baseshapestridesblock_shapezeropaddingc                 >   [        U R                  5      n[        U R                  5      U:X  d
   SU  35       e[        U R                  5      U:X  d
   SU  35       eUS:  d   S5       eUS::  d   S5       e[	        U R
                  5      nUR                  S;  a(  U R
                  R                  5       S-  S:X  d   S5       e[        U R                  5        U R
                  R                  R                  nU R                  S S	  H  nXC-  S-  S:X  a  M   S
5       e   U R                  S	   S:X  d   S5       eU R                  S:X  d  U R                  S:X  d   S5       eU R                  S:X  a-  U R
                  R                  R                  (       d   S5       eg g )Nzrank mismatch: r   zrank must not be zero   zrank cannot be more than 5)
FakeTensorFunctionalTensor   zbase must be 16-byte alignedzstrides must be 16-byte aligned   z!Last dimension must be contiguousr   nanzIllegal value for paddingzAPadding option `nan` is only supported for floating point tensors)lenr   r   r   typer
   __name__data_ptrr   dtypeitemsizer   is_floating_point)selfrankty
elem_bytesstrides        ^/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/triton/tools/tensor_descriptor.py__post_init__TensorDescriptor.__post_init__   s{   4::4<< D(BOD6*BB(4##$,Fv.FF,ax000xqy666y$))_;;@@99%%'",1Q3QQ1T--.YY__--
ll3B'F'2-2U4UU2 (||B1$I&II$||v%)>[@[[><<5 99??44y6yy4 !    tensorc                 L    [        X R                  U R                  5       X5      $ )N)r   r   r#   )r(   r   r   s      r$   from_tensorTensorDescriptor.from_tensor    s    fmmo{\\r'    N)r   )r   
__module____qualname____firstlineno__r   __annotations__r   intr   strr%   staticmethodr*   __static_attributes__r,   r'   r$   r   r      s_    
I9#YcGSz$ ]C ]d3i ] ]r'   r   N)dataclassesr   typingr   r   triton._utilsr   r   r,   r'   r$   <module>r8      s*    !  . ] ] ]r'   