ai-infra-interview-305

第 94 题:自定义通信算子的实现?torch.distributedreduce_op

题目

自定义通信算子的实现?torch.distributedreduce_op


完整讲解

一、PyTorch 内置 collective 与 reduce_op

torch.distributed 提供 all_reduceall_gatherreduce_scatterbroadcast 等,并支持 reduce_op 参数:如 dist.ReduceOp.SUMMINMAXPRODUCT 等,指定归约语义。自定义逻辑(如梯度裁剪后再 all-reduce、或自定义聚合)可在调用前后用 Python 处理,再调标准 collective;若只需非 SUM 的归约,直接传对应 reduce_op 即可。

二、自定义通信算子

三、实现注意点


面试要点


记忆要点

  1. reduce_op 指定 SUM/MIN/MAX 等;复杂逻辑 = 组合 collective 或 send/recv。
  2. 完全自定义 = NCCL/C++ 扩展;gloo 可做更多 op 验证。
  3. 集体通信必须同序同参。
返回模块 返回总览