a
    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r\d V  | |d | |d qq z| |g W q  ty   td||  Y q 0 q d S )	NZRpcGroupManagementTokenjoinZleaveZ
Token_for__ DonezBGroup membership token %s timed out waiting for %s to be released.)Zcompare_setdecodesetwaitRuntimeErrorloggererror)storenameis_joinZ	token_keyZjoin_or_leaveZmy_tokenZreturned r   J/var/www/auris/lib/python3.9/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   Z_get_current_rpc_agent_update_group_membership)Zworker_infoZ
my_devicesZreverse_device_mapr   r   r   Zagentretr   r   r   r   (   s    r   )
logging
contextlibr   typingr   	getLogger__name__r   r   r   r   r   r   r   <module>   s   

