ó
    œèhî  ã                   ód   • S SK Jr  S SKJrJr  S SKJrJrJr  S SK	J
r
  S/r\ " S S5      5       rg)é    )Ú	dataclass)ÚListÚAny)Úvalidate_block_shapeÚcanonicalize_dtypeÚget_primitive_bitwidth)ÚNVMMASharedLayoutÚTensorDescriptorc                   ó†   • \ rS rSr% \\S'   \\   \S'   \\   \S'   \\   \S'   \\S'   S r	\
S\S\\   S\4S	 j5       rS
rg)r
   é	   ÚbaseÚshapeÚstridesÚblock_shapeÚlayoutc                 ó’  • [        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                  R                  5       S-  S:X  d   S5       e[        U R                  5        [        U R                  R                  5      n[        U5      S-  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                  [        5      (       d   S5       eg )Nzrank mismatch: r   zrank must not be zeroé   zrank cannot be more than 5é   zbase must be 16-byte alignedé   éÿÿÿÿzstrides must be 16-byte alignedé   z!Last dimension must be contiguousz Layout must be NVMMASharedLayout)Úlenr   r   r   r   Údata_ptrr   r   Údtyper   Ú
isinstancer   r	   )ÚselfÚrankÚ	dtype_strÚ
elem_bytesÚstrides        Úa/var/www/fran/franai/venv/lib/python3.13/site-packages/triton/experimental/gluon/nvidia/hopper.pyÚ__post_init__ÚTensorDescriptor.__post_init__   s<  € Ü4—:‘:‹ˆÜ4—<‘<Ó  DÓ(ÐB¨O¸D¸6Ð*BÓBÐ(Ü4×#Ñ#Ó$¨Ó,ÐF°À¸vÐ.FÓFÐ,Øa‹xÐ0Ð0Ó0ˆxØq‹yÐ6Ð6Ó6ˆyØy‰y×!Ñ!Ó# bÑ(¨AÓ-ÐMÐ/MÓMÐ-Ü˜T×-Ñ-Ô.Ü& t§y¡y§¡Ó7ˆ	Ü+¨IÓ6¸!Ñ;ˆ
Ø—l‘l 3 BÓ'ˆFØÑ'¨2Ñ-°Õ2ÐUÐ4UÓUÐ2ñ (à|‰|˜BÑ 1Ó$ÐIÐ&IÓIÐ$Ü˜$Ÿ+™+Ô'8×9Ñ9Ð]Ð;]Ó]Ñ9ó    Útensorc                 óP   • [        U U R                  U R                  5       UU5      $ )N)r
   r   r    )r%   r   r   s      r!   Úfrom_tensorÚTensorDescriptor.from_tensor    s(   € äØØL‰LØM‰M‹OØØó
ð 	
r$   © N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   Ú__annotations__r   Úintr	   r"   Ústaticmethodr'   Ú__static_attributes__r)   r$   r!   r
   r
   	   s_   ‡ à
ƒIØ‰9ÓØ#‰YÓØc‘ÓØÓò^ð ð
˜Cð 
¨d°3©ið 
ÐARó 
ó ó
r$   N)Údataclassesr   Útypingr   r   Útriton._utilsr   r   r   Ú+triton.experimental.gluon.language._layoutsr	   Ú__all__r
   r)   r$   r!   Ú<module>r7      s5   ðÝ !ß ß ZÑ ZÝ IàÐ
€ð ÷
ð 
ó ñ
r$   