本文簡要介紹python語言中 torch.distributed.monitored_barrier
的用法。
用法:
torch.distributed.monitored_barrier(group=None, timeout=None, wait_all_ranks=False)
group(ProcessGroup,可選的) -要處理的流程組。如果
None
,將使用默認進程組。timeout(datetime.timedelta,可選的) -monitored_barrier 超時。如果
None
,將使用默認進程組超時。wait_all_ranks(bool,可選的) -是否收集所有失敗的等級。默認情況下,這是
False
,rank 0 上的monitored_barrier
將拋出它遇到的第一個失敗的 rank,以便快速失敗。通過設置wait_all_ranks=True
monitored_barrier
將收集所有失敗的排名並拋出包含所有失敗排名信息的錯誤。
None
。同步所有類似於
torch.distributed.barrier
的進程,但需要一個可配置的超時,並且能夠報告在該超時內未通過此屏障的排名。具體來說,對於非零等級,將阻塞,直到從等級 0 處理發送/接收。等級 0 將阻塞,直到處理來自其他等級的所有發送/接收,並且將報告未能及時響應的等級失敗。請注意,如果一個等級未達到monitored_barrier(例如由於掛起),則所有其他等級都將在monitored_barrier 中失敗。該集體將阻塞組中的所有進程/等級,直到整個組成功退出該函數,使其對調試和同步有用。但是,它可能會對性能產生影響,並且隻能用於調試或需要在host-side 上完全同步點的場景。出於調試目的,可以在應用程序的集體調用之前插入此屏障,以檢查是否有任何等級不同步。
注意
請注意,此集合僅受 GLOO 後端支持。
>>> # Note: Process group initialization omitted on each rank. >>> import torch.distributed as dist >>> if dist.get_rank() != 1: >>> dist.monitored_barrier() # Raises exception indicating that >>> # rank 1 did not call into monitored_barrier. >>> # Example with wait_all_ranks=True >>> if dist.get_rank() == 0: >>> dist.monitored_barrier(wait_all_ranks=True) # Raises exception >>> # indicating that ranks 1, 2, ... world_size - 1 did not call into >>> # monitored_barrier.
例子:
參數:
返回:
相關用法
- Python PyTorch mode用法及代碼示例
- Python PyTorch movedim用法及代碼示例
- Python PyTorch movielens_25m用法及代碼示例
- Python PyTorch movielens_20m用法及代碼示例
- Python PyTorch moveaxis用法及代碼示例
- Python PyTorch mean用法及代碼示例
- Python PyTorch multinomial用法及代碼示例
- Python PyTorch meshgrid用法及代碼示例
- Python PyTorch matrix_rank用法及代碼示例
- Python PyTorch mm用法及代碼示例
- Python PyTorch mv用法及代碼示例
- Python PyTorch min用法及代碼示例
- Python PyTorch max用法及代碼示例
- Python PyTorch msort用法及代碼示例
- Python PyTorch matrix_exp用法及代碼示例
- Python PyTorch matmul用法及代碼示例
- Python PyTorch matrix_power用法及代碼示例
- Python PyTorch maximum用法及代碼示例
- Python PyTorch masked_select用法及代碼示例
- Python PyTorch maskrcnn_resnet50_fpn用法及代碼示例
- Python PyTorch minimum用法及代碼示例
- Python PyTorch multi_dot用法及代碼示例
- Python PyTorch mul用法及代碼示例
- Python PyTorch matrix_norm用法及代碼示例
- Python PyTorch multigammaln用法及代碼示例
注:本文由純淨天空篩選整理自pytorch.org大神的英文原創作品 torch.distributed.monitored_barrier。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。