+
    "Ý³jË'  ã                  ó¢  a € 0 t $ ^ RIHt ^ RIt^ RIHt ^ RIHt ^ RIH	t	H
t
HtHtHtHtHt ^ RIt^RIHt ^RIHt ^RIHt ]! 4       t] ! R	 R
4      4       tR R ltR R lt]! 4       w  tt]P8                  ! 4       t/ tR]R&   R R lt R R lt!R R lt"R R lt#R R lt$R R lt%R R lt&R R  lt'R! R" lt(R# R$ lt)R% R& lt*R' R( lt+R# ))é    )ÚannotationsN)ÚFuture)Ú	dataclass)ÚAnyÚCallableÚDictÚIterableÚListÚOptionalÚTuple)Úsetup_logger)ÚDeviceThreadPool)ÚHAS_NPUc                  ót   € ] tR t^t$ R]R&   R]R&   R]R&   R]R&   R]R	&   R
tR]R&   RtR]R&   RtR]R&   RtR
# )ÚStreamCopyTicketzOptional[Any]ÚeventúOptional[torch.device]ÚdevicezTuple[str, ...]ÚkeyszOptional[List[torch.Tensor]]ÚsourcesÚstreamNzOptional[Future]ÚfutureFÚboolÚ	finalizedÚbackground_done© )	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotations__r   r   r   Ú__static_attributes__r   ó    ÚW/home/luca/screen-checking/.venv/lib/python3.14/site-packages/gptqmodel/utils/stream.pyr   r      s?   ‡ àÓØ"Ó"Ø
ÓØ)Ó)ØÓØ#€FÐÓ#Ø€IˆtÓØ!€O�T×!r#   r   c               ó   € V ^8„  d   QhRR/# )é   ÚreturnzDict[str, str]r   )Úformats   "r$   Ú__annotate__r)   #   s   € ÷ ñ  ~ñ r#   c                 ó4  € / p \         P                  P                  4       '       d:   \        \         P                  P	                  4       4       F  pR V 2V RV 2&   K  	  \        \         R4      '       d^   \         P                  P                  4       '       d:   \        \         P                  P	                  4       4       F  pRV 2V RV 2&   K  	  \        '       d:   \        \         P                  P	                  4       4       F  pRV 2V RV 2&   K  	  V # )zstream-sync-cudaúcuda:Úxpuzstream-sync-xpuúxpu:zstream-sync-npuúnpu:)	ÚtorchÚcudaÚis_availableÚrangeÚdevice_countÚhasattrr,   r   Únpu)ÚaliasesÚidxs     r$   Ú_discover_accelerator_aliasesr8   #   sÜ   € Ø €GÜ‡z�z×Ñ× Ò ÜœŸ™×0Ñ0Ó2Ö3ˆCØ'7¸°uÐ%=ˆG�e˜C˜5�MÓ"ñ 4äŒu�e×Ò¤§¡×!7Ñ!7×!9Ò!9ÜœŸ™×/Ñ/Ó1Ö2ˆCØ&5°c°UÐ$;ˆG�d˜3˜%�LÓ!ñ 3çƒwÜœŸ™×/Ñ/Ó1Ö2ˆCØ&5°c°UÐ$;ˆG�d˜3˜%�LÓ!ñ 3à€Nr#   c               ó   € V ^8„  d   QhRR/# )r&   r'   z'Tuple[DeviceThreadPool, Dict[str, str]]r   )r(   s   "r$   r)   r)   1   s   € ÷ ñ ÐCñ r#   c                 óô   € \        4       p \        V 4      p/ pV P                  4        F
  p^W# R2&   K  	  \        ^T;'       g    ^4      VR&   \	        \
        P                  ! R4      .RRRRRRVR7      pW@3# )é   z:cpuÚcpuFT)ÚdevicesÚinclude_cudaÚinclude_xpuÚinclude_npuÚinclude_mpsÚinclude_cpuÚinference_modeÚworkers)r8   ÚlenÚvaluesÚmaxr   r/   r   )r6   Útotal_acceleratorsrD   ÚaliasÚpools        r$   Ú_build_stream_poolrK   1   s‹   € Ü+Ó-€GÜ˜W›ÐØ €GØ—‘Ö!ˆØ"#ˆ�'˜�Óñ "ô ˜Ð.×3Ð3°!Ó4€GˆE�NäÜ—’˜eÓ$Ð%ØØØØØØØô	€Dð ˆ=Ðr#   zDict[Tuple[str, int], Any]Ú_COPY_STREAMSc               ó   € V ^8„  d   QhRR/# )r&   Údevice_typeÚstrr   )r(   s   "r$   r)   r)   N   s   € ÷ ñ  ñ r#   c                ób   € V R 8X  d   \         P                  # V R8X  d   \         P                  # R# )r0   r5   N)r/   r0   r5   )rN   s   &r$   Ú_stream_backendrQ   N   s)   € Ø�fÔÜ�z‰zÐØ�eÔÜ�y‰yÐÙr#   c               ó    € V ^8„  d   QhRRRR/# )r&   rN   rO   r'   r   r   )r(   s   "r$   r)   r)   V   s   € ÷ (ñ (¨3ð (°4ñ (r#   c                óV   € \        V 4      pVf   R# \        VP                  4       4      # )NF)rQ   r   r1   ©rN   Úbackends   & r$   Ú_stream_backend_availablerV   V   s(   € Ü˜kÓ*€GØ‚ÙÜ�×$Ñ$Ó&Ó'Ð'r#   c               ó    € V ^8„  d   QhRRRR/# )r&   r   útorch.devicer'   Úintr   )r(   s   "r$   r)   r)   ]   s   € ÷ ñ  ,ð °3ñ r#   c                ó|   € V P                   pVe   V# \        V P                  4      pVe   VP                  4       # ^ # ©N)ÚindexrQ   ÚtypeÚcurrent_device)r   r\   rU   s   &  r$   Ú_resolve_device_indexr_   ]   s<   € Ø�L‰L€EØÒØˆÜ˜fŸk™kÓ*€GØÒØ×%Ñ%Ó'Ð'Ùr#   c               ó    € V ^8„  d   QhRRRR/# )r&   r   rX   r'   r   r   )r(   s   "r$   r)   r)   g   s   € ÷ ñ  Lð °Sñ r#   c                ó†  € \        V 4      p\        ;_uu_ 4        V P                  V3p\        P	                  V4      pVfb   \        V P                  4      pVf   \        RV  24      hVP                  \        P                  ! V P                  V4      R7      pV\        V&   VuuR R R 4       #   + '       g   i     R # ; i)Nz Unsupported stream copy device: ©r   )
