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

Method load_oprs

src/serialization/impl/serializer_oss_v2.cpp:798–830  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

796}
797
798GraphLoader::LoadResult GraphLoaderOSSV2::OprLoadContextImpl::load_oprs() {
799 // load oprs
800 const auto* oprs = m_loader->m_model->oprs();
801 {
802 // inplace arith graph optimization is disabled during opr load
803 // it tries to restore the same graph as it was dumped
804 // see test TestSerializer2.LOGEXP for example
805 GraphLoader::ScopedGraphOptDisabler _(m_graph);
806 for (flatbuffers::uoffset_t i = 0; i < oprs->size(); ++i) {
807 m_current_opr = oprs->Get(i);
808 load_single_opr(m_current_opr);
809 }
810 }
811
812 // batched loading device values
813 m_device_value_loader.apply();
814
815 LoadResult ret;
816 ret.graph = m_graph;
817 ret.tensor_map = m_tensor_map;
818
819 const auto* outputs = m_loader->m_model->output_vars_idx();
820 ret.output_var_list.resize(outputs->size());
821 for (flatbuffers::uoffset_t i = 0; i < outputs->size(); i++) {
822 auto out = outputs->Get(i);
823 auto var = m_id2varnode.at(out->compact_id());
824 ret.output_var_map[var->name()] = var;
825 ret.output_var_map_id[out->original_id()] = var;
826 ret.output_var_list[i] = var;
827 }
828 mgb_assert(m_cur_shared_tensor_idx <= m_loader->m_shared_tensor_map.size());
829 return ret;
830}
831
832void GraphLoaderOSSV2::OprLoadContextImpl::load_middle_tensor() {
833 auto model = m_loader->m_model;

Callers 1

loadMethod · 0.45

Calls 5

resizeMethod · 0.80
sizeMethod · 0.45
applyMethod · 0.45
atMethod · 0.45
nameMethod · 0.45

Tested by

no test coverage detected