Created by: gavin1332
现在repo里allreduce(以及其他collective操作)的实现比较多,至少5处,分别是operators/nccl, operators/distributed_ops, operators/collective, framework/fleet/nccl_wrapper以及op handle,近期计划对除了handle以外的collective操作进行整合,在op层面实现统一。
√ Step1. 移除operators/nccl目录 √ Step2. 确保NCCLComm接口同NCCLContext一致 √ Step3. 将NCCLComm替换为NCCLContext √ Step4. 移除framework/fleet/nccl_wrapper √ Step5. 全局保留唯一collective单例 √ Step6. 适配HAllreduce Step6. 统一collective操作
额外的改进:
- 解决NCCLContext comm_ 成员没有资源释放问题