
    Vh5                     `   U d dl Z d dlZd dlmZmZmZ d dlmZ d dlZd dl	m
Z d dlmZ d dlmZ g Zee   ed<   dZefded	ej*                  fd
Zefded	eej0                  ef   fdZ e       ad	eeef   fdZ ed      Z ed      Zdeeef   d	eeef   fdZdeeef   d	eeef   fdZ y)    N)AnyCallableTypeVar)	ParamSpec)_log_handlers)_WaitCounter__all__defaultdestinationreturnc                    t        |       \  }}t        j                  d|       }|j                  t        j                         t        j
                  d      }|j                  |       d|_        |j                  |       |S )Nzc10d-za%(asctime)s %(filename)s:%(lineno)s %(levelname)s p:%(processName)s t:%(threadName)s: %(message)sF)	_get_logging_handlerlogging	getLoggersetLevelDEBUG	FormattersetFormatter	propagate
addHandler)r   logging_handlerlog_handler_namelogger	formatters        M/home/dcms/DCMS/lib/python3.12/site-packages/torch/distributed/c10d_logger.py_get_or_create_loggerr      sy    (<[(I%O%'7&89:F
OOGMM"!!kI   +F
o&M    c                 P    t         |    }t        |      j                   d|  }||fS )N-)r   type__name__)r   log_handlerr   s      r   r   r   '   s7      ,K{+445Q{mD)**r   c           	      <   t        j                         r|j                  d      xs |j                  d      }|  t        j                  |j                  d             t        j                  |       t        j
                          t        j
                  |       t        j                          t        j                  |       d}|d   dk(  rCt        j                  j                  j                         }dj                  d |D              |d	<   |S d
|  i}|S )Ngroupprocess_grouppg)	func_namepg_namebackend
world_size
group_sizeglobal_rank
local_rankr)   nccl.c              3   2   K   | ]  }t        |        y w)N)str).0vs     r   	<genexpr>z _get_msg_dict.<locals>.<genexpr>A   s     /M1A/Ms   nccl_versionr'   )distis_initializedget_get_process_group_nameget_backendget_world_sizeget_ranktorchcudar.   versionjoin)r'   argskwargsr$   msg_dictr5   s         r   _get_msg_dictrD   3   s    

7#Bvzz/'B%;66vzz$7GHI**512!0023!0078"mmo.!]]512
 I&( ::??224L'*xx/M/M'MH^$
 O I;
 Or   _T_Pfuncc                      t        j                         dt        j                  dt        j                  dt
        f fd       }|S )NrA   rB   r   c                      	  | i |S # t         $ r:}t        j                  g| i |}| |d<   t        j	                  |        d }~ww xY w)Nerror)	ExceptionrD   r!   _c10d_loggerdebug)rA   rB   rJ   rC   rG   s       r   wrapperz"_exception_logger.<locals>.wrapperN   s]    	((( 	$T]]DTDVDH#('HWx(		s    	A5A		A	functoolswrapsrF   rA   rB   rE   rG   rN   s   ` r   _exception_loggerrS   M   sB    __Trww "))    Nr   c                      t        j                         dt        j                  dt        j                  dt
        f fd       }|S )NrA   rB   r   c                      t        dj                         j                         5   | i |}d d d        |S # 1 sw Y   S xY w)Nzpytorch.wait_counter.c10d.)r   r!   guard)rA   rB   func_returnrG   s      r   rN   z_time_logger.<locals>.wrapper\   sK    6t}}oFGMMO 	0//K	0	0s	   	;ArO   rR   s   ` r   _time_loggerrX   [   sB    __Trww "))   
 Nr   )!rP   r   typingr   r   r   typing_extensionsr   r=   torch.distributeddistributedr6   "torch.distributed.logging_handlersr   torch.monitorr   r	   listr1   __annotations___DEFAULT_DESTINATIONLoggerr   tupleHandlerr   rL   dictrD   rE   rF   rS   rX    r   r   <module>rg      s      ) ) '    < & c    .B 
s 
gnn 
 ,++
7??C + %&c3h , T]t_HRV, "b&1A xB' HRV,< r   