
    sgm                     n    d dl Z d dlmZ d dlmZ ddlmZmZ  e j                  e	      Z
ed        Zd Zy)    N)contextmanager)cast   )apiTensorPipeAgentc              #   <  K   d}|rdnd}d| d| }	 | j                  |d|      j                         }||k(  r)d  | j                  |d       | j                  |d       y 	 | j                  |g       c# t        $ r t
        j                  d||        w xY ww)	NRpcGroupManagementTokenjoinleave
Token_for__ 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returneds          O/var/www/html/venv/lib/python3.12/site-packages/torch/distributed/rpc/_utils.py_group_membership_managementr      s     )I%F7MD6=/2H
$$YH=DDFx IIi$IIh'

H:&     X
 s   A!B$A7 6B7"BBc                 r    t        t        t        j                               }|j	                  | |||      }|S )N)r   r   r   _get_current_rpc_agent_update_group_membership)worker_info
my_devicesreverse_device_mapr   agentrets         r   r"   r"   *   s8    #"<"<">?E

(
(Z!3WC J    )logging
contextlibr   typingr   r   r   r   	getLogger__name__r   r   r"    r(   r   <module>r/      s>     %  " 
		8	$  :r(   