[mir_onnx] Do not set names of operations (#6956)
authorСергей Баранников/AI Tools Lab /SRR/Engineer/삼성전자 <s.barannikov@samsung.com>
Wed, 28 Aug 2019 12:43:14 +0000 (21:43 +0900)
committerAlexander Efimov/AI Tools Lab/./Samsung Electronics <a.efimov@samsung.com>
Wed, 28 Aug 2019 12:43:14 +0000 (15:43 +0300)
Remove useless setting of operation names.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
compiler/mir-onnx-importer/ONNXHelpers.h
compiler/mir-onnx-importer/ONNXImporterImpl.cpp
compiler/mir-onnx-importer/ONNXNodeConverterRegistry.h
compiler/mir-onnx-importer/Op/Constant.cpp

index 73c3a2d..334fe17 100644 (file)
@@ -32,8 +32,7 @@ mir::TensorVariant createTensor(const onnx::TensorProto *tensor);
 template <typename OpType, typename... Types>
 mir::Operation *createOp(mir::Graph *graph, Types &&... args)
 {
-  // TODO: how to name operations?
-  return graph->create<OpType>("", std::forward<Types>(args)...);
+  return graph->create<OpType>(std::forward<Types>(args)...);
 }
 
 inline mir::Operation::Output *convertONNXToMIR(mir::Graph *graph, mir::Operation::Output *arg)
index d1efd07..29d5b70 100644 (file)
@@ -108,9 +108,8 @@ void ONNXImporterImpl::createGraphInputs()
   // Create all initializer Tensors
   for (const auto &tensor : initializer)
   {
-    assert(tensor.has_name());
     const auto mir_tensor = createTensor(&tensor);
-    auto *op = _graph->create<mir::ops::ConstantOp>(tensor.name(), mir_tensor);
+    auto *op = _graph->create<mir::ops::ConstantOp>(mir_tensor);
     _context->setOutput(tensor.name(), op->getOutput(0));
   }
 
@@ -128,7 +127,7 @@ void ONNXImporterImpl::createGraphInputs()
         shape.dim(i) = static_cast<int32_t>(onnx_input_shape.dim(i).dim_value());
       }
 
-      auto *op = _graph->create<mir::ops::InputOp>(input.name(), shape);
+      auto *op = _graph->create<mir::ops::InputOp>(shape);
       _context->setOutput(input.name(), op->getOutput(0));
     }
   }
@@ -172,8 +171,7 @@ std::unique_ptr<mir::Graph> ONNXImporterImpl::createIR()
     if (mir_output == nullptr)
       throw std::runtime_error("Bad output name!");
 
-    _graph->create<mir::ops::OutputOp>(output.name(), mir_output);
-    mir_output->getNode()->setName("");
+    _graph->create<mir::ops::OutputOp>(mir_output);
   }
 
   return std::move(_graph);
index 8efeefd..da3a34c 100644 (file)
@@ -54,7 +54,7 @@ public:
     output->setName(name);
     auto result = _tensorNameToOutput.emplace(name, output);
     if (!result.second)
-      throw std::runtime_error("Name duplication: " + output->getNode()->getName());
+      throw std::runtime_error("Name duplication: " + name);
   }
 
   mir::Operation::Output *getOutput(const std::string &name) const
@@ -89,7 +89,6 @@ public:
     assert(!outputs.empty());
     for (std::size_t i = 0; i < outputs.size(); ++i)
     {
-      outputs[i]->getNode()->setName(onnx_node.output(i));
       setOutput(onnx_node.output(i), outputs[i]);
     }
   }
index 3a1a9e9..8cf3f4d 100644 (file)
@@ -46,10 +46,9 @@ void ConstantNodeConverter::convertV1(const onnx::NodeProto &onnx_node,
   mir::Graph *graph = context->getGraph();
 
   const auto onnx_tensor = getAttributeValue<onnx::TensorProto>(onnx_node, "value");
-  const auto &name = onnx_node.output(0);
   auto mir_tensor = createTensor(&onnx_tensor);
 
-  auto result = graph->create<mir::ops::ConstantOp>(name, mir_tensor)->getOutput(0);
+  auto result = graph->create<mir::ops::ConstantOp>(mir_tensor)->getOutput(0);
 
   context->setNodeOutputs(onnx_node, {result});
 }