本文简要介绍python语言中 torch.distributed.scatter_object_list
的用法。
用法:
torch.distributed.scatter_object_list(scatter_object_output_list, scatter_object_input_list, src=0, group=None)
scatter_object_output_list(List[任何]) -非空列表,其第一个元素将存储分散到该等级的对象。
scatter_object_input_list(List[任何]) -要分散的输入对象列表。每个对象都必须是 picklable 的。只有
src
rank 上的对象会被分散,非src rank 的参数可以是None
。src(int) -要从中分散的源排名
scatter_object_input_list
。group-(ProcessGroup,可选):要处理的进程组。如果没有,将使用默认进程组。默认为
None
。
None
。如果等级是组的一部分,scatter_object_output_list
将把它的第一个元素设置为这个等级的分散对象。将
scatter_object_input_list
中的可pickl对象分散到整个组中。与scatter()
类似,但可以传入Python对象。在每个rank上,分散的对象将存储为scatter_object_output_list
的第一个元素。请注意,scatter_object_input_list
中的所有对象都必须是 picklable 的才能分散。注意
请注意,此 API 与分散集合略有不同,因为它不提供
async_op
句柄,因此将是一个阻塞调用。警告
scatter_object_list()
隐式使用pickle
模块,已知这是不安全的。可以构造恶意的 pickle 数据,该数据将在 unpickling 期间执行任意代码。仅使用您信任的数据调用此函数。>>> # Note: Process group initialization omitted on each rank. >>> import torch.distributed as dist >>> if dist.get_rank() == 0: >>> # Assumes world_size of 3. >>> objects = ["foo", 12, {1: 2}] # any picklable object >>> else: >>> # Can be any list on non-src ranks, elements are not used. >>> objects = [None, None, None] >>> output_list = [None] >>> dist.scatter_object_list(output_list, objects, src=0) >>> # Rank i gets objects[i]. For example, on rank 2: >>> output_list [{1: 2}]
例子:
参数:
返回:
相关用法
- Python PyTorch script用法及代码示例
- Python PyTorch saved_tensors_hooks用法及代码示例
- Python PyTorch sqrt用法及代码示例
- Python PyTorch skippable用法及代码示例
- Python PyTorch squeeze用法及代码示例
- Python PyTorch square用法及代码示例
- Python PyTorch save_on_cpu用法及代码示例
- Python PyTorch skip_init用法及代码示例
- Python PyTorch simple_space_split用法及代码示例
- Python PyTorch sum用法及代码示例
- Python PyTorch sub用法及代码示例
- Python PyTorch sparse_csr_tensor用法及代码示例
- Python PyTorch sentencepiece_numericalizer用法及代码示例
- Python PyTorch symeig用法及代码示例
- Python PyTorch sinh用法及代码示例
- Python PyTorch sinc用法及代码示例
- Python PyTorch std_mean用法及代码示例
- Python PyTorch spectral_norm用法及代码示例
- Python PyTorch slogdet用法及代码示例
- Python PyTorch symbolic_trace用法及代码示例
- Python PyTorch shutdown用法及代码示例
- Python PyTorch sgn用法及代码示例
- Python PyTorch set_flush_denormal用法及代码示例
- Python PyTorch set_default_dtype用法及代码示例
- Python PyTorch signbit用法及代码示例
注:本文由纯净天空筛选整理自pytorch.org大神的英文原创作品 torch.distributed.scatter_object_list。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。