當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python PyTorch RRef.remote用法及代碼示例


本文簡要介紹python語言中 torch.distributed.rpc.RRef.remote 的用法。

用法:

remote(self: torch._C._distributed_rpc.PyRRef, timeout: float = - 1.0) → object

參數

timeout(float,可選的) -rref.remote() 超時。如果在超時內未成功完成此 RRef 的創建,則下次嘗試使用 RRef (例如 to_here )時,將引發超時。如果未提供,將使用默認的 RPC 超時。請參閱 rpc.remote() 了解 RRef 的特定超時語義。

創建一個輔助代理以使用 RRef 的所有者作為目標輕鬆啟動 remote,以便在此 RRef 引用的對象上運行函數。更具體地說,rref.remote().func_name(*args, **kwargs) 與以下內容相同:

>>> def run(rref, func_name, args, kwargs):
>>>   return getattr(rref.local_value(), func_name)(*args, **kwargs)
>>>
>>> rpc.remote(rref.owner(), run, args=(rref, func_name, args, kwargs))

例子:

>>> from torch.distributed import rpc
>>> rref = rpc.remote("worker1", torch.add, args=(torch.zeros(2, 2), 1))
>>> rref.remote().size().to_here()  # returns torch.Size([2, 2])
>>> rref.remote().view(1, 4).to_here()  # returns tensor([[1., 1., 1., 1.]])

相關用法


注:本文由純淨天空篩選整理自pytorch.org大神的英文原創作品 torch.distributed.rpc.RRef.remote。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。