§
    `ƒi{  ã                   ó@   — d dl Z d dlmZ  G d„ de j        ¦  «        ZdS )é    N)Ú_storec                   óÌ  — e Zd Zej        ej        fd„Zej        dd„¦   «         Z	ej        dd„¦   «         Z
ej        dd„¦   «         Zej        	 dd„¦   «         Zej        dd	„¦   «         Zej        dd
„¦   «         Zej        dd„¦   «         Zej        dd„¦   «         Zej        dd„¦   «         Zej        dd„¦   «         Zej        dd„¦   «         Zej        d„ ¦   «         Zd„ ZdS )Ú_Backendc                 ó˜   — || _         || _        t          j        ||¦  «        | _        |dk    rt          j        |¦  «        | _        d S d S ©Nr   )Ú
_n_devicesÚrankr   ÚTCPStoreProxyÚ_store_proxyÚTCPStore)ÚselfÚ	n_devicesr	   ÚhostÚports        úk/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/cupyx/distributed/_comm.pyÚ__init__z_Backend.__init__   sJ   € à#ˆŒØˆŒ	Ý"Ô0°°tÑ<Ô<ˆÔØ1Š9ˆ9Ý œ/¨)Ñ4Ô4ˆDŒKˆKˆKð ˆ9ó    ÚsumNc                 ó   — d S ©N© )r   Úin_arrayÚ	out_arrayÚopÚstreams        r   Ú
all_reducez_Backend.all_reduce   ó   € àˆr   r   c                 ó   — d S r   r   )r   r   r   Úrootr   r   s         r   Úreducez_Backend.reduce   r   r   c                 ó   — d S r   r   )r   Úin_out_arrayr   r   s       r   Ú	broadcastz_Backend.broadcast   r   r   c                 ó   — d S r   r   )r   r   r   Úcountr   r   s         r   Úreduce_scatterz_Backend.reduce_scatter   s	   € ð 	ˆr   c                 ó   — d S r   r   )r   r   r   r%   r   s        r   Ú
all_gatherz_Backend.all_gather!   r   r   c                 ó   — d S r   r   )r   ÚarrayÚpeerr   s       r   Úsendz_Backend.send%   r   r   c                 ó   — d S r   r   )r   r   r+   r   s       r   Úrecvz_Backend.recv)   r   r   c                 ó   — d S r   r   )r   r   r   r+   r   s        r   Ú	send_recvz_Backend.send_recv-   r   r   c                 ó   — d S r   r   ©r   r   r   r   r   s        r   Úscatterz_Backend.scatter1   r   r   c                 ó   — d S r   r   r2   s        r   Úgatherz_Backend.gather5   r   r   c                 ó   — d S r   r   )r   r   r   r   s       r   Ú
all_to_allz_Backend.all_to_all9   r   r   c                 ó   — d S r   r   ©r   s    r   Úbarrierz_Backend.barrier=   r   r   c                 óR   — | j         dk    r| j                             ¦   «          d S d S r   )r	   r   Ústopr9   s    r   r<   z_Backend.stopA   s.   € ØŒ9˜Š>ˆ>ØŒK×ÒÑÔÐÐÐð ˆ>r   )r   N)r   r   N)r   Nr   )Ú__name__Ú
__module__Ú__qualname__r   Ú_DEFAULT_HOSTÚ_DEFAULT_PORTr   ÚabcÚabstractmethodr   r    r#   r&   r(   r,   r.   r0   r3   r5   r7   r:   r<   r   r   r   r   r      sò  € € € € € ð Ô*°Ô1Eð5ð 5ð 5ð 5ð 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð 	Ôà?Cðð ð ñ Ôðð 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð 	Ôðð ñ Ôððð ð ð ð r   r   )rB   Úcupyx.distributedr   ÚABCr   r   r   r   ú<module>rF      sV   ðØ 
€
€
€
à $Ð $Ð $Ð $Ð $Ð $ð=ð =ð =ð =ð =ˆsŒwñ =ô =ð =ð =ð =r   