o
    ॵi                     @   sf   d dl Z d dlmZ d dlmZ ddlmZ ddlmZ ddl	m
Z
 ejejdG d	d
 d
eZdS )    N)Hooks)LogKeys   )HOOKS)Hook)Priority)module_namec                   @   s*   e Zd ZejZdd Zdd Zdd ZdS )IterTimerHookc                 C   s   t   | _d S N)time
start_timeselftrainer r   ]/home/ubuntu/.local/lib/python3.10/site-packages/modelscope/trainers/hooks/iter_timer_hook.pybefore_epoch   s   zIterTimerHook.before_epochc                 C   s    |j tjt | j i d S r
   )
log_bufferupdater   DATA_LOAD_TIMEr   r   r   r   r   r   before_iter   s   zIterTimerHook.before_iterc                 C   s*   |j tjt | j i t | _d S r
   )r   r   r   	ITER_TIMEr   r   r   r   r   r   
after_iter   s   zIterTimerHook.after_iterN)	__name__
__module____qualname__r   LOWPRIORITYr   r   r   r   r   r   r   r	      s
    r	   )r   modelscope.metainfor   modelscope.utils.constantr   builderr   hookr   priorityr   register_moduler	   r   r   r   r   <module>   s   