r_   Ú_STREAM_CACHE_LOCKr]   rL   ÚgetrQ   ÚRuntimeErrorÚStreamr/   r   )r   r7   Úkeyr   rU   s   &    r$   Ú_get_cached_copy_streamrh   g   s–   € Ü
 Ó
'€Cß	Ö	Ø�{‰{˜CÐ ˆÜ×"Ñ" 3Ó'ˆØŠ>Ü% f§k¡kÓ2ˆGØŠÜ"Ð%EÀfÀXÐ#NÓOÐOØ—^‘^¬5¯<ª<¸¿¹ÀSÓ+I�^ÓJˆFØ!'ŒM˜#ÑØ÷ 
×	×	Ó	ús   šB
B/Â/C 	c               ó    € V ^8„  d   QhRRRR/# )r&   rN   rO   r'   r   r   )r(   s   "r$   r)   r)   u   s   € ÷ 2ñ 2˜Cð 2 Cñ 2r#   c                ó’   € \        V 4      pVf   R #  VP                  RRR7      #   \         d    TP                  RR7      u # i ; i)NF)Úenable_timingÚblocking)rk   )rQ   ÚEventÚ	TypeErrorrT   s   & r$   Ú
_new_eventro   u   sL   € Ü˜kÓ*€GØ‚Ùð2Ø�}‰}¨5¸5ˆ}ÓAÐAøÜô 2Ø�}‰}¨5ˆ}Ó1Ò1ð2ús   “& ¦AÁAc               ó    € V ^8„  d   QhRRRR/# )r&   r   r   r'   rO   r   )r(   s   "r$   r)   r)      s   € ÷ ñ Ð"8ð ¸Sñ r#   c                óL  € V f   R# V P                   pVR8X  dm   V P                  pVfD   \        P                  P	                  4       '       d     \        P                  P                  4       p\        P                  RV 2R4      # VR8X  dƒ   \        \        R4      '       dm   V P                  pVfD   \        P                  P	                  4       '       d     \        P                  P                  4       p\        P                  RV 2R4      # VR8X  dU   \        '       dI   V P                  pVf     \        P                  P                  4       p\        P                  RV 2R4      # R#   \         d    ^ p ELi ; i  \         d    ^ p L™i ; i  \         d    ^ p LQi ; i)Nr<   r0   r+   r,   r-   r5   r.   )r]   r\   r/   r0   r1   r^   Ú	ExceptionÚ_ACCELERATOR_ALIAS_MAPrd   r4   r,   r   r5   )r   Údev_typer\   s   &  r$   Ú_queue_key_for_deviceru      sb  € Ø‚~ÙØ�{‰{€HØ�6ÔØ—‘ˆØŠ=œUŸZ™Z×4Ñ4×6Ò6ðÜŸ
™
×1Ñ1Ó3�ô &×)Ñ)¨E°%°¨/¸5ÓAÐAØ�5ÔœW¤U¨E×2Ò2Ø—‘ˆØŠ=œUŸY™Y×3Ñ3×5Ò5ðÜŸ	™	×0Ñ0Ó2�ô &×)Ñ)¨D°°¨.¸%Ó@Ð@Ø�5ÔŸW›WØ—‘ˆØŠ=ðÜŸ	™	×0Ñ0Ó2�ô &×)Ñ)¨D°°¨.¸%Ó@Ð@Ùøô' ô Ø“ðûô ô Ø’ðûô ô Ø’ðús6   ÁE, ÃF  Ä3F Å,E=Å<E=Æ FÆFÆF#Æ"F#c               ó    € V ^8„  d   QhRRRR/# )r&   Úticketr   r'   ÚNoner   )r(   s   "r$   r)   r)   ž   s   € ÷ ñ Ð*ð ¨tñ r#   c                óh   € V P                   e$   V P                   P                  4        R V n         R # R # r[   )r   Úclear)rw   s   &r$   Ú_drop_sourcesr{   ž   s(   € Ø‡~�~Ò!Ø�‰×ÑÔØˆŽñ "r#   c               ó$   € V ^8„  d   QhRRRRRR/# )r&   rw   r   ÚstateúDict[str, Any]r'   rx   r   )r(   s   "r$   r)   r)   ¤   s&   € ÷ ñ Øðàðð 
ñr#   c                óv  € V P                   '       d   R # RV n         \        V 4       VP                  R4      pVe&   V P                   F  pVP	                  VR 4       K  	  VP                  R4      p\        V\        4      '       d    VP                  V 4       R V n	        R V n
        R #   \         d     Li ; i)NTÚstreaming_event_mapÚstreaming_events)r   r{   rd   r   ÚpopÚ
isinstanceÚlistÚremoveÚ
ValueErrorr   r   )rw   r}   Ú	event_maprg   Úeventss   &&   r$   Ú_finalize_ticket_lockedr‰   ¤   s¥   € ð ××ÐÙØ€FÔÜ�&ÔØ—	‘	Ð/Ó0€IØÒØ—;”;ˆCØ�M‰M˜#˜tÖ$ñ à�Y‰YÐ)Ó*€FÜ�&œ$×Òð	Ø�M‰M˜&Ô!ð €F„MØ€F†Møô ô 	Ùð	ús   Â	B* Â*B8Â7B8c               ó(   € V ^8„  d   QhRRRRRRRR/# ©	r&   rw   r   r}   r~   Ú
state_lockúthreading.RLockr'   rx   r   )r(   s   "r$   r)   r)   º   s0   € ÷ ñ Øðàðð  ðð 
ñ	r#   c           	     ó  € T;_uu_ 4        V P                   '       d    R R R 4       R #  R R R 4        V P                  pVe'   VP                  4       '       g   VP                  4        V;_uu_ 4        \	        V 4       RV n         R R R 4       R V n        R #   + '       g   i     Lu; i  + '       g   i     L,; i  T;_uu_ 4        \	        T 4       RT n         R R R 4       R T n        i   + '       g   i     R T n        i ; i; i)NT)r   r   ÚqueryÚsynchronizer{   r   )rw   r}   rŒ   r   s   &&& r$   Ú_wait_and_release_ticketr‘   º   s·   € ÷
 
