+
    ˜°³jk  ã                   ó®  € ^ RI t ^ RIt^ RIt^ RIHt RtR R ltR R lt] P                  R R	 l4       t	] P                  R&R
 R ll4       t
] P                  R R l4       t] P                  R R l4       t] P                  R R l4       t] P                  R R l4       t] P                  R R l4       t] P                  R R l4       t] P                  R R l4       t] P$                  ! R4      R R l4       t] P                  R R l4       t] P                  R R l4       t] P                  R  R! l4       tR" R# lt] P                  R$ R% l4       tR# )'é    N©ÚAnyz(failed to map segment from shared objectc                ó2   € V ^8„  d   QhR\         R,          /# )é   ÚreturnN©Ústr)Úformats   "ÚT/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/utils/_triton.pyÚ__annotate__r   
   s   € ÷ 	ñ 	¬S°4­Zñ 	ó    c                  ó¾   € \         P                  P                  R 4      ;p '       d   V #  ^ RIHp VP
                  P                  #   \        \        3 d     R# i ; i)ÚTRITON_CACHE_DIR)ÚknobsN)	ÚosÚenvironÚgetÚtriton.runtime.cacher   ÚcacheÚdirÚAttributeErrorÚImportError)Útriton_cache_dirr   s     r   Ú#_triton_cache_dir_for_error_messager   
   sO   € ÜŸ:™:Ÿ>™>Ð*<Ó=Ð=ÐÖ=ØÐðÝ.à�{‰{�‰ÐøÜœKÐ(ô Úðús   «A ÁAÁAc                ó(   € V ^8„  d   QhR\         RR/# )r   Úexcr   N)ÚBaseException)r
   s   "r   r   r      s   € ÷ ñ ¬ð ¸$ñ r   c                 ó’   € \        4       pR \        P                  9   d   RV R2pMV'       d   RV R2MRp\        V  RV R24      V h)r   z (TRITON_CACHE_DIR=Ú)z (Ú z-. This usually means Triton's cache directoryz¤ is on a filesystem mounted with noexec, so the dynamic loader cannot map generated shared objects. Set TRITON_CACHE_DIR to a directory on an executable filesystem.)r   r   r   r   )r   Ú	cache_dirÚcache_dir_msgs   &  r   Ú_raise_triton_cache_load_errorr#      s_   € Ü3Ó5€IØœRŸZ™ZÔ'Ø-¨i¨[¸Ð:‰ç-6˜"˜Y˜K qÑ)¸BˆÜ
Øˆ%Ð<¸]¸Oð L!ð 	!óð
 ðr   c                ó$   € V ^8„  d   QhR\         /# ©r   r   ©Úbool)r
   s   "r   r   r   %   s   € ÷ ñ œDñ r   c                  ó4   €  ^ RI p R#   \         d     R# i ; i)r   NTF)Útritonr   ©r)   s    r   Úhas_triton_packager+   $   s   € ðÛáøÜô Úðús   ‚ ˆ–c                ót   € V ^8„  d   QhR\         \        \        3,          R\         \        \        3,          /# )r   Úfallbackr   )ÚtupleÚint)r
   s   "r   r   r   /   s*   € ÷ ñ ¤¤s¬C x¥ð ¼eÄCÌÀH½oñ r   c                 ó  €  ^ RI p\        ;QJ d4    . R VP                  P                  R4      R,           4       F  NK  	  5M-! R VP                  P                  R4      R,           4       4      w  r#W#3#   \         d    T u # i ; i)r   Nc              3   ó8   "  € T F  p\        V4      x € K  	  R # 5i©N)r/   )Ú.0Úvs   & r   Ú	<genexpr>Ú%get_triton_version.<locals>.<genexpr>3   s   é € ÐOÑ-N¨œS ŸV˜VÓ-Nùs   ‚Ú.:Nr   N)r)   r.   Ú__version__Úsplitr   )r-   r)   ÚmajorÚminors   &   r   Úget_triton_versionr<   .   sr   € ðÛç”uÑO¨V×-?Ñ-?×-EÑ-EÀcÓ-JÈ2Ö-NÓO—u‘uÑO¨V×-?Ñ-?×-EÑ-EÀcÓ-JÈ2Ö-NÓOÓO‰ˆØˆ~ÐøÜô ØŠðús   ‚A7 ‘A%A7 Á7BÂBc                ó$   € V ^8„  d   QhR\         /# r%   r&   )r
   s   "r   r   r   :   s   € ÷ "ñ "¬Dñ "r   c                  óò   € ^ RI p V P                  P                  4       ;'       dI    V P                  P                  4       R8¬  ;'       d$    V P                  P
                  '       * ;'       g    \        4       # )r   N©é	   r   )ÚtorchÚcudaÚis_availableÚget_device_capabilityÚversionÚhipÚhas_triton_cpu_backend©rA   s    r   Ú"_device_supports_tensor_descriptorrI   9   sg   € ãð 	�
‰
×ÑÓ!÷ 	"ð 	"Ø�J‰J×,Ñ,Ó.°&Ñ8÷	"ð 	"à—‘×!Ñ!Ô!÷"ð "ô 
 Ó	!ð	"r   c                ó$   € V ^8„  d   QhR\         /# r%   r&   )r
   s   "r   r   r   E   s   € ÷ ñ ¤ñ r   c                  ó`   € \        4       '       d   ^ RIp RV P                  P                  9   # R# )r   NÚcpuF)r+   r)   Úbackendsr*   s    r   rG   rG   D   s&   € ä×ÒÛà˜Ÿ™×0Ñ0Ñ0Ð0ár   c                ó$   € V ^8„  d   QhR\         /# r%   r&   )r
   s   "r   r   r   O   s   € ÷ ñ ¬$ñ r   c                  ó¼   € \        4       '       d(   \        4       '       d    ^ RIHp Hp  ^ RIHp V! 4       # R#   \         d     R# i ; i  \         d     R# i ; i)r   )Úcreate_1d_tma_descriptorÚcreate_2d_tma_descriptor)Úenable_in_pytorchTF)r+   rI   Ú$triton.tools.experimental_descriptorrP   rQ   rR   r   )rP   rQ   rR   s      r   Ú has_triton_experimental_host_tmarT   N   s\   € ä×ÒÜ-×/Ò/ð÷ð
 ÝVá,Ó.Ð.ñ øô #ô  Úð ûäô Øáðús,   ¢A «: ºA	ÁA ÁA	Á	A ÁAÁAc                ó$   € V ^8„  d   QhR\         /# r%   r&   )r
   s   "r   r   r   e   s   € ÷ ñ ¬tñ r   c                  ó|   € \        4       '       d   \        4       '       d
    ^ RIHp  R# R#   \         d     R# i ; i)r   ©ÚTensorDescriptorTF)r+   rI   Útriton.tools.tensor_descriptorrX   r   rW   s    r   Ú%has_triton_tensor_descriptor_host_tmarZ   d   s?   € ä×ÒÜ-×/Ò/ðõñ ñ øô ô Øáðús   ¢, ¬;º;c                ó$   € V ^8„  d   QhR\         /# r%   r&   )r
   s   "r   r   r   u   s   € ÷ Yñ Yœñ Yr   c                  ó:   € \        4       ;'       g    \        4       # r2   )rZ   rT   © r   r   Úhas_triton_tmar^   t   s   € ä0Ó2×XÐXÔ6VÓ6XÐXr   c                ó$   € V ^8„  d   QhR\         /# r%   r&   )r
   s   "r   r   r   z   s   € ÷  ñ  œtñ  r   c                  ó²  € \        4       '       d›   ^ RIp V P                  P                  4       '       d<   V P                  P	                  4       R8¼  d   V P
                  P                  '       d1   V P                  P                  4       '       g   \        4       '       d    ^ RI	H
pHp R# R#   \         d     Mi ; i ^ RIHp R#   \         d     R# i ; i)r   N)Ú&experimental_device_tensormap_create1dÚ&experimental_device_tensormap_create2dT©Úmake_tensor_descriptorFr?   )r+   rA   rB   rC   rD   rE   rF   ÚxpurG   Útriton.language.extra.cudara   rb   r   Útriton.languagerd   )rA   ra   rb   rd   s       r   Úhas_triton_tma_devicerh   y   s¬   € ä×ÒÛð —
‘
×'Ñ'×)Ò)Ø—J‘J×4Ñ4Ó6¸&Ô@ØŸ™×)×)Ð)à�y‰y×%Ñ%×'Ò'Ü%×'Ò'ð÷ñ
 ñ øô ô ÙðúðÝBáøÜô Øáðús$   Â!B- Â-B;Â:B;Â?C ÃCÃCc                ó$   € V ^8„  d   QhR\         /# r%   r&   )r
   s   "r   r   r   ž   s   € ÷ ñ ¬Tñ r   c                  ó:  € ^ RI p V P                  P                  4       '       dw   V P                  P                  4       R8¼  dX   V P                  P                  4       R8  d9   V P                  P
                  '       g   \        4       ;'       d    \        4       # R# )r   NF)é
   r   )é   r   )rA   rB   rC   rD   rE   rF   rh   rZ   rH   s    r   Ú#has_datacenter_blackwell_tma_devicerm   �   sl   € ãð 	�
