+
    &j                     "    ^ RI t  ! R R4      tR# )    Nc                      a  ] tR t^t o RtRV 3R lR lltV 3R lR ltV 3R lR ltV 3R lR	 ltV 3R
 lR lt	V 3R lR lt
V 3R lR ltRtV tR# )Eventa)  Wrapper around an MPS event.

MPS events are synchronization markers that can be used to monitor the
device's progress, to accurately measure timing, and to synchronize MPS streams.

Args:
    enable_timing (bool, optional): indicates if the event should measure time
        (default: ``False``)
c                $   < V ^8  d   QhRS[ RR/# )   enable_timingreturnNbool)format__classdict__s   "g/Users/jameslopez/projects/CWCArchive/cwc-podcast/.venv/lib/python3.14/site-packages/torch/mps/event.py__annotate__Event.__annotate__   s     C Cd Ct C    c                N    \         P                  P                  V4      V n        R # )N)torch_C_mps_acquireEvent_Event__eventId)selfr   s   &&r   __init__Event.__init__   s    33MBr   c                   < V ^8  d   QhRR/# r   r   N )r   r   s   "r   r   r      s     7 7 7r   c                    \        \        P                  R 4      '       d?   V P                  ^ 8  d,   \        P                  P	                  V P                  4       R# R# R# )_mps_releaseEventN)hasattrr   r   r   r   r   s   &r   __del__Event.__del__   s>    588011dnnq6HHH&&t~~6 7I1r   c                   < V ^8  d   QhRR/# r   r   )r   r   s   "r   r   r      s     2 2 2r   c                X    \         P                  P                  V P                  4       R# )z(Records the event in the default stream.N)r   r   _mps_recordEventr   r   s   &r   recordEvent.record   s    !!$..1r   c                   < V ^8  d   QhRR/# r   r   )r   r   s   "r   r   r      s     3 3d 3r   c                X    \         P                  P                  V P                  4       R# )zJMakes all future work submitted to the default stream wait for this event.N)r   r   _mps_waitForEventr   r   s   &r   wait
Event.wait   s    ""4>>2r   c                    < V ^8  d   QhRS[ /# )r   r   r	   )r   r   s   "r   r   r      s     8 8t 8r   c                T    \         P                  P                  V P                  4      # )zCReturns True if all work currently captured by event has completed.)r   r   _mps_queryEventr   r   s   &r   queryEvent.query   s    xx''77r   c                   < V ^8  d   QhRR/# r   r   )r   r   s   "r   r   r   #   s     7 7T 7r   c                X    \         P                  P                  V P                  4       R# )zWaits until the completion of all work currently captured in this event.
This prevents the CPU thread from proceeding until the event completes.
N)r   r   _mps_synchronizeEventr   r   s   &r   synchronizeEvent.synchronize#   s     	&&t~~6r   c                $   < V ^8  d   QhRRRS[ /# )r   	end_eventr   r   )float)r   r   s   "r   r   r   )   s     V Vg V% Vr   c                j    \         P                  P                  V P                  VP                  4      # )zmReturns the time elapsed in milliseconds after the event was
recorded and before the end_event was recorded.
)r   r   _mps_elapsedTimeOfEventsr   )r   r7   s   &&r   elapsed_timeEvent.elapsed_time)   s%     xx00ATATUUr   )	__eventIdN)F)__name__
__module____qualname____firstlineno____doc__r   r    r%   r*   r/   r4   r;   __static_attributes____classdictcell__)r   s   @r   r   r      sT     C C7 7
2 23 38 87 7V Vr   r   )r   r   r   r   r   <module>rE      s    )V )Vr   