Browse Source

Add reduce_scatter communication op fusion pass

tags/v0.3.0-alpha
yujianfeng 5 years ago
parent
commit
19bfd2de69
2 changed files with 8 additions and 0 deletions
  1. +1
    -0
      mindspore/ccsrc/pre_activate/ascend/ascend_backend_optimization.cc
  2. +7
    -0
      mindspore/ccsrc/pre_activate/pass/communication_op_fusion.h

+ 1
- 0
mindspore/ccsrc/pre_activate/ascend/ascend_backend_optimization.cc View File

@@ -287,6 +287,7 @@ void AscendBackendOptimization(const std::shared_ptr<session::KernelGraph> &kern
auto other_pm = std::make_shared<PassManager>("other_pm"); auto other_pm = std::make_shared<PassManager>("other_pm");
other_pm->AddPass(std::make_shared<AllReduceFusion>()); other_pm->AddPass(std::make_shared<AllReduceFusion>());
other_pm->AddPass(std::make_shared<AllGatherFusion>()); other_pm->AddPass(std::make_shared<AllGatherFusion>());
other_pm->AddPass(std::make_shared<ReduceScatterFusion>());
other_pm->AddPass(std::make_shared<BroadcastFusion>()); other_pm->AddPass(std::make_shared<BroadcastFusion>());
other_pm->AddPass(std::make_shared<ParameterTransOpFusion>()); other_pm->AddPass(std::make_shared<ParameterTransOpFusion>());
other_pm->AddPass(std::make_shared<RefreshParameterFormat>()); other_pm->AddPass(std::make_shared<RefreshParameterFormat>());


+ 7
- 0
mindspore/ccsrc/pre_activate/pass/communication_op_fusion.h View File

@@ -68,6 +68,13 @@ class BroadcastFusion : public CommunicationOpFusion {
explicit BroadcastFusion(size_t groups = 1) : CommunicationOpFusion("broadcast_fusion", kBroadcastOpName, groups) {} explicit BroadcastFusion(size_t groups = 1) : CommunicationOpFusion("broadcast_fusion", kBroadcastOpName, groups) {}
~BroadcastFusion() override = default; ~BroadcastFusion() override = default;
}; };
class ReduceScatterFusion : public CommunicationOpFusion {
public:
explicit ReduceScatterFusion(size_t groups = 1)
: CommunicationOpFusion("reduce_scatter_fusion", kReduceScatterOpName, groups) {}
~ReduceScatterFusion() override = default;
};
} // namespace opt } // namespace opt
} // namespace mindspore } // namespace mindspore
#endif // MINDSPORE_CCSRC_PRE_ACTIVATE_PASS_COMMUNICATION_OP_FUSION_H_ #endif // MINDSPORE_CCSRC_PRE_ACTIVATE_PASS_COMMUNICATION_OP_FUSION_H_

Loading…
Cancel
Save