| // Generated from depthwise_conv2d_dilation.mod.py |
| // DO NOT EDIT |
| // clang-format off |
| #include "TestHarness.h" |
| |
| using namespace test_helper; |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15, 18, 21}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .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>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {21, 22, 23}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_relaxed() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_relaxed_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_relaxed_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_relaxed_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15, 18, 21}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .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>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {21, 22, 23}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_float16() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 3.0f, 7.199999809265137f, 10.600000381469727f, 11.0f, 3.0f, 7.400000095367432f, 10.899999618530273f, 11.0f, 3.0f, 7.800000190734863f, 11.5f, 11.0f, 3.0f, 8.0f, 11.800000190734863f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_float16_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 3.0f, 7.199999809265137f, 10.600000381469727f, 11.0f, 3.0f, 7.400000095367432f, 10.899999618530273f, 11.0f, 3.0f, 7.800000190734863f, 11.5f, 11.0f, 3.0f, 8.0f, 11.800000190734863f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_float16_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 3.0f, 7.199999809265137f, 10.600000381469727f, 11.0f, 3.0f, 7.400000095367432f, 10.899999618530273f, 11.0f, 3.0f, 7.800000190734863f, 11.5f, 11.0f, 3.0f, 8.0f, 11.800000190734863f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_float16_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15, 18, 21}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 3.0f, 7.199999809265137f, 10.600000381469727f, 11.0f, 3.0f, 7.400000095367432f, 10.899999618530273f, 11.0f, 3.0f, 7.800000190734863f, 11.5f, 11.0f, 3.0f, 8.0f, 11.800000190734863f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .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>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {21, 22, 23}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_quant8() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 42, 20, 44, 20, 46, 20, 48, 20, 50, 20, 52, 20, 54, 20, 56, 20, 58}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 30, 72, 106, 110, 30, 74, 109, 110, 30, 78, 115, 110, 30, 80, 118}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_quant8_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 30, 72, 106, 110, 30, 74, 109, 110, 30, 78, 115, 110, 30, 80, 118}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 42, 20, 44, 20, 46, 20, 48, 20, 50, 20, 52, 20, 54, 20, 56, 20, 58}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_quant8_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 42, 20, 44, 20, 46, 20, 48, 20, 50, 20, 52, 20, 54, 20, 56, 20, 58}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 30, 72, 106, 110, 30, 74, 109, 110, 30, 78, 115, 110, 30, 80, 118}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_quant8_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {2, 15, 18}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 30, 72, 106, 110, 30, 74, 109, 110, 30, 78, 115, 110, 30, 80, 118}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 42, 20, 44, 20, 46, 20, 48, 20, 50, 20, 52, 20, 54, 20, 56, 20, 58}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15, 18, 21}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .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>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {21, 22, 23}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_relaxed() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_relaxed_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_relaxed_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_relaxed_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15, 18, 21}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .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>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {21, 22, 23}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_float16() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.199999809265137f, 7.400000095367432f, 7.800000190734863f, 8.0f, 10.600000381469727f, 10.899999618530273f, 11.5f, 11.800000190734863f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_float16_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.199999809265137f, 7.400000095367432f, 7.800000190734863f, 8.0f, 10.600000381469727f, 10.899999618530273f, 11.5f, 11.800000190734863f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_float16_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.199999809265137f, 7.400000095367432f, 7.800000190734863f, 8.0f, 10.600000381469727f, 10.899999618530273f, 11.5f, 11.800000190734863f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_float16_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15, 18, 21}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.199999809265137f, 7.400000095367432f, 7.800000190734863f, 8.0f, 10.600000381469727f, 10.899999618530273f, 11.5f, 11.800000190734863f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .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>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {21, 22, 23}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_quant8() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 20, 20, 20, 20, 20, 20, 20, 20, 42, 44, 46, 48, 50, 52, 54, 56, 58}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 110, 110, 110, 30, 30, 30, 30, 72, 74, 78, 80, 106, 109, 115, 118}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_quant8_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 110, 110, 110, 30, 30, 30, 30, 72, 74, 78, 80, 106, 109, 115, 118}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 20, 20, 20, 20, 20, 20, 20, 20, 42, 44, 46, 48, 50, 52, 54, 56, 58}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_quant8_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 20, 20, 20, 20, 20, 20, 20, 20, 42, 44, 46, 48, 50, 52, 54, 56, 58}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 110, 110, 110, 30, 30, 30, 30, 72, 74, 78, 80, 106, 109, 115, 118}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_quant8_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {2, 15, 18}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 110, 110, 110, 30, 30, 30, 30, 72, 74, 78, 80, 106, 109, 115, 118}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 20, 20, 20, 20, 20, 20, 20, 20, 42, 44, 46, 48, 50, 52, 54, 56, 58}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 4, 4, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({13.0f, 14.0f, 0.0f, 0.0f, 0.0f, 0.0f, 11.0f, 12.0f, 5.0f, 6.0f, 0.0f, 0.0f, 0.0f, 0.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_all_inputs_as_internal_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 4, 4, 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, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({13.0f, 14.0f, 0.0f, 0.0f, 0.0f, 0.0f, 11.0f, 12.0f, 5.0f, 6.0f, 0.0f, 0.0f, 0.0f, 0.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 4, 4, 2}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_all_tensors_as_inputs_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 4, 4, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({13.0f, 14.0f, 0.0f, 0.0f, 0.0f, 0.0f, 11.0f, 12.0f, 5.0f, 6.0f, 0.0f, 0.0f, 0.0f, 0.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nhwc_all_tensors_as_inputs_all_inputs_as_internal_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15, 18, 21}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 4, 4, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({13.0f, 14.0f, 0.0f, 0.0f, 0.0f, 0.0f, 11.0f, 12.0f, 5.0f, 6.0f, 0.0f, 0.0f, 0.0f, 0.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 4, 4, 2}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {21, 22, 23}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 4, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({13.0f, 0.0f, 5.0f, 0.0f, 14.0f, 0.0f, 6.0f, 0.0f, 0.0f, 11.0f, 0.0f, 3.0f, 0.0f, 12.0f, 0.0f, 4.0f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_all_inputs_as_internal_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 4, 4}, |
| .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, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({13.0f, 0.0f, 5.0f, 0.0f, 14.0f, 0.0f, 6.0f, 0.0f, 0.0f, 11.0f, 0.0f, 3.0f, 0.0f, 12.0f, 0.0f, 4.0f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 4, 4}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_all_tensors_as_inputs_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 4, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({13.0f, 0.0f, 5.0f, 0.0f, 14.0f, 0.0f, 6.0f, 0.0f, 0.0f, 11.0f, 0.0f, 3.0f, 0.0f, 12.0f, 0.0f, 4.0f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_nchw_all_tensors_as_inputs_all_inputs_as_internal_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {15, 18, 21}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 4, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {4}, |
| .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<int32_t>({0}), |
| .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<int32_t>({0}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({13.0f, 0.0f, 5.0f, 0.0f, 14.0f, 0.0f, 6.0f, 0.0f, 0.0f, 11.0f, 0.0f, 3.0f, 0.0f, 12.0f, 0.0f, 4.0f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 4, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .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 = {15, 16, 17}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {21, 22, 23}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, |
| .outputs = {14}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {14} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .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>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_relaxed() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_relaxed_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_relaxed_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_relaxed_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 3.0f, 7.2f, 10.6f, 11.0f, 3.0f, 7.4f, 10.9f, 11.0f, 3.0f, 7.8f, 11.5f, 11.0f, 3.0f, 8.0f, 11.8f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .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>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_float16() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 3.0f, 7.199999809265137f, 10.600000381469727f, 11.0f, 3.0f, 7.400000095367432f, 10.899999618530273f, 11.0f, 3.0f, 7.800000190734863f, 11.5f, 11.0f, 3.0f, 8.0f, 11.800000190734863f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_float16_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 3.0f, 7.199999809265137f, 10.600000381469727f, 11.0f, 3.0f, 7.400000095367432f, 10.899999618530273f, 11.0f, 3.0f, 7.800000190734863f, 11.5f, 11.0f, 3.0f, 8.0f, 11.800000190734863f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_float16_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 3.0f, 7.199999809265137f, 10.600000381469727f, 11.0f, 3.0f, 7.400000095367432f, 10.899999618530273f, 11.0f, 3.0f, 7.800000190734863f, 11.5f, 11.0f, 3.0f, 8.0f, 11.800000190734863f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_float16_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 3.0f, 7.199999809265137f, 10.600000381469727f, 11.0f, 3.0f, 7.400000095367432f, 10.899999618530273f, 11.0f, 3.0f, 7.800000190734863f, 11.5f, 11.0f, 3.0f, 8.0f, 11.800000190734863f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 21.0f, 10.0f, 22.0f, 10.0f, 23.0f, 10.0f, 24.0f, 10.0f, 25.0f, 10.0f, 26.0f, 10.0f, 27.0f, 10.0f, 28.0f, 10.0f, 29.0f}), |
| .dimensions = {1, 3, 3, 2}, |
| .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>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_quant8() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 42, 20, 44, 20, 46, 20, 48, 20, 50, 20, 52, 20, 54, 20, 56, 20, 58}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .type = TestOperandType::TENSOR_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<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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 30, 72, 106, 110, 30, 74, 109, 110, 30, 78, 115, 110, 30, 80, 118}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_quant8_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .type = TestOperandType::TENSOR_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<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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 30, 72, 106, 110, 30, 74, 109, 110, 30, 78, 115, 110, 30, 80, 118}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 42, 20, 44, 20, 46, 20, 48, 20, 50, 20, 52, 20, 54, 20, 56, 20, 58}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_quant8_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 42, 20, 44, 20, 46, 20, 48, 20, 50, 20, 52, 20, 54, 20, 56, 20, 58}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .type = TestOperandType::TENSOR_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<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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 30, 72, 106, 110, 30, 74, 109, 110, 30, 78, 115, 110, 30, 80, 118}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_quant8_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {2, 12, 15}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .type = TestOperandType::TENSOR_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<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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 30, 72, 106, 110, 30, 74, 109, 110, 30, 78, 115, 110, 30, 80, 118}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 42, 20, 44, 20, 46, 20, 48, 20, 50, 20, 52, 20, 54, 20, 56, 20, 58}), |
| .dimensions = {1, 3, 3, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .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>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_relaxed() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_relaxed_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_relaxed_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_relaxed_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.2f, 7.4f, 7.8f, 8.0f, 10.6f, 10.9f, 11.5f, 11.8f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .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>({0.25f, 0.0f, 0.2f, 0.0f, 0.25f, 0.0f, 0.0f, 0.3f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.1f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_float16() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.199999809265137f, 7.400000095367432f, 7.800000190734863f, 8.0f, 10.600000381469727f, 10.899999618530273f, 11.5f, 11.800000190734863f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_float16_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.199999809265137f, 7.400000095367432f, 7.800000190734863f, 8.0f, 10.600000381469727f, 10.899999618530273f, 11.5f, 11.800000190734863f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_float16_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.199999809265137f, 7.400000095367432f, 7.800000190734863f, 8.0f, 10.600000381469727f, 10.899999618530273f, 11.5f, 11.800000190734863f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_float16_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({11.0f, 11.0f, 11.0f, 11.0f, 3.0f, 3.0f, 3.0f, 3.0f, 7.199999809265137f, 7.400000095367432f, 7.800000190734863f, 8.0f, 10.600000381469727f, 10.899999618530273f, 11.5f, 11.800000190734863f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 10.0f, 21.0f, 22.0f, 23.0f, 24.0f, 25.0f, 26.0f, 27.0f, 28.0f, 29.0f}), |
| .dimensions = {1, 2, 3, 3}, |
| .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>({0.25f, 0.0f, 0.20000000298023224f, 0.0f, 0.25f, 0.0f, 0.0f, 0.30000001192092896f, 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.10000000149011612f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {4}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_quant8() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 20, 20, 20, 20, 20, 20, 20, 20, 42, 44, 46, 48, 50, 52, 54, 56, 58}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .type = TestOperandType::TENSOR_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<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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 110, 110, 110, 30, 30, 30, 30, 72, 74, 78, 80, 106, 109, 115, 118}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_quant8_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .type = TestOperandType::TENSOR_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<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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 110, 110, 110, 30, 30, 30, 30, 72, 74, 78, 80, 106, 109, 115, 118}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 20, 20, 20, 20, 20, 20, 20, 20, 42, 44, 46, 48, 50, 52, 54, 56, 58}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_quant8_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 20, 20, 20, 20, 20, 20, 20, 20, 42, 44, 46, 48, 50, 52, 54, 56, 58}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .type = TestOperandType::TENSOR_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<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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 110, 110, 110, 30, 30, 30, 30, 72, 74, 78, 80, 106, 109, 115, 118}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_quant8_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {2, 12, 15}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({200, 400, 600, 800}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.005f, |
| .type = TestOperandType::TENSOR_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<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>({1}), |
| .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<int32_t>({0}), |
| .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<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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({110, 110, 110, 110, 30, 30, 30, 30, 72, 74, 78, 80, 106, 109, 115, 118}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.1f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({20, 20, 20, 20, 20, 20, 20, 20, 20, 42, 44, 46, 48, 50, 52, 54, 56, 58}), |
| .dimensions = {1, 2, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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>({25, 0, 20, 0, 25, 0, 0, 30, 25, 0, 0, 0, 25, 10, 0, 0}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.01f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 4, 4, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({13.0f, 14.0f, 0.0f, 0.0f, 0.0f, 0.0f, 11.0f, 12.0f, 5.0f, 6.0f, 0.0f, 0.0f, 0.0f, 0.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_all_inputs_as_internal_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 4, 4, 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, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({13.0f, 14.0f, 0.0f, 0.0f, 0.0f, 0.0f, 11.0f, 12.0f, 5.0f, 6.0f, 0.0f, 0.0f, 0.0f, 0.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 4, 4, 2}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_all_tensors_as_inputs_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 4, 4, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({13.0f, 14.0f, 0.0f, 0.0f, 0.0f, 0.0f, 11.0f, 12.0f, 5.0f, 6.0f, 0.0f, 0.0f, 0.0f, 0.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nhwc_all_tensors_as_inputs_all_inputs_as_internal_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 4, 4, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({13.0f, 14.0f, 0.0f, 0.0f, 0.0f, 0.0f, 11.0f, 12.0f, 5.0f, 6.0f, 0.0f, 0.0f, 0.0f, 0.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 4, 4, 2}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 4, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({13.0f, 0.0f, 5.0f, 0.0f, 14.0f, 0.0f, 6.0f, 0.0f, 0.0f, 11.0f, 0.0f, 3.0f, 0.0f, 12.0f, 0.0f, 4.0f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_all_inputs_as_internal_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 4, 4}, |
| .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, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({13.0f, 0.0f, 5.0f, 0.0f, 14.0f, 0.0f, 6.0f, 0.0f, 0.0f, 11.0f, 0.0f, 3.0f, 0.0f, 12.0f, 0.0f, 4.0f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 4, 4}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_all_tensors_as_inputs_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 4, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({13.0f, 0.0f, 5.0f, 0.0f, 14.0f, 0.0f, 6.0f, 0.0f, 0.0f, 11.0f, 0.0f, 3.0f, 0.0f, 12.0f, 0.0f, 4.0f}), |
| .dimensions = {1, 4, 2, 2}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_valid_padding_nchw_all_tensors_as_inputs_all_inputs_as_internal_2() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 4, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {4}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .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>({1}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .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>({2}), |
| .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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .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>({13.0f, 0.0f, 5.0f, 0.0f, 14.0f, 0.0f, 6.0f, 0.0f, 0.0f, 11.0f, 0.0f, 3.0f, 0.0f, 12.0f, 0.0f, 4.0f}), |
| .dimensions = {1, 4, 2, 2}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 2, 4, 4}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f, 13.0f, 14.0f, 15.0f, 16.0f}), |
| .dimensions = {1, 2, 2, 4}, |
| .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>({0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {4}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 6, 6, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .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<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>({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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 3, 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, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 6, 6, 1}, |
| .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, 4.0f}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .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<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>({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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 3, 3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 6, 6, 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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 6, 6, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 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::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_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>({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<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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 3, 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, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 6, 6, 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, 2, 2, 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>({1}), |
| .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<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>({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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 3, 3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 6, 6, 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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 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>({0.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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_relaxed() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 6, 6, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .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<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>({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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 3, 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, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_relaxed_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 6, 6, 1}, |
| .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, 4.0f}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .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<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>({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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 3, 3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 6, 6, 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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_relaxed_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 6, 6, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 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::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_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>({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<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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 3, 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, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_relaxed_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 6, 6, 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, 2, 2, 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>({1}), |
| .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<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>({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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 3, 3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 6, 6, 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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 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>({0.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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_quant8() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}), |
| .dimensions = {1, 6, 6, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({8, 16, 24, 32}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0625f, |
| .type = TestOperandType::TENSOR_INT32, |
| .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>({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<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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({32, 0, 24, 0, 0, 0, 16, 0, 8}), |
| .dimensions = {1, 3, 3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_quant8_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 6, 6, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({8, 16, 24, 32}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0625f, |
| .type = TestOperandType::TENSOR_INT32, |
| .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>({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<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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({32, 0, 24, 0, 0, 0, 16, 0, 8}), |
| .dimensions = {1, 3, 3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}), |
| .dimensions = {1, 6, 6, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_quant8_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}), |
| .dimensions = {1, 6, 6, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({8, 16, 24, 32}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0625f, |
| .type = TestOperandType::TENSOR_INT32, |
| .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>({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<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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({32, 0, 24, 0, 0, 0, 16, 0, 8}), |
| .dimensions = {1, 3, 3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_quant8_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {2, 12, 15}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 6, 6, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0625f, |
| .type = TestOperandType::TENSOR_INT32, |
| .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>({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<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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({32, 0, 24, 0, 0, 0, 16, 0, 8}), |
| .dimensions = {1, 3, 3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}), |
| .dimensions = {1, 6, 6, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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>({8, 16, 24, 32}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_float16() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 6, 6, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .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<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>({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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 3, 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, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_float16_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 6, 6, 1}, |
| .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, 4.0f}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .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<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>({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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 3, 3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 6, 6, 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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_float16_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 6, 6, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 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::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_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>({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<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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 3, 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, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nhwc_float16_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 6, 6, 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, 2, 2, 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>({1}), |
| .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<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>({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<bool8>({false}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 3, 3, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 6, 6, 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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 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>({0.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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .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<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>({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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 1, 3, 3}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 1, 6, 6}, |
| .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, 4.0f}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .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<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>({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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 1, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 1, 6, 6}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 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::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_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>({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<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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 1, 3, 3}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 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>({1}), |
| .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<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>({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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 1, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 1, 6, 6}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 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>({0.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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_relaxed() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .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<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>({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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 1, 3, 3}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_relaxed_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 1, 6, 6}, |
| .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, 4.0f}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .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<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>({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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 1, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 1, 6, 6}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_relaxed_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 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::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_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>({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<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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 1, 3, 3}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_relaxed_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = true, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({}), |
| .dimensions = {1, 2, 2, 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>({1}), |
| .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<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>({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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 1, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<float>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 1, 6, 6}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 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>({0.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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_quant8() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({8, 16, 24, 32}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0625f, |
| .type = TestOperandType::TENSOR_INT32, |
| .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>({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<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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({32, 0, 24, 0, 0, 0, 16, 0, 8}), |
| .dimensions = {1, 1, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_quant8_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({8, 16, 24, 32}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0625f, |
| .type = TestOperandType::TENSOR_INT32, |
| .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>({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<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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({32, 0, 24, 0, 0, 0, 16, 0, 8}), |
| .dimensions = {1, 1, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_quant8_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({8, 16, 24, 32}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0625f, |
| .type = TestOperandType::TENSOR_INT32, |
| .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>({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<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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({32, 0, 24, 0, 0, 0, 16, 0, 8}), |
| .dimensions = {1, 1, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }}, |
| .operations = {{ |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_quant8_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {2, 12, 15}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0625f, |
| .type = TestOperandType::TENSOR_INT32, |
| .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>({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<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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({32, 0, 24, 0, 0, 0, 16, 0, 8}), |
| .dimensions = {1, 1, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.5f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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>({8, 16, 24, 32}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<uint8_t>({0}), |
| .dimensions = {1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.125f, |
| .type = TestOperandType::TENSOR_QUANT8_ASYMM, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_float16() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .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<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>({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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 1, 3, 3}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_float16_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 1, 6, 6}, |
| .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, 4.0f}), |
| .dimensions = {1, 2, 2, 1}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .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>({1}), |
| .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<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>({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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 1, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 1, 6, 6}, |
| .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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_float16_all_tensors_as_inputs() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {0, 1, 2}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 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::MODEL_INPUT, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_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>({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<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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 1, 3, 3}, |
| .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, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |
| namespace generated_tests::depthwise_conv2d_dilation { |
| |
| const TestModel& get_test_model_same_padding_stride_2_nchw_float16_all_tensors_as_inputs_all_inputs_as_internal() { |
| static TestModel model = { |
| .expectedMultinomialDistributionTolerance = 0, |
| .inputIndexes = {12, 15, 18}, |
| .isRelaxed = false, |
| .operands = {{ |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 1, 6, 6}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({}), |
| .dimensions = {1, 2, 2, 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>({1}), |
| .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<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>({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<bool8>({true}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::BOOL, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<int32_t>({3}), |
| .dimensions = {}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::CONSTANT_COPY, |
| .numberOfConsumers = 1, |
| .scale = 0.0f, |
| .type = TestOperandType::INT32, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({4.0f, 0.0f, 3.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 1.0f}), |
| .dimensions = {1, 1, 3, 3}, |
| .isIgnored = false, |
| .lifetime = TestOperandLifeTime::MODEL_OUTPUT, |
| .numberOfConsumers = 0, |
| .scale = 0.0f, |
| .type = TestOperandType::TENSOR_FLOAT16, |
| .zeroPoint = 0 |
| }, { |
| .channelQuant = {}, |
| .data = TestBuffer::createFromVector<_Float16>({0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}), |
| .dimensions = {1, 1, 6, 6}, |
| .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>({1.0f, 2.0f, 3.0f, 4.0f}), |
| .dimensions = {1, 2, 2, 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>({0.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 = {12, 13, 14}, |
| .outputs = {0}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {15, 16, 17}, |
| .outputs = {1}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {18, 19, 20}, |
| .outputs = {2}, |
| .type = TestOperationType::ADD |
| }, { |
| .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, |
| .outputs = {11}, |
| .type = TestOperationType::DEPTHWISE_CONV_2D |
| }}, |
| .outputIndexes = {11} |
| }; |
| return model; |
| } |
| |
| } // namespace generated_tests::depthwise_conv2d_dilation |
| |