| // Generated from fully_connected_v1_2.mod.py |
| // DO NOT EDIT |
| // clang-format off |
| #include "TestHarness.h" |
| |
| using namespace test_helper; |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f, 32.0f, 16.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({8.0f, 68.0f, 36.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {5}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({8.0f, 68.0f, 36.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f, 32.0f, 16.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {5, 6, 7}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f, 32.0f, 16.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({8.0f, 68.0f, 36.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {5, 8, 11}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({8.0f, 68.0f, 36.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f, 32.0f, 16.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {5, 6, 7}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {8, 9, 10}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {11, 12, 13}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_relaxed() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f, 32.0f, 16.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({8.0f, 68.0f, 36.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_relaxed_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {5}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({8.0f, 68.0f, 36.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f, 32.0f, 16.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {5, 6, 7}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_relaxed_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f, 32.0f, 16.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({8.0f, 68.0f, 36.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_relaxed_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {5, 8, 11}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({8.0f, 68.0f, 36.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f, 32.0f, 16.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {5, 6, 7}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {8, 9, 10}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {11, 12, 13}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_float16() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({2.0f, 32.0f, 16.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({2.0f}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({4.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({8.0f, 68.0f, 36.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_float16_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {5}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({2.0f}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({4.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({8.0f, 68.0f, 36.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({2.0f, 32.0f, 16.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {5, 6, 7}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_float16_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({2.0f, 32.0f, 16.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({2.0f}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({4.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({8.0f, 68.0f, 36.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_float16_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {5, 8, 11}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({8.0f, 68.0f, 36.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({2.0f, 32.0f, 16.0f}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({2.0f}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({4.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {5, 6, 7}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {8, 9, 10}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {11, 12, 13}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_quant8_mult_gt_1() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({131, 191, 159}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 127 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({124}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 120 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({16}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.25f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({208, 255, 255}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_quant8_mult_gt_1_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {5}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 127 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({124}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 120 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({16}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.25f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({208, 255, 255}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({131, 191, 159}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 127 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({127}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 127 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {5, 6, 7}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_quant8_mult_gt_1_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({131, 191, 159}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 127 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({124}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 120 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({16}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.25f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({208, 255, 255}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_quant8_mult_gt_1_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {2, 5, 8}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 127 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 120 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({16}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.25f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({208, 255, 255}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({131, 191, 159}), |
| .dimensions = {3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 127 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({127}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 127 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({124}), |
| .dimensions = {1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 120 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({120}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 120 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {5, 6, 7}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {8, 9, 10}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3}, |
| .outputs = {4}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {4} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_zero_sized_nhwc() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {13}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.9f, 0.1f}), |
| .dimensions = {1, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 1.0f, 10.0f, 10.0f, 0.0f, 0.0f, 10.0f, 10.0f}), |
| .dimensions = {1, 8}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.3f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({-1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.4f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.3f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f}), |
| .dimensions = {1, 1, 1, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0, 2, 2, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f}), |
| .dimensions = {1, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8}, |
| .outputs = {9, 10, 11, 12}, |
| .type = TestOperationType::BOX_WITH_NMS_LIMIT |
| }, { |
| .inputs = {13, 10, 12, 14, 15, 16, 17, 18, 19, 20}, |
| .outputs = {21}, |
| .type = TestOperationType::ROI_ALIGN |
| }, { |
| .inputs = {21, 22, 23, 24}, |
| .outputs = {25}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {9, 11, 25} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_zero_sized_nhwc_relaxed() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {13}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.9f, 0.1f}), |
| .dimensions = {1, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 1.0f, 10.0f, 10.0f, 0.0f, 0.0f, 10.0f, 10.0f}), |
| .dimensions = {1, 8}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.3f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({-1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.4f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.3f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f}), |
| .dimensions = {1, 1, 1, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0, 2, 2, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f}), |
| .dimensions = {1, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8}, |
| .outputs = {9, 10, 11, 12}, |
| .type = TestOperationType::BOX_WITH_NMS_LIMIT |
| }, { |
| .inputs = {13, 10, 12, 14, 15, 16, 17, 18, 19, 20}, |
| .outputs = {21}, |
| .type = TestOperationType::ROI_ALIGN |
| }, { |
| .inputs = {21, 22, 23, 24}, |
| .outputs = {25}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {9, 11, 25} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_zero_sized_nhwc_quant8() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {13}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({137, 129}), |
| .dimensions = {1, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint16_t>({8, 8, 80, 80, 0, 0, 80, 80}), |
| .dimensions = {1, 8}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT16_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.3f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({-1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.4f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.3f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint16_t>({}), |
| .dimensions = {0, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT16_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({138, 148, 158}), |
| .dimensions = {1, 1, 1, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {0, 2, 2, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({138, 148, 158}), |
| .dimensions = {1, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({100}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {0, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8}, |
| .outputs = {9, 10, 11, 12}, |
| .type = TestOperationType::BOX_WITH_NMS_LIMIT |
| }, { |
| .inputs = {13, 10, 12, 14, 15, 16, 17, 18, 19, 20}, |
| .outputs = {21}, |
| .type = TestOperationType::ROI_ALIGN |
| }, { |
| .inputs = {21, 22, 23, 24}, |
| .outputs = {25}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {9, 11, 25} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_zero_sized_nhwc_float16() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {13}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.8999999761581421f, 0.10000000149011612f}), |
| .dimensions = {1, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 1.0f, 10.0f, 10.0f, 0.0f, 0.0f, 10.0f, 10.0f}), |
| .dimensions = {1, 8}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.30000001192092896f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({-1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.4000000059604645f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.30000001192092896f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {0, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f}), |
| .dimensions = {1, 1, 1, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {0, 2, 2, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f}), |
| .dimensions = {1, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {0, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8}, |
| .outputs = {9, 10, 11, 12}, |
| .type = TestOperationType::BOX_WITH_NMS_LIMIT |
| }, { |
| .inputs = {13, 10, 12, 14, 15, 16, 17, 18, 19, 20}, |
| .outputs = {21}, |
| .type = TestOperationType::ROI_ALIGN |
| }, { |
| .inputs = {21, 22, 23, 24}, |
| .outputs = {25}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {9, 11, 25} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_zero_sized_nchw() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {13}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.9f, 0.1f}), |
| .dimensions = {1, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 1.0f, 10.0f, 10.0f, 0.0f, 0.0f, 10.0f, 10.0f}), |
| .dimensions = {1, 8}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.3f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({-1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.4f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.3f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f}), |
| .dimensions = {1, 3, 1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0, 3, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f}), |
| .dimensions = {1, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8}, |
| .outputs = {9, 10, 11, 12}, |
| .type = TestOperationType::BOX_WITH_NMS_LIMIT |
| }, { |
| .inputs = {13, 10, 12, 14, 15, 16, 17, 18, 19, 20}, |
| .outputs = {21}, |
| .type = TestOperationType::ROI_ALIGN |
| }, { |
| .inputs = {21, 22, 23, 24}, |
| .outputs = {25}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {9, 11, 25} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_zero_sized_nchw_relaxed() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {13}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.9f, 0.1f}), |
| .dimensions = {1, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 1.0f, 10.0f, 10.0f, 0.0f, 0.0f, 10.0f, 10.0f}), |
| .dimensions = {1, 8}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.3f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({-1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.4f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.3f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f}), |
| .dimensions = {1, 3, 1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0, 3, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f}), |
| .dimensions = {1, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {0, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8}, |
| .outputs = {9, 10, 11, 12}, |
| .type = TestOperationType::BOX_WITH_NMS_LIMIT |
| }, { |
| .inputs = {13, 10, 12, 14, 15, 16, 17, 18, 19, 20}, |
| .outputs = {21}, |
| .type = TestOperationType::ROI_ALIGN |
| }, { |
| .inputs = {21, 22, 23, 24}, |
| .outputs = {25}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {9, 11, 25} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_zero_sized_nchw_quant8() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {13}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({137, 129}), |
| .dimensions = {1, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint16_t>({8, 8, 80, 80, 0, 0, 80, 80}), |
| .dimensions = {1, 8}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT16_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.3f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({-1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.4f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.3f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint16_t>({}), |
| .dimensions = {0, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT16_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({138, 148, 158}), |
| .dimensions = {1, 3, 1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {0, 3, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({138, 148, 158}), |
| .dimensions = {1, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({100}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {0, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 128 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8}, |
| .outputs = {9, 10, 11, 12}, |
| .type = TestOperationType::BOX_WITH_NMS_LIMIT |
| }, { |
| .inputs = {13, 10, 12, 14, 15, 16, 17, 18, 19, 20}, |
| .outputs = {21}, |
| .type = TestOperationType::ROI_ALIGN |
| }, { |
| .inputs = {21, 22, 23, 24}, |
| .outputs = {25}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {9, 11, 25} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |
| namespace generated_tests::fully_connected_v1_2 { |
| |
| const TestModel& get_test_model_zero_sized_nchw_float16() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {13}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.8999999761581421f, 0.10000000149011612f}), |
| .dimensions = {1, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 1.0f, 10.0f, 10.0f, 0.0f, 0.0f, 10.0f, 10.0f}), |
| .dimensions = {1, 8}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.30000001192092896f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({-1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.4000000059604645f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.30000001192092896f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {0, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({}), |
| .dimensions = {0}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f}), |
| .dimensions = {1, 3, 1, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({2}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({2.0f}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({4}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {0, 3, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f}), |
| .dimensions = {1, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {0, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8}, |
| .outputs = {9, 10, 11, 12}, |
| .type = TestOperationType::BOX_WITH_NMS_LIMIT |
| }, { |
| .inputs = {13, 10, 12, 14, 15, 16, 17, 18, 19, 20}, |
| .outputs = {21}, |
| .type = TestOperationType::ROI_ALIGN |
| }, { |
| .inputs = {21, 22, 23, 24}, |
| .outputs = {25}, |
| .type = TestOperationType::FULLY_CONNECTED |
| }}, |
| .outputIndexes = {9, 11, 25} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::fully_connected_v1_2 |
| |