‰
×Ñ×!Ò!Ø�J‰J×,Ñ,Ó.°'Ô9Ø�J‰J×,Ñ,Ó.°Ô8Ø—‘×!×!Ð!ä$Ó&×RÐRÔ+PÓ+RÐRár   c                ó$   € V ^8„  d   QhR\         /# r%   r&   )r
   s   "r   r   r   ­   s   € ÷ ñ ¤4ñ r   c                  óz  € \        4       '       d™   ^ RIp V P                  P                  4       '       d<   V P                  P	                  4       R8¼  d   V P
                  P                  '       d1   V P                  P                  4       '       g   \        4       '       d
    ^ RI	H
p R# R#   \         d     R# i ; i)r   Nrc   TFr?   )r+   rA   rB   rC   rD   rE   rF   re   rG   rg   rd   r   )rA   rd   s     r   Úhas_triton_stable_tma_apirp   ¬   s‹   € ä×ÒÛð —
‘
×'Ñ'×)Ò)Ø—J‘J×4Ñ4Ó6¸&Ô@ØŸ™×)×)Ð)à�y‰y×%Ñ%×'Ò'Ü%×'Ò'ðÝBáñ øô ô ØÙðús   Â!B+ Â+B:Â9B:c                ó$   € V ^8„  d   QhR\         /# r%   r&   )r
   s   "r   r   r   Ä   s   € ÷ 	ñ 	¤tñ 	r   c                 óp   € \        4       '       d    ^ RIHp  \        V R4      # R#   \         d     R# i ; i)zCWhether the available Triton exposes inner-tree reduction ordering.©ÚReductionOrderingÚ
INNER_TREEF)r+   rg   rt   Úhasattrr   rs   s    r   Úhas_triton_reduction_orderingrw   Ã   s?   € ô ×Òð	Ý9äÐ,¨lÓ;Ð;ñ øô ô 	ØÙð	ús   ’& ¦5´5c                ó$   € V ^8„  d   QhR\         /# r%   r&   )r
   s   "r   r   r   Ñ   s   € ÷ ñ ”Dñ r   c                  ó0  € \        4       '       g   R # ^ RIHp  V '       d   R # ^ RIHp ^ RIHp V! 4        FN  w  r4RV9   d   K  VP                  4       '       d   VP                  4       '       g   K<   VP                  4         R# 	  R #   T d     K^  i ; i)F)Útriton_disable_device_detection)Ú get_registered_device_interfaces)ÚTritonUnavailableErrorÚ:T)
r+   Útorch._inductor.configrz   Útorch._dynamo.device_interfacer{   Útorch._dynamo.excr|   rC   Úis_triton_capableÚraise_if_triton_unavailable)rz   r{   r|   ÚnameÚdevice_interfaces        r   Ú
has_tritonr…   Ð   s‹   € ä×ÒÙåFç&ÙåOÝ8ñ #CÖ"DÑˆØ�$Œ;Ùà×)Ñ)×+Ò+Ð0@×0RÑ0R×0TÒ0Táð	Ø×8Ñ8Ô:ò ñ #Eñ øð &ô 	Úð	ús   Á3B
Â
BÂBc                ó$   € V ^8„  d   QhR\         /# r%   r   )r
   s   "r   r   r   ó   s   € ÷ 
ñ 
œñ 
r   c                  óÒ   € ^ RI Hp  ^ RIHp  VP                  P                  4       pV ! V4      #   \        \        3 d&   p\        \        T4      9   d   \        T4       h Rp?ii ; i)r   )Úmake_backend)ÚdriverN)Útriton.compiler.compilerrˆ   Útriton.runtime.driverr‰   ÚactiveÚget_current_targetr   ÚOSErrorÚ)_FAILED_TO_MAP_SEGMENT_FROM_SHARED_OBJECTr	   r#   )rˆ   r‰   ÚtargetÚes       r   Útriton_backendr’   ò   sV   € å5Ý,ðØ—‘×1Ñ1Ó3ˆÙ˜FÓ#Ð#øÜœÐ!ô Ü4¼¸A»Ô>Ü*¨1Ô-Øûðús   Ž!0 °A&Á A!Á!A&c                ó0   € V ^8„  d   QhR\         R\        /# )r   Úbackendr   )r   r	   )r
   s   "r   r   r      s   € ÷ ñ œcð ¤cñ r   c                óÜ  € V P                  / 4      p\        VRR4      pV'       g   R# . p\        V4       F�  w  rE\        P                  P                  V4      '       g   K,  \        VR4      ;_uu_ 4       pVP                  V R\        P                  ! VP                  4       4      P                  4        24       RRR4       K‘  	  RP                  V4      #   + '       g   i     Kµ  ; i)zËReturn a cache key fragment for extern libs (e.g. libdevice.10.bc).

These files affect codegen but are not covered by triton_key() (Python
sources only) or backend.hash() (ptxas version and arch only).
Úextern_libsNr    ÚrbÚ-)Úparse_optionsÚgetattrÚsortedr   ÚpathÚisfileÚopenÚappendÚhashlibÚsha256ÚreadÚ	hexdigestÚjoin)r”   Úoptsr–   Úpartsrƒ   rœ   Úfs   &      r   Ú_extern_libs_keyr¨      s´   € ð × Ñ  Ó$€DÜ˜$ ¨tÓ4€KßÙØ€EÜ˜[Ö)‰
ˆÜ�7‰7�>‰>˜$×ÔÜ�d˜D×!Ô! QØ—‘ ˜v Q¤w§~¢~°a·f±f³hÓ'?×'IÑ'IÓ'KÐ&LÐMÔN÷ "Ñ!ñ *ð �8‰8�E‹?Ð÷ "×!Ð!ús   Á6ACÃC+c                ó$   € V ^8„  d   QhR\         /# r%   r   )r
   s   "r   r   r     s   € ÷ Cñ C¤#ñ Cr   c                  óØ   € ^ RI Hp  \        4       pV ! 4        RVP                  4        2p\        P
                  ! VP                  R4      4      P                  4       P                  4       # )r   )Ú
triton_keyr˜   zutf-8)	Ú%torch._inductor.runtime.triton_compatr«   r’   Úhashr    r¡   Úencoder£   Úupper)r«   r”   Úkeys      r   Útriton_hash_with_backendr±     sR   € å@äÓ€GÙ‹\ˆN˜!˜GŸL™L›NÐ+Ð
,€Cô �>Š>˜#Ÿ*™* WÓ-Ó.×8Ñ8Ó:×@Ñ@ÓBÐBr   ))r   r   )Ú	functoolsr    r   Útypingr   r�   r   r#   r   r+   r<   rI   rG   rT   rZ   r^   rh   rm   Ú	lru_cacherp   rw   r…   r’   r¨   r±   r]   r   r   Ú<module>rµ      s†  ðÛ Û Û 	Ý ð -WÐ )õ	õð ‡�ôó ðð ‡�öó ðð ‡�ô"ó ð"ð ‡�ôó ðð ‡�ôó ðð* ‡�ôó ðð ‡�ôYó ðYð ‡�ô ó ð ðF ‡�ôó ðð ×Ò�TÓôó ðð, ‡�ô	ó ð	ð ‡�ôó ððB ‡�ô
ó ð
õð$ ‡�ôCó òCr   