MCPcopy Create free account
hub / github.com/MegEngine/MegEngine / do_execute

Method do_execute

src/opr/impl/muxing.cpp:259–271  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

257}
258
259void AllGather::do_execute(ExecEnv& env) {
260 CompNode::UnorderedSet used_cn;
261 for (auto i : output()) {
262 if (!used_cn.insert(i->comp_node()).second)
263 continue;
264 auto runner = [this, cn = i->comp_node()]() {
265 owner_graph()->event().signal_inplace<cg::event::BeforeKernel>(this, cn);
266 m_copy_strategy->execute_on_comp_node(cn);
267 owner_graph()->event().signal_inplace<cg::event::AfterKernel>(this, cn);
268 };
269 env.dispatch_on_comp_node(i->comp_node(), runner);
270 }
271}
272
273VarNodeArray AllGather::grad(const VarNodeArray& out_grad) {
274 CompNode::UnorderedMap<VarNode*> cn_reduced;

Callers

nothing calls this directly

Calls 4

execute_on_comp_nodeMethod · 0.80
insertMethod · 0.45
comp_nodeMethod · 0.45
dispatch_on_comp_nodeMethod · 0.45

Tested by

no test coverage detected