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

Function _replace_vars

imperative/python/src/graph_rt.cpp:71–86  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

69using HostNDWithEvent = std::pair<HostTensorND, std::shared_ptr<CompNode::Event>>;
70
71std::vector<mgb::cg::VarNode*> _replace_vars(
72 const std::vector<mgb::cg::VarNode*>& repl_src,
73 const std::vector<mgb::cg::VarNode*>& repl_dst,
74 const std::vector<mgb::cg::VarNode*>& vars) {
75 mgb::ThinHashMap<SymbolVar, SymbolVar> varmap;
76 for (size_t i = 0; i < repl_src.size(); ++i) {
77 varmap[SymbolVar(repl_src[i])] = SymbolVar(repl_dst[i]);
78 }
79 SymbolVarArray symvars(vars.begin(), vars.end());
80 auto sym_result = mgb::cg::replace_vars(symvars, varmap);
81 std::vector<mgb::cg::VarNode*> result;
82 for (auto symvar : sym_result) {
83 result.push_back(symvar.node());
84 }
85 return result;
86}
87
88typedef std::vector<mgb::cg::OperatorNodeBase*> OperatorArray;
89std::vector<mgb::cg::VarNode*> _replace_oprs(

Callers

nothing calls this directly

Calls 7

SymbolVarClass · 0.85
replace_varsFunction · 0.85
sizeMethod · 0.45
beginMethod · 0.45
endMethod · 0.45
push_backMethod · 0.45
nodeMethod · 0.45

Tested by

no test coverage detected