ŠØ×!×!Ð!Ø÷ 
‰Ø!÷ 
ðØ—‘ˆØÒ U§[¡[§]¢]Ø×ÑÔçŠZÜ˜&Ô!Ø%)ˆFÔ"÷ ð ˆŽ÷ 
�ú÷ �Zû�ZŠZÜ˜&Ô!Ø%)ˆFÔ"÷ ð ˆ�÷ ŽZð ˆ�ýs@   ‹B³%B= ÁB= Á3B*ÂB'	Â*B:	Â=DÃC+	ÃDÃ+DÃ6Dc               ó(   € V ^8„  d   QhRRRRRRRR/# r‹   r   )r(   s   "r$   r)   r)   Í   s0   € ÷ <ñ <Øð<àð<ð  ð<ð 
ñ	<r#   c                óî   € \        V P                  4      p \        P                  V\        V VV4      pW@n        R#   \         d.    \        P                  R T4       RT n        \	        YT4        R# i ; i)zNFailed to schedule stream sync ticket on queue %s; falling back to inline syncN)	ru   r   ÚSTREAM_DEVICE_POOLÚsubmitr‘   r   rr   ÚlogÚ	exception)rw   r}   rŒ   Ú	queue_keyr   s   &&&  r$   Ú_schedule_ticketr™   Í   sm   € ô
 & f§m¡mÓ4€Ið<Ü#×*Ñ*ØÜ$ØØØó
