Browse Source

benchmark mark accuracy use only 1 tensor

tags/v0.7.0-beta
cjh9368 5 years ago
parent
commit
6bb057ea27
1 changed files with 15 additions and 11 deletions
  1. +15
    -11
      mindspore/lite/tools/benchmark/benchmark.cc

+ 15
- 11
mindspore/lite/tools/benchmark/benchmark.cc View File

@@ -234,17 +234,21 @@ int Benchmark::CompareOutput() {
MS_LOG(ERROR) << "Cannot find output node: " << nodeName.c_str() << " , compare output data fail.";
return RET_ERROR;
}
for (auto tensor : tensors) {
MS_ASSERT(tensor->GetDataType() == DataType_DT_FLOAT);
MS_ASSERT(tensor->GetData() != nullptr);
float bias = CompareData(nodeName, tensor->shape(), static_cast<float *>(tensor->MutableData()));
if (bias >= 0) {
totalBias += bias;
totalSize++;
} else {
hasError = true;
break;
}
// make sure tensor size is 1
if (tensors.size() != 1) {
MS_LOG(ERROR) << "Only support 1 tensor with a name now.";
return RET_ERROR;
}
auto &tensor = tensors.front();
MS_ASSERT(tensor->GetDataType() == DataType_DT_FLOAT);
MS_ASSERT(tensor->GetData() != nullptr);
float bias = CompareData(nodeName, tensor->shape(), static_cast<float *>(tensor->MutableData()));
if (bias >= 0) {
totalBias += bias;
totalSize++;
} else {
hasError = true;
break;
}
}



Loading…
Cancel
Save