§
    9˜ºhÈ  ã                  ó¾   — d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZd dl	Z	d dl
Z
d dlZd dlmZ ddlmZ ddlmZ dd„Zej        dd„¦   «         Zdd„Z	 	 ddd„ZdS )é    )ÚannotationsN)Ú
ModuleTypeé   )Úget_cache_manageré   )ÚknobsÚnameÚstrÚsrcÚsrcdirÚlibrary_dirsú	list[str]Úinclude_dirsÚ	librariesÚreturnc                ó>  — t           j        j        x}r || |||||¦  «        S t          j        d¦  «        }t
          j                             |d                     | |¬¦  «        ¦  «        }t
          j	         
                    d¦  «        }	|	€?t          j        d¦  «        }
t          j        d¦  «        }|�|n|
}	|	€t          d¦  «        ‚t          t          d¦  «        rt          j        ¦   «         }nt          j        ¦   «         }|d	k    rd
}t          j        |¬¦  «        d         }t           j        j        }|||g|¢z   }|	|ddddd|g}|d„ |D ¦   «         z  }|d„ |D ¦   «         z  }|d„ |D ¦   «         z  }t'          j        |t&          j        ¬¦  «         |S )NÚ
EXT_SUFFIXz{name}{suffix})r	   ÚsuffixÚCCÚclangÚgcczeFailed to find C compiler. Please specify via CC environment variable or set triton.knobs.build.impl.Úget_default_schemeÚposix_localÚposix_prefix)ÚschemeÚincludez-O3z-sharedz-fPICz
-Wno-psabiz-oc                ó   — g | ]}d |› �‘ŒS )z-l© )Ú.0Úlibs     ú\/var/www/html/services/rag-service/venv/lib/python3.11/site-packages/triton/runtime/build.pyú
<listcomp>z_build.<locals>.<listcomp>0   s   € Ð/Ð/Ð/˜cˆz�CˆzˆzÐ/Ð/Ð/ó    c                ó   — g | ]}d |› �‘ŒS )z-Lr   ©r   Údirs     r!   r"   z_build.<locals>.<listcomp>1   s   € Ð2Ð2Ð2˜cˆz�CˆzˆzÐ2Ð2Ð2r#   c                ó   — g | ]	}|®d|› �‘Œ
S )Nz-Ir   r%   s     r!   r"   z_build.<locals>.<listcomp>2   s   € ÐEÐEÐE˜c°S°_ˆz�Cˆzˆz°_°_°_r#   )Ústdout)r   ÚbuildÚimplÚ	sysconfigÚget_config_varÚosÚpathÚjoinÚformatÚenvironÚgetÚshutilÚwhichÚRuntimeErrorÚhasattrr   Ú_get_default_schemeÚ	get_pathsÚbackend_dirsÚ
subprocessÚ
check_callÚDEVNULL)r	   r   r   r   r   r   r*   r   ÚsoÚccr   r   r   Úpy_include_dirÚcustom_backend_dirsÚcc_cmds                   r!   Ú_buildrB      sÄ  € åŒ{ÔÐ€tð NØˆt�D˜#˜v |°\À9ÑMÔMÐMÝÔ% lÑ3Ô3€FÝ	Œ�Š�fÐ.×5Ò5¸4ÈÐ5ÑOÔOÑ	PÔ	P€Bå	Œ�Š˜Ñ	Ô	€BØ	€zÝ”˜WÑ%Ô%ˆÝŒl˜5Ñ!Ô!ˆØ�OˆSˆS¨ˆØˆ:ÝØwñyô yð yõ �yÐ.Ñ/Ô/ð 1ÝÔ-Ñ/Ô/ˆˆåÔ.Ñ0Ô0ˆð �ÒÐØˆÝÔ(°Ð7Ñ7Ô7¸	ÔB€NÝœ+Ô2ÐØ 6¨>Ð"PÐ<OÐ"PÑP€Là�#�u˜i¨°,ÀÀbÐI€FØ
Ð/Ð/ YÐ/Ñ/Ô/Ñ/€FØ
Ð2Ð2 \Ð2Ñ2Ô2Ñ2€FØ
ÐEÐE \ÐEÑEÔEÑE€FÝÔ˜&­Ô);Ð<Ñ<Ô<Ð<Ø€Ir#   c                 óx   — ddl m} m}m} d                      | ¦   «          |¦   «         g |¦   «         ¢¦  «        S )Nr   ©ÚmachineÚsystemÚarchitectureú,)ÚplatformrE   rF   rG   r/   rD   s      r!   Úplatform_keyrJ   7   sN   € à6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ø�8Š8�W�W‘Y”Y  ¡¤Ð:¨<¨<©>¬>Ð:Ñ;Ô;Ð;r#   r.   r   c                óô   — t           j                             | |¦  «        }|r|j        st	          d| › d|› �¦  «        ‚t           j                             |¦  «        }|j                             |¦  «         |S )NzFailed to load newly compiled z from )Ú	importlibÚutilÚspec_from_file_locationÚloaderr5   Úmodule_from_specÚexec_module)r	   r.   ÚspecÚmods       r!   Ú_load_module_from_pathrT   =   s{   € ÝŒ>×1Ò1°$¸Ñ=Ô=€DØð P�t”{ð PÝÐN¸DÐNÐNÈÐNÐNÑOÔOÐOÝ
Œ.×
)Ò
)¨$Ñ
/Ô
/€CØ„K×Ò˜CÑ Ô Ð Ø€Jr#   úlist[str] | Nonec           	     óØ  — t          j        | t          ¦   «         z                        d¦  «        ¦  «                             ¦   «         }t          |¦  «        }t          j        d¦  «        }|                     |› |› �¦  «        }|�Z	 t          ||¦  «        S # t          t          f$ r5 t          j        t          ¦  «        }	|	                     d|› d�¦  «         Y nw xY wt!          j        ¦   «         5 }
t$          j                             |
|dz   ¦  «        }t+          |d¦  «        5 }|                     | ¦  «         d d d ¦  «         n# 1 swxY w Y   t/          |||
|pg |pg |pg ¦  «        }t+          |d¦  «        5 }|                     |                     ¦   «         |› |› �d¬	¦  «        }d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   t          ||¦  «        S )
Nzutf-8r   z$Triton cache error: compiled module z.so could not be loadedz.cÚwÚrbT)Úbinary)ÚhashlibÚsha256rJ   ÚencodeÚ	hexdigestr   r+   r,   Úget_filerT   r5   ÚImportErrorÚloggingÚ	getLoggerÚ__name__ÚwarningÚtempfileÚTemporaryDirectoryr-   r.   r/   ÚopenÚwriterB   ÚputÚread)r   r	   r   r   r   ÚkeyÚcacher   Ú
cache_pathÚlogÚtmpdirÚsrc_pathÚfr=   s                 r!   Úcompile_module_from_srcrq   F   s³  € å
Œ.˜#¥¡¤Ñ.×6Ò6°wÑ?Ô?Ñ
@Ô
@×
JÒ
JÑ
LÔ
L€CÝ˜cÑ"Ô"€EÝÔ% lÑ3Ô3€FØ—’ 4Ð 1¨Ð 1Ð 1Ñ2Ô2€JàÐð	^Ý)¨$°
Ñ;Ô;Ð;øÝ�kÐ*ð 	^ð 	^ð 	^ÝÔ#¥HÑ-Ô-ˆCØ�KŠKÐ\¸tÐ\Ð\Ð\Ñ]Ô]Ð]Ð]Ð]ð	^øøøõ 
Ô	$Ñ	&Ô	&ð M¨&Ý”7—<’< ¨¨t©Ñ4Ô4ˆÝ�(˜CÑ Ô ð 	 AØ�GŠG�C‰LŒLˆLð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	å�D˜( F¨LÐ,>¸BÀÐ@RÐPRÐT]ÐTcÐacÑdÔdˆÝ�"�d‰^Œ^ð 	M˜qØŸš 1§6¢6¡8¤8°Ð->°fÐ->Ð->Àt˜ÑLÔLˆJð	Mð 	Mð 	Mñ 	Mô 	Mð 	Mð 	Mð 	Mð 	Mð 	Mð 	Møøøð 	Mð 	Mð 	Mð 	MðMð Mð Mñ Mô Mð Mð Mð Mð Mð Mð Møøøð Mð Mð Mð Mõ " $¨
Ñ3Ô3Ð3sm   ÂB ÂACÃCÃ44GÄ(E
Ä>GÅ
E	ÅGÅE	Å-GÅ?/F:Æ.GÆ:F>	Æ>GÇF>	ÇGÇGÇG)r	   r
   r   r
   r   r
   r   r   r   r   r   r   r   r
   )r   r
   )r	   r
   r.   r
   r   r   )NNN)r   r
   r	   r
   r   rU   r   rU   r   rU   r   r   )Ú
__future__r   Ú	functoolsrZ   Úimportlib.utilrL   r`   r-   r3   r:   r+   rd   Útypesr   rk   r   Ú r   rB   Ú	lru_cacherJ   rT   rq   r   r#   r!   ú<module>rx      s$  ðØ "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ø €€€Ø Ð Ð Ð Ø €€€Ø 	€	€	€	Ø €€€Ø Ð Ð Ð Ø Ð Ð Ð Ø €€€à Ð Ð Ð Ð Ð à $Ð $Ð $Ð $Ð $Ð $Ø Ð Ð Ð Ð Ð ð!ð !ð !ð !ðH Ôð<ð <ð <ñ Ôð<ð
ð ð ð ð SWØaeð4ð 4ð 4ð 4ð 4ð 4ð 4r#   