Browse Source

modify input shape check

pull/1233/head
zhengyuanhua 4 years ago
parent
commit
196fe87ffe
2 changed files with 19 additions and 6 deletions
  1. +5
    -6
      ge/graph/preprocess/graph_preprocess.cc
  2. +14
    -0
      tests/ut/ge/graph/preprocess/graph_preprocess_unittest.cc

+ 5
- 6
ge/graph/preprocess/graph_preprocess.cc View File

@@ -1763,13 +1763,12 @@ Status GraphPrepare::CheckUserInput(const std::vector<GeTensor> &user_input) {
GeTensorDesc desc(user_input[index].GetTensorDesc());

for (size_t i = 0; i < desc.GetShape().GetDimNum(); ++i) {
if (desc.GetShape().GetDim(i) < 0) {
std::string situation = "data dim[" + std::to_string(i) + "][" +
std::to_string(desc.GetShape().GetDim(i)) + "]" ;
std::string reason = "it need >= 0";
int64_t dim = desc.GetShape().GetDim(i);
if (dim < 0 && dim != UNKNOWN_DIM) {
std::string situation = "data dim[" + std::to_string(i) + "][" + std::to_string(dim) + "]" ;
std::string reason = "it need >= -1";
ErrorManager::GetInstance().ATCReportErrMessage("E19025", {"situation", "reason"}, {situation, reason});
GELOGE(GE_GRAPH_INIT_FAILED, "data dim %zu is not supported, need >= 0, real:%ld.", i,
desc.GetShape().GetDim(i));
GELOGE(GE_GRAPH_INIT_FAILED, "data dim %zu is not supported, need >= -1, real:%ld.", i, dim);
return GE_GRAPH_INIT_FAILED;
}
}


+ 14
- 0
tests/ut/ge/graph/preprocess/graph_preprocess_unittest.cc View File

@@ -74,4 +74,18 @@ TEST_F(UtestGraphPreproces, test_dynamic_input_shape_parse) {
EXPECT_EQ(result_shape.GetDim(i), expect_shape.at(i));
}
}

TEST_F(UtestGraphPreproces, test_check_user_input) {
ge::GraphPrepare graph_prepare;
graph_prepare.compute_graph_ = BuildGraph1();

vector<int64_t> dim = {2, -3};
GeTensor tensor;
tensor.SetTensorDesc(GeTensorDesc(GeShape(dim)));
std::vector<GeTensor> user_input;
user_input.emplace_back(tensor);

Status ret = graph_prepare.CheckUserInput(user_input);
EXPECT_EQ(ret, GE_GRAPH_INIT_FAILED);
}
}

Loading…
Cancel
Save