Set submodule id for init.cc

pull/1294/head
fary86 5 years ago
parent 0c19324484
commit a0cc983445

@ -172,6 +172,7 @@ endif()
# set c_expression building
set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
set_property(SOURCE "pipeline/init.cc" PROPERTY COMPILE_DEFINITIONS SUBMODULE_ID=mindspore::SubModuleId::SM_PIPELINE)
pybind11_add_module(_c_expression "pipeline/init.cc")
MESSAGE(STATUS "operation system is ${CMAKE_SYSTEM}")

@ -32,4 +32,27 @@ abstract::AbstractBasePtr MetaFuncGraph::MakeAbstractClosure(const AnfNodePtr &a
}
return meta_func_graph_fn;
}
FuncGraphPtr MetaFuncGraph::GenerateFuncGraph(const abstract::AbstractBasePtrList &args_spec_list) {
TypePtrList types;
(void)std::transform(args_spec_list.begin(), args_spec_list.end(), std::back_inserter(types),
[](const AbstractBasePtr &arg) -> TypePtr {
MS_EXCEPTION_IF_NULL(arg);
return arg->BuildType();
});
// filter unsafe characters in log print since name_ is from outside
auto iter = cache_.find(types);
if (iter == cache_.end()) {
FuncGraphPtr fg = GenerateFromTypes(types);
MS_EXCEPTION_IF_NULL(fg);
MS_LOG(INFO) << "MetaFuncgraph: cache miss for types: " << mindspore::ToString(args_spec_list)
<< ", g: " << fg->ToString();
cache_[types] = fg;
return fg;
} else {
MS_LOG(DEBUG) << "MetaFuncgraph: cache hit for types: " << mindspore::ToString(args_spec_list)
<< ", g: " << iter->second->ToString();
return iter->second;
}
}
} // namespace mindspore

@ -58,28 +58,7 @@ class MetaFuncGraph : public FuncGraphBase {
const std::vector<Signature> &signatures() const { return signatures_; }
void set_signatures(const std::vector<Signature> &signatures) { signatures_ = signatures; }
// Generate a Graph for the given abstract arguments.
virtual FuncGraphPtr GenerateFuncGraph(const abstract::AbstractBasePtrList &args_spec_list) {
TypePtrList types;
(void)std::transform(args_spec_list.begin(), args_spec_list.end(), std::back_inserter(types),
[](const AbstractBasePtr &arg) -> TypePtr {
MS_EXCEPTION_IF_NULL(arg);
return arg->BuildType();
});
// filter unsafe characters in log print since name_ is from outside
auto iter = cache_.find(types);
if (iter == cache_.end()) {
FuncGraphPtr fg = GenerateFromTypes(types);
MS_EXCEPTION_IF_NULL(fg);
MS_LOG(INFO) << "MetaFuncgraph: cache miss for types: " << mindspore::ToString(args_spec_list)
<< ", g: " << fg->ToString();
cache_[types] = fg;
return fg;
} else {
MS_LOG(DEBUG) << "MetaFuncgraph: cache hit for types: " << mindspore::ToString(args_spec_list)
<< ", g: " << iter->second->ToString();
return iter->second;
}
}
virtual FuncGraphPtr GenerateFuncGraph(const abstract::AbstractBasePtrList &args_spec_list);
// Generate a Graph for this type signature.
virtual FuncGraphPtr GenerateFromTypes(const TypePtrList &) {

@ -172,7 +172,7 @@ py::object AnyToPyData(const Any &value) {
py::object BaseRefToPyData(const BaseRef &value) {
py::object ret;
MS_LOG(DEBUG) << "BaseRefToPyData " << common::SafeCStr(value.ToString());
MS_LOG(DEBUG) << "BaseRefToPyData " << value.ToString();
if (utils::isa<int>(value) || utils::isa<float>(value) || utils::isa<double>(value) || utils::isa<bool>(value)) {
ret = BuiltinsToPyData(value);
} else if (utils::isa<ValuePtr>(value)) {

Loading…
Cancel
Save