a
    d                     @   sZ   d dl mZ d dlmZ 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 )    )contextmanager)castN   )api)TensorPipeAgentc              
   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| d	| d
  Y q 0 q d S )NZRpcGroupManagementTokenjoinZleaveZ
Token_for__ DonezGroup membership token z timed out waiting for z 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   e/var/www/html/stable-diffusion-webui/venv/lib/python3.9/site-packages/torch/distributed/rpc/_utils.py_group_membership_management	   s    r   c                 C   s"   t tt }|| |||}|S )N)r   r   r   Z_get_current_rpc_agent_update_group_membership)Zworker_infoZ
my_devicesZreverse_device_mapr   Zagentretr   r   r   r   "   s    r   )
contextlibr   typingr   loggingr	   r   r   	getLogger__name__r   r   r   r   r   r   r   <module>   s   

