Add more debugging facilities to ONNXIFI transform (#17043)
authorYinghai Lu <yinghai@fb.com>
Wed, 13 Feb 2019 07:59:40 +0000 (23:59 -0800)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Wed, 13 Feb 2019 08:05:41 +0000 (00:05 -0800)
Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/17043

Add more debugging facilities for ONXNIFI transform.

Reviewed By: ipiszy

Differential Revision: D14019492

fbshipit-source-id: 8c258ccba2f8ce77db096031fc8a61e15bd8af93

caffe2/opt/onnxifi_transformer.cc

index 3079d26..0fdbeb5 100644 (file)
@@ -574,8 +574,12 @@ NetDef OnnxifiTransformer::SubnetToOnnxifiOpViaC2(
 
   // Debugging stuff
   if (opts_.debug) {
-    WriteProtoToTextFile(onnxifi_net, "debug_onnxifi_net.pb_txt");
-    WriteProtoToTextFile(net_opt, "debug_optimized_net.pb_txt");
+    WriteProtoToTextFile(
+        onnxifi_net,
+        "debug_onnxifi_net_" + c10::to_string(onnxifi_op_id_) + ".pb_txt");
+    WriteProtoToTextFile(
+        net_opt,
+        "debug_optimized_net_" + c10::to_string(onnxifi_op_id_) + ".pb_txt");
   }
   return net_opt;
 }
@@ -728,7 +732,12 @@ CaffeMap<std::string, TensorShape> OnnxifiTransformer::SsaRewriteAndMapNames(
   // Make sure weights do not contain output of any op.
   for (const auto& op : pred_net->op()) {
     for (const auto& output : op.output()) {
-      CAFFE_ENFORCE_EQ(weights.count(output), 0);
+      CAFFE_ENFORCE_EQ(
+          weights.count(output),
+          0,
+          "Weight ",
+          output,
+          " shouldn't appear in the output");
     }
   }
   input_mapping_ = onnx::SsaRewrite(nullptr, pred_net, weights);