ˆð ŽøÜô <Ü�‰ÐfÐhqÔrØˆŒÜ  °
×;ð<ús   —#< ¼4A4Á3A4c          
     ó,   € V ^8„  d   QhRRRRRRRRR	R/# )
r&   ÚtensorszDict[str, torch.Tensor]Ústore_callbackz)Callable[[Dict[str, torch.Tensor]], None]r}   r~   rŒ   r�   r'   r   )r(   s   "r$   r)   r)   â   sC   € ÷ Yñ YØ$ðYð >ðYð ð	Yð
  ðYð ñYr#   c               ó  € V P                  4        UUu/ uF)  w  rE\        V\        P                  4      '       g   K'  WEbK+  	  pppV'       g   / # \	        R  VP                  4        4       R4      pVf^   VP                  4        UUu/ uF$  w  rEWEP                  4       P                  R4      bK&  	  pppV;_uu_ 4        V! V4       RRR4       V# / pVP                  p	\        V	P                  4      p
V
P                  V	R7      p\        V	4      p. p. pV
P                  V4      ;_uu_ 4        VP                  V4       VP                  4        Fø  w  rEVP                  4       pVP                  P                  V	P                  8w  d   VP                  R4      W„&   KO  VP                  V	8w  d   VP                  R4      W„&   Ku  VP                  V4       VP!                  V4       VP!                  V4       \        P"                  ! VP$                  VP&                  VP(                  RRR7      pVP+                  VRR7       VW„&   Kú  	  RRR4       V'       g   V;_uu_ 4        V! V4       RRR4       V# \-        V	P                  4      pVP/                  V4       \1        VV	\3        V4      VVR7      pT;_uu_ 4        V! V4       VP5                  R/ 4      pVP6                   F  pVVV&   K
  	  VP5                  R	. 4      pVP!                  V4       RRR4       \9        VW#4       V# u uppi u uppi   + '       g   i     T# ; i  + '       g   i     EL; i  + '       g   i     T# ; i  + '       g   i     Lf; i)
