o
    ,hq                     @   sB   d dl Z d dlmZ d dlmZ e eZedd Zdd Z	dS )    N)contextmanager)castc                 c   s    d}|rdnd}d| d| }	 |  |d| }||kr0d V  | |d | |d d S z| |g W n tyG   td	||  w q)
NRpcGroupManagementTokenjoinleave
Token_for__T DonezBGroup membership token %s timed out waiting for %s to be released.)compare_setdecodesetwaitRuntimeErrorloggererror)storenameis_join	token_keyjoin_or_leavemy_tokenreturned r   W/var/www/html/scripts/venv/lib/python3.10/site-packages/torch/distributed/rpc/_utils.py_group_membership_management
   s,   r   c                 C   s2   ddl m}m} t|| }|| |||}|S )N   )apiTensorPipeAgent)r	   r   r   r   _get_current_rpc_agent_update_group_membership)worker_info
my_devicesreverse_device_mapr   r   r   agentretr   r   r   r    (   s   r    )
logging
contextlibr   typingr   	getLogger__name__r   r   r    r   r   r   r   <module>   s   

