diff options
author | Andrew Selle <aselle@google.com> | 2018-07-10 09:40:11 -0700 |
---|---|---|
committer | TensorFlower Gardener <gardener@tensorflow.org> | 2018-07-10 09:43:52 -0700 |
commit | 0c7e26bcf14afa88e882bfb8eeff682d268f52e7 (patch) | |
tree | 961d85183ab008f3c3dc8b8a527171e50a682b4e /tensorflow | |
parent | 17d5ea36fcc2e8914687be12e39ac9b97d4d8ce7 (diff) |
Make tensorflow lite interpreter have more helpful errors.
PiperOrigin-RevId: 203961654
Diffstat (limited to 'tensorflow')
-rw-r--r-- | tensorflow/contrib/lite/interpreter.cc | 4 | ||||
-rw-r--r-- | tensorflow/contrib/lite/model.cc | 5 |
2 files changed, 7 insertions, 2 deletions
diff --git a/tensorflow/contrib/lite/interpreter.cc b/tensorflow/contrib/lite/interpreter.cc index 521216a4f1..5f9e7e959f 100644 --- a/tensorflow/contrib/lite/interpreter.cc +++ b/tensorflow/contrib/lite/interpreter.cc @@ -565,6 +565,8 @@ TfLiteStatus Interpreter::PrepareOpsStartingAt( nodes_and_registration_[node_index].second; EnsureTensorsVectorCapacity(); if (OpPrepare(registration, &node) == kTfLiteError) { + context_.ReportError(&context_, "Node %d failed to prepare.\n", + node_index); return kTfLiteError; } @@ -665,6 +667,8 @@ TfLiteStatus Interpreter::Invoke() { EnsureTensorsVectorCapacity(); tensor_resized_since_op_invoke_ = false; if (OpInvoke(registration, &node) == kTfLiteError) { + context_.ReportError(&context_, "Node %d failed to invoke.\n", + node_index); status = kTfLiteError; } diff --git a/tensorflow/contrib/lite/model.cc b/tensorflow/contrib/lite/model.cc index dbbc505906..ca4821e84d 100644 --- a/tensorflow/contrib/lite/model.cc +++ b/tensorflow/contrib/lite/model.cc @@ -206,8 +206,9 @@ TfLiteStatus InterpreterBuilder::BuildLocalIndexToRegistrationMapping() { } else if (builtin_code != BuiltinOperator_CUSTOM) { registration = op_resolver_.FindOp(builtin_code, version); if (registration == nullptr) { - error_reporter_->Report("Didn't find op for builtin opcode '%s'\n", - EnumNameBuiltinOperator(builtin_code)); + error_reporter_->Report( + "Didn't find op for builtin opcode '%s' version '%d'\n", + EnumNameBuiltinOperator(builtin_code), version); status = kTfLiteError; } } else if (!opcode->custom_code()) { |