c              3  ó®   "  € T FK  pVP                   P                  R9   g   K   \        VP                   P                  4      '       g   KG  Vx € KM  	  R# 5i)r0   N>   r5   r0   )r   r]   rV   )Ú.0Útensors   & r$   Ú	<genexpr>Ú,stream_tensor_dict_to_cpu.<locals>.<genexpr>ô   sE   é € ð 	
á+�Ø�}‰}×!Ñ! _Ñ4ô ä9RÐSY×S`ÑS`×SeÑSe×9f÷ ŠFÛ+ùs   ‚A¤"AÁ
ANr<   rb   T)ÚdtypeÚlayoutr   Ú
pin_memory)Únon_blocking)r   r   r   r   r   r€   r�   )Úitemsrƒ   r/   ÚTensorÚnextrF   ÚdetachÚtor   rQ   r]   Úcurrent_streamrh   r   Úwait_streamÚrecord_streamÚappendÚemptyÚshaper£   r¤   Úcopy_ro   Úrecordr   ÚtupleÚ
setdefaultr   r™   )r›   rœ   r}   rŒ   Únamer    ÚfilteredÚfirst_acceleratorÚhost_mapÚcopy_devicerU   Úcompute_streamÚcopy_streamÚpending_sourcesÚpending_keysÚsrcÚhostÚ
done_eventrw   r‡   rg   rˆ   s   &$$$                  r$   Ústream_tensor_dict_to_cpurÂ   â   sì  € ð 29·±´Ôe±¡ ÄJÈvÔW\×WcÑWc×Dd”�’±€HÑeßØˆ	ô ñ	
à"Ÿ/™/Ô+ó	
ð
 	óÐð Ò ØHPÏÉÔHXÔYÑHX¹¸�DŸ-™-›/×,Ñ,¨UÓ3Ò3ÑHXˆÑYßŠZÙ˜8Ô$÷ àˆà(*€Hà#×*Ñ*€KÜ˜k×.Ñ.Ó/€GØ×+Ñ+°;Ð+Ó?€NÜ)¨+Ó6€Kà*,€OØ €LØ	�‰˜×	$Õ	$Ø×Ñ Ô/Ø$ŸN™NÖ,‰LˆDØ—-‘-“/ˆCØ�z‰z�‰ +×"2Ñ"2Ô2Ø!$§¡¨£�‘ÙØ�z‰z˜[Ô(Ø!$§¡¨£�‘ÙØ×Ñ˜kÔ*Ø×"Ñ" 3Ô'Ø×Ñ Ô%Ü—;’;Ø—	‘	Ø—i‘iØ—z‘zØØôˆDð �J‰J�s¨ˆJÔ.Ø!ˆH‹Nñ' -÷ 
%÷. ßŠZÙ˜8Ô$÷ àˆä˜K×,Ñ,Ó-€JØ×Ñ�kÔ"äØØÜ�<Ó ØØô€F÷ 
ŠÙ�xÔ Ø×$Ñ$Ð%:¸BÓ?ˆ	Ø—;”;ˆCØ'ˆI�c‹Nñ à×!Ñ!Ð"4°bÓ9ˆØ�‰�fÔ÷ 
ô �V˜UÔ/Ø€Oùóe fùó( ZßŽZàˆú÷ 
%×	$Ð	$ú÷0 ŽZàˆú÷ 
�úsB   ”$L/½L/Â*L5Â?	L;Ä/DMÉ'	M#ËAM7Ì;M	ÍM 	Í#M4	Í7N	c               ó$   € V ^8„  d   QhRRRRRR/# )r&   r}   r~   rŒ   r�   r'   rx   r   )r(   s   "r$   r)   r)   >  s!   € ÷ 7ñ 7�~ð 7°?ð 7Àtñ 7r#   c                ó
  €  V;_uu_ 4        \        V P                  RR4      4      pRRR4       X'       g   R# V Fœ  pVP                  pVe   VP                  4        M6VP                  pVe'   VP                  4       '       g   VP                  4        T;_uu_ 4        VP                  '       g   \        V4       R Vn        \        W04       RRR4       Kž  	  KÝ    + '       g   i     L¾; i  + '       g   i     KÆ  ; i)Tr�   Nr   )
r´   rd   r   Úresultr   r�   r�   r   r{   r‰   )r}   rŒ   Úpendingrw   r   r   s   &&    r$   Ústream_syncrÇ   >  sµ   € Ø
ßŠZÜ27¸¿	¹	ÐBTÐVXÓ8YÓ2ZˆG÷ çÙÛˆFØ—]‘]ˆFØÒ!Ø—‘•àŸ™�ØÒ$¨U¯[©[¯]ª]Ø×%Ñ%Ô'ß’Ø×-×-Ð-Ü! &Ô)Ø-1�FÔ*Ü'¨Ô6÷	 ‘ó ÷	 �Zú÷ —�ús   ŒCÂ 0C1ÃC.	Ã1D),Ú__conditional_annotations__Ú
__future__r   Ú	threadingÚconcurrent.futuresr   Údataclassesr   Útypingr   r   r   r	   r
   r   r   r/   Úloggerr   Úthreadxr   r   r–   r   r8   rK   r”   rs   ÚRLockrc   rL   r!   rQ   rV   r_   rh   ro   ru   r{   r‰   r‘   r™   rÂ   rÇ   )rÈ   s   @r$   Ú<module>rÑ      sÀ   øð÷ #Ð "ã Ý %Ý !ß G× GÑ Gã å  Ý %Ý ñ ƒn€ð ÷"ð "ó ð"õõñ. .@Ó-AÑ *Ð Ð*à—_’_Ó&Ð Ø,.€Ð)Ó .õõ(õõõ2õõ>õõ,õ&<õ*Y÷x7r#   