Ë
    3êñi`
  ã                  ó”   — d dl mZ d dlmZ d dlZeeef   Zd
d„Z G d„ dej                  j                  «      Z G d„ d«      Zg d	¢Zy)é    )Úannotations)ÚSelfNc                 ó>   — t         j                  j                  «       S )zL
    Return an opaque token representing the id of a graph memory pool.
    )ÚtorchÚ_CÚ_mtia_graphPoolHandle© ó    úW/var/www/pod-logistic/pod-ai/venv/lib/python3.12/site-packages/torch/mtia/mtia_graph.pyÚgraph_pool_handler      s   € ô
 �8‰8×)Ñ)Ó+Ð+r
   c                  ón   ‡ — e Zd ZdZd	d
ˆ fd„Zdˆ fd„Zdˆ fd„Zdˆ fd„Zdˆ fd„Zdˆ fd„Z	dˆ fd„Z
ˆ xZS )Ú	MTIAGraphz&
    Wrapper around a MTIA graph.
    c                ó$   •— t         ‰| �  | |«      S ©N)ÚsuperÚ__new__)ÚclsÚ
keep_graphÚ	__class__s     €r   r   zMTIAGraph.__new__   s   ø€ Ü‰w‰˜s JÓ/Ð/r
   c                ó$   •— t         ‰| �  |«       y)z/
        Begin capturing a MTIA graph.
        N)r   Úcapture_begin)ÚselfÚpoolr   s     €r   r   zMTIAGraph.capture_begin   s   ø€ ô 	‰Ñ˜dÕ#r
   c                ó"   •— t         ‰| �  «        y)z2
        End the capture of a MTIA graph.
        N)r   Úcapture_end©r   r   s    €r   r   zMTIAGraph.capture_end"   ó   ø€ ô 	‰ÑÕr
   c                ó"   •— t         ‰| �  «        y)z6
        Instantiate the captured MTIA graph.
        N)r   Úinstantiater   s    €r   r   zMTIAGraph.instantiate(   r   r
   c                ó"   •— t         ‰| �  «        y)z1
        Replay the captured MTIA graph.
        N)r   Úreplayr   s    €r   r!   zMTIAGraph.replay.   s   ø€ ô 	‰‰Õr
   c                ó"   •— t         ‰| �  «        y)zB
        Destroy the captured graph and reset the states.
        N)r   Úresetr   s    €r   r#   zMTIAGraph.reset4   s   ø€ ô 	‰‰�r
   c                ó    •— t         ‰| �  «       S )zX
        Return an opaque token representing the id of this graph's memory pool
        )r   r   r   s    €r   r   zMTIAGraph.pool:   s   ø€ ô ‰w‰|‹~Ðr
   )F)r   ÚboolÚreturnr   )r   Ú_POOL_HANDLEr&   ÚNone©r&   r(   ©r&   r'   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r!   r#   r   Ú__classcell__)r   s   @r   r   r      s0   ø„ ñö0õ$õõõõ÷ñ r
   r   c                  óD   — e Zd ZU dZded<   	 	 d	 	 	 	 	 dd„Zd	d„Zd
d„Zy)ÚgraphNútorch.mtia.Stream | NoneÚdefault_capture_streamc                óx  — | j                   j                  €-t        j                  j	                  «       | j                   _        |€dn|f| _        |�|n| j                   j                  | _        | j                  €t        d«      ‚t        j                  j                  | j                  «      | _	        || _
        y )Nr	   zcapture_stream must not be None)r   r3   r   ÚmtiaÚcurrent_streamr   Úcapture_streamÚAssertionErrorÚstreamÚ
stream_ctxÚ
mtia_graph)r   r;   r   r9   s       r   Ú__init__zgraph.__init__D   s•   € ð �>‰>×0Ñ0Ð8Ü49·J±J×4MÑ4MÓ4OˆD�N‰NÔ1à;?¸<±RÈdÈWˆŒ	àÐ(‰F¨d¯n©n×.SÑ.Sð 	Ôð ×ÑÐ&Ü Ð!BÓCÐCÜŸ*™*×+Ñ+¨D×,?Ñ,?Ó@ˆŒØ$ˆ�r
   c                ó   — t         j                  j                  «        t         j                  j                  «        | j                  j                  «        | j                  r| j                  d   nd}| j                  j                  |«       y )Nr   )r   r   )	r   r5   ÚsynchronizeÚempty_cacher:   Ú	__enter__r   r;   r   )r   Úpool_args     r   r@   zgraph.__enter__V   sY   € Ü�
‰
×ÑÔ Ü�
‰
×ÑÔ à�‰×!Ñ!Ô#à#'§9¢9�4—9‘9˜Q’<°&ˆØ�‰×%Ñ% hÕ/r
   c                ój   — | j                   j                  «         | j                  j                  |Ž  y r   )r;   r   r:   Ú__exit__)r   Úargss     r   rC   zgraph.__exit___   s&   € Ø�‰×#Ñ#Ô%Ø ˆ�‰× Ñ  $Ò'r
   )NN)r;   r   r   z_POOL_HANDLE | Noner9   r2   r)   )rD   Úobjectr&   r(   )r+   r,   r-   r3   Ú__annotations__r<   r@   rC   r	   r
   r   r1   r1   A   sA   … Ø7;ÐÐ4Ó;ð
 %)Ø+/ð	%àð%ð "ð%ð )ó	%ó$0ô(r
   r1   )r   r1   r   r*   )Ú
__future__r   Útyping_extensionsr   r   ÚtupleÚintr'   r   r   Ú
_MTIAGraphr   r1   Ú__all__r	   r
   r   ú<module>rM      sK   ðå "å "ã ð �S˜#�X‰€ó,ô*�—‘×#Ñ#ô *÷Z (ñ  (òF�r
   