mindspore.ops.communication.get_global_rank
- mindspore.ops.communication.get_global_rank(group, group_rank)[源代码]
返回与用户组中id为 group_rank 的rank对应的world组中的rank id。
说明
此方法应在
mindspore.ops.communication.init_process_group()之后使用。- 参数:
group (str) - 要工作的通信组。通常,组应由
mindspore.ops.communication.new_group()创建。如果为None,在Ascend中表示"hccl_world_group"。group_rank (int) - 要查询的组rank。
- 返回:
一个整数标量,表示world组中的rank id。
- 异常:
TypeError - 如果 group 不是str。
TypeError - 如果 group_rank 不是整数。
RuntimeError - 如果设备目标无效,或后端无效,或分布式初始化失败。
- 支持平台:
Ascend
样例:
>>> import mindspore as ms >>> from mindspore.ops.communication import init_process_group, get_global_rank, new_group, get_rank >>> ms.set_device(device_target="Ascend") >>> # Launch 8 processes. >>> init_process_group() >>> rank_ids = [0,4] >>> if get_rank() in rank_ids: ... group = new_group(rank_ids) ... world_rank_id = get_global_rank(group, 1) ... print("world_rank_id is: ", world_rank_id) #rank 0 and 4: world_rank_id is: 4