Ë
    ùÿæiù  ã                   ó>  — d dl Z d dlZd dlmZ e j                  defd„«       Ze j                  ddeeef   deeef   fd„«       Z	e j                  defd„«       Z
e j                  defd„«       Ze j                  defd	„«       Ze j                  defd
„«       Ze j                  defd„«       Ze j                  defd„«       Z e j                   d«      defd„«       Ze j                  defd„«       Ze j                  defd„«       Ze j                  defd„«       Zy)é    N)ÚAnyÚreturnc                  ó,   — 	 dd l } y# t        $ r Y yw xY w)Nr   TF)ÚtritonÚImportError)r   s    úh/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/torch/utils/_triton.pyÚhas_triton_packager	      s   € ðÛàøÜò Ùðús   ‚ ‡	’Úfallbackc                 ó˜   — 	 dd l }t        d„ |j                  j                  d«      d d D «       «      \  }}||fS # t        $ r | cY S w xY w)Nr   c              3   ó2   K  — | ]  }t        |«      –— Œ y ­w©N)Úint)Ú.0Úvs     r   Ú	<genexpr>z%get_triton_version.<locals>.<genexpr>   s   è ø€ ÐOÑ-N¨œS ŸVÑ-Nùs   ‚Ú.é   )r   ÚtupleÚ__version__Úsplitr   )r
   r   ÚmajorÚminors       r   Úget_triton_versionr      sT   € ðÛäÑO¨V×-?Ñ-?×-EÑ-EÀcÓ-JÈ2ÈAÑ-NÓOÓO‰ˆˆuØ�uˆ~ÐøÜò ØŠðús   ‚8; »A	ÁA	c                  ó®   — dd l } | j                  j                  «       xr6 | j                  j                  «       dk\  xr | j                  j
                   S )Nr   ©é	   r   )ÚtorchÚcudaÚis_availableÚget_device_capabilityÚversionÚhip©r   s    r   Ú_device_supports_tmar$      sK   € ãð 	�
‰
×ÑÓ!ò 	"Ø�J‰J×,Ñ,Ó.°&Ñ8ò	"à—‘×!Ñ!Ð!ðó    c                  ó–   — t        «       r!t        «       r	 ddlm} m} 	 ddlm}  |«       S y# t        $ r Y yw xY w# t        $ r Y yw xY w)Nr   )Úcreate_1d_tma_descriptorÚcreate_2d_tma_descriptor)Úenable_in_pytorchTF)r	   r$   Ú$triton.tools.experimental_descriptorr'   r(   r)   r   )r'   r(   r)   s      r   Ú has_triton_experimental_host_tmar+   &   sV   € äÔÜÔ!ð÷ð
 ÝVá,Ó.Ð.ð øô #ò  Ùð ûäò Øàðús#   –< Ÿ- ­	9¶< ¸9¹< ¼	AÁAc                  óZ   — t        «       rt        «       r	 ddlm}  yy# t        $ r Y yw xY w)Nr   ©ÚTensorDescriptorTF)r	   r$   Útriton.tools.tensor_descriptorr.   r   r-   s    r   Ú%has_triton_tensor_descriptor_host_tmar0   <   s9   € äÔÜÔ!ðõð ð øô ò Øàðús   – ž	*©*c                  ó.   — t        «       xs
 t        «       S r   )r0   r+   © r%   r   Úhas_triton_tmar3   L   s   € ä0Ó2ÒXÔ6VÓ6XÐXr%   c                  óN  — t        «       rudd l} | j                  j                  «       r3| j                  j	                  «       dk\  r| j
                  j                  r| j                  j                  «       r
	 ddlm	}m
} yy# t        $ r Y nw xY w	 ddlm} y# t        $ r Y yw xY w)Nr   r   )Ú&experimental_device_tensormap_create1dÚ&experimental_device_tensormap_create2dT©Úmake_tensor_descriptorF)r	   r   r   r   r    r!   r"   ÚxpuÚtriton.language.extra.cudar5   r6   r   Útriton.languager8   )r   r5   r6   r8   s       r   Úhas_triton_tma_devicer<   Q   s—   € äÔÛð �J‰J×#Ñ#Ô%Ø—
‘
×0Ñ0Ó2°fÒ<Ø—M‘M×%Ò%Ø�Y‰Y×#Ñ#Ô%ð÷ð
 ð øô ò ÙðúðÝBàøÜò Øàðús$   Á7B Â	BÂBÂB Â	B$Â#B$c                  ó  — dd l } | j                  j                  «       rf| j                  j                  «       dk\  rI| j                  j                  «       dk  r,| j                  j
                  st        «       xr
 t        «       S y)Nr   )é
   r   )é   r   F)r   r   r   r    r!   r"   r<   r0   r#   s    r   Ú#has_datacenter_blackwell_tma_devicer@   q   sc   € ãð 	�
‰
×ÑÔ!Ø�J‰J×,Ñ,Ó.°'Ò9Ø�J‰J×,Ñ,Ó.°Ò8Ø—‘×!Ò!ä$Ó&ÒRÔ+PÓ+RÐRàr%   c                  ó  — t        «       rsdd l} | j                  j                  «       r3| j                  j	                  «       dk\  r| j
                  j                  r| j                  j                  «       r	 ddlm	} yy# t        $ r Y yw xY w)Nr   r   r7   TF)r	   r   r   r   r    r!   r"   r9   r;   r8   r   )r   r8   s     r   Úhas_triton_stable_tma_apirB   €   sv   € äÔÛð �J‰J×#Ñ#Ô%Ø—
‘
×0Ñ0Ó2°fÒ<Ø—M‘M×%Ò%Ø�Y‰Y×#Ñ#Ô%ðÝBàð øô ò ØØðús   Á7A? Á?	BÂ
Bc                  óÐ   ‡‡— t        «       syddlm}  | ryddlmŠ dt
        dt        fd„}dt
        dt        fd„}dt
        dt        fd	„}||||d
œŠdt        fˆˆfd„} |«       S )NFr   )Útriton_disable_device_detection)Úget_interface_for_deviceÚdevice_interfacer   c                 óP   — | j                   j                  «       j                  dk\  S )Né   )ÚWorkerÚget_device_propertiesr   ©rF   s    r   Úcuda_extra_checkz$has_triton.<locals>.cuda_extra_checkŸ   s"   € Ø×&Ñ&×<Ñ<Ó>×DÑDÈÑIÐIr%   c                 ó:   — dd l }d|j                  j                  v S )Nr   Úcpu)Útriton.backendsÚbackends)rF   r   s     r   Úcpu_extra_checkz#has_triton.<locals>.cpu_extra_check¢   s   € Ûà˜Ÿ™×0Ñ0Ð0Ð0r%   c                  ó   — y)NTr2   rK   s    r   Ú_return_truez has_triton.<locals>._return_true§   s   € Ør%   )r   r9   rN   Úmtiac                  ó|   •— ‰j                  «       D ](  \  } } ‰| «      }|j                  «       sŒ ||«      sŒ( y y)NTF)Úitemsr   )ÚdeviceÚextra_checkrF   rE   Útriton_supported_devicess      €€r   Ú is_device_compatible_with_tritonz4has_triton.<locals>.is_device_compatible_with_triton±   sC   ø€ Ø#;×#AÑ#AÖ#CÑˆF�KÙ7¸Ó?ÐØ×,Ñ,Õ.±;Ð?OÕ3PÙð $Dð r%   )r	   Útorch._inductor.configrD   Útorch._dynamo.device_interfacerE   r   Úbool)rD   rL   rQ   rS   rZ   rE   rY   s        @@r   Ú
has_tritonr^   “   s�   ù€ äÔØåFá&ØåGðJ¬3ð J´4ó Jð1¬#ð 1´$ó 1ð
¤sð ¬tó ð !ØØØñ	 Ðð¬dö ñ ,Ó-Ð-r%   c                  ó^   — ddl m}  ddlm} |j                  j                  «       } | |«      S )Nr   )Úmake_backend)Údriver)Útriton.compiler.compilerr`   Útriton.runtime.driverra   ÚactiveÚget_current_target)r`   ra   Útargets      r   Útriton_backendrg   »   s%   € å5Ý,à�]‰]×-Ñ-Ó/€FÙ˜ÓÐr%   c                  óÖ   — ddl m}  t        «       } | «       › d|j                  «       › �}t	        j
                  |j                  d«      «      j                  «       j                  «       S )Nr   )Ú
triton_keyÚ-zutf-8)	Ú%torch._inductor.runtime.triton_compatri   rg   ÚhashÚhashlibÚsha256ÚencodeÚ	hexdigestÚupper)ri   ÚbackendÚkeys      r   Útriton_hash_with_backendrt   Ä   sR   € å@äÓ€GÙ‹\ˆN˜!˜GŸL™L›NÐ+Ð
,€Cô �>‰>˜#Ÿ*™* WÓ-Ó.×8Ñ8Ó:×@Ñ@ÓBÐBr%   ))r   r   )Ú	functoolsrm   Útypingr   Úcacher]   r	   r   r   r   r$   r+   r0   r3   r<   r@   Ú	lru_cacherB   r^   rg   Ústrrt   r2   r%   r   Ú<module>rz      s©  ðÛ Û Ý ð ‡�ð˜Dò ó ðð ‡�ñ  s¨C x¡ð ¸eÀCÈÀH¹oò ó ðð ‡�ð˜dò ó ðð ‡�ð¨$ò ó ðð* ‡�ð¨tò ó ðð ‡�ðY˜ò Yó ðYð ‡�ð˜tò ó ðð> ‡�ð¨Tò ó ðð €×Ñ�TÓð 4ò ó ðð$ ‡�ð$.�Dò $.ó ð$.ðN ‡�ð ˜ò  ó ð ð ‡�ðC #ò Có ñCr%   