HELLO·Android
系统源代码
IT资讯
技术文章
我的收藏
注册
登录
-
我收藏的文章
创建代码块
我的代码块
我的账号
Android 10
|
10.0.0_r6
下载
查看原文件
收藏
根目录
frameworks
ml
nn
runtime
test
generated
vts_models
gather.model.cpp
// clang-format off // Generated file (from: gather.mod.py). Do not edit // Create the model Model createTestModel() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {2, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_relaxed() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {2, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, .relaxComputationFloat32toFloat16 = true, }; } inline bool is_ignored_relaxed(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_quant8() { const std::vector
operands = { { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {2, 2}, .numberOfConsumers = 0, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_quant8(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_int32() { const std::vector
operands = { { .type = OperandType::TENSOR_INT32, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_int32(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_float16() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT16, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_FLOAT16, .dimensions = {2, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_float16(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {0, 0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_dynamic_output_shape(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_relaxed() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {0, 0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, .relaxComputationFloat32toFloat16 = true, }; } inline bool is_ignored_dynamic_output_shape_relaxed(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_quant8() { const std::vector
operands = { { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {0, 0}, .numberOfConsumers = 0, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_dynamic_output_shape_quant8(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_int32() { const std::vector
operands = { { .type = OperandType::TENSOR_INT32, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {0, 0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_dynamic_output_shape_int32(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_float16() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT16, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_FLOAT16, .dimensions = {0, 0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_dynamic_output_shape_float16(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_2() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {1, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_2(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_relaxed_2() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {1, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, .relaxComputationFloat32toFloat16 = true, }; } inline bool is_ignored_relaxed_2(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_quant8_2() { const std::vector
operands = { { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {1, 2}, .numberOfConsumers = 0, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_quant8_2(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_int32_2() { const std::vector
operands = { { .type = OperandType::TENSOR_INT32, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_int32_2(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_float16_2() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT16, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_FLOAT16, .dimensions = {1, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_float16_2(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_2() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {0, 0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_dynamic_output_shape_2(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_relaxed_2() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {0, 0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, .relaxComputationFloat32toFloat16 = true, }; } inline bool is_ignored_dynamic_output_shape_relaxed_2(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_quant8_2() { const std::vector
operands = { { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {0, 0}, .numberOfConsumers = 0, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_dynamic_output_shape_quant8_2(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_int32_2() { const std::vector
operands = { { .type = OperandType::TENSOR_INT32, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {0, 0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_dynamic_output_shape_int32_2(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_float16_2() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT16, .dimensions = {2, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_FLOAT16, .dimensions = {0, 0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_dynamic_output_shape_float16_2(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_3() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_3(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_relaxed_3() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, .relaxComputationFloat32toFloat16 = true, }; } inline bool is_ignored_relaxed_3(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_quant8_3() { const std::vector
operands = { { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {1}, .numberOfConsumers = 0, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_quant8_3(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_int32_3() { const std::vector
operands = { { .type = OperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_int32_3(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_float16_3() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT16, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_FLOAT16, .dimensions = {1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_float16_3(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_3() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_dynamic_output_shape_3(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_relaxed_3() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, .relaxComputationFloat32toFloat16 = true, }; } inline bool is_ignored_dynamic_output_shape_relaxed_3(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_quant8_3() { const std::vector
operands = { { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_dynamic_output_shape_quant8_3(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_int32_3() { const std::vector
operands = { { .type = OperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_dynamic_output_shape_int32_3(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_float16_3() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT16, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 4}, }, { .type = OperandType::TENSOR_FLOAT16, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_dynamic_output_shape_float16_3(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_4() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_4(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_relaxed_4() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, .relaxComputationFloat32toFloat16 = true, }; } inline bool is_ignored_relaxed_4(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_quant8_4() { const std::vector
operands = { { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_QUANT8_ASYMM, .dimensions = {2}, .numberOfConsumers = 0, .scale = 0.5f, .zeroPoint = 127, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_quant8_4(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_int32_4() { const std::vector
operands = { { .type = OperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_int32_4(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_float16_4() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT16, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_FLOAT16, .dimensions = {2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_float16_4(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_4() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector
operations = { { .type = OperationType::GATHER, .inputs = {0, 1, 2}, .outputs = {3}, } }; const std::vector
inputIndexes = {0}; const std::vector
outputIndexes = {3}; std::vector
operandValues = { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; const std::vector
pools = {}; return { .operands = operands, .operations = operations, .inputIndexes = inputIndexes, .outputIndexes = outputIndexes, .operandValues = operandValues, .pools = pools, }; } inline bool is_ignored_dynamic_output_shape_4(int i) { static std::set
ignore = {}; return ignore.find(i) != ignore.end(); } // Create the model Model createTestModel_dynamic_output_shape_relaxed_4() { const std::vector
operands = { { .type = OperandType::TENSOR_FLOAT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_INPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, }, { .type = OperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 0, .length = 4}, }, { .type = OperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::CONSTANT_COPY, .location = {.poolIndex = 0, .offset = 4, .length = 8}, }, { .type = OperandType::TENSOR_FLOAT32, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = OperandLifeTime::MODEL_OUTPUT, .location = {.poolIndex = 0, .offset = 0, .length = 0}, } }; const std::vector