Home | History | Annotate | Download | only in models
      1 // clang-format off
      2 // Generated file (from: concat_mixed_quant.mod.py). Do not edit
      3 void CreateModel_quant8(Model *model) {
      4   OperandType type2(Type::INT32, {});
      5   OperandType type3(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.084f, 127);
      6   OperandType type4(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.05f, 0);
      7   OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.089f, 123);
      8   OperandType type6(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.029f, 0);
      9   OperandType type7(Type::TENSOR_QUANT8_ASYMM, {2, 1, 8}, 0.1f, 127);
     10   // Phase 1, operands
     11   auto input0 = model->addOperand(&type3);
     12   auto input1 = model->addOperand(&type4);
     13   auto input2 = model->addOperand(&type5);
     14   auto input3 = model->addOperand(&type6);
     15   auto param = model->addOperand(&type2);
     16   auto output0 = model->addOperand(&type7);
     17   // Phase 2, operations
     18   static int32_t param_init[] = {2};
     19   model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
     20   model->addOperation(ANEURALNETWORKS_CONCATENATION, {input0, input1, input2, input3, param}, {output0});
     21   // Phase 3, inputs and outputs
     22   model->identifyInputsAndOutputs(
     23     {input0, input1, input2, input3},
     24     {output0});
     25   assert(model->isValid());
     26 }
     27 
     28 inline bool is_ignored_quant8(int i) {
     29   static std::set<int> ignore = {};
     30   return ignore.find(i) != ignore.end();
     31 }
     32 
     33 void CreateModel_dynamic_output_shape_quant8(Model *model) {
     34   OperandType type2(Type::INT32, {});
     35   OperandType type3(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.084f, 127);
     36   OperandType type4(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.05f, 0);
     37   OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.089f, 123);
     38   OperandType type6(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.029f, 0);
     39   OperandType type8(Type::TENSOR_QUANT8_ASYMM, {0, 0, 0}, 0.1f, 127);
     40   // Phase 1, operands
     41   auto input0 = model->addOperand(&type3);
     42   auto input1 = model->addOperand(&type4);
     43   auto input2 = model->addOperand(&type5);
     44   auto input3 = model->addOperand(&type6);
     45   auto param = model->addOperand(&type2);
     46   auto output0 = model->addOperand(&type8);
     47   // Phase 2, operations
     48   static int32_t param_init[] = {2};
     49   model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
     50   model->addOperation(ANEURALNETWORKS_CONCATENATION, {input0, input1, input2, input3, param}, {output0});
     51   // Phase 3, inputs and outputs
     52   model->identifyInputsAndOutputs(
     53     {input0, input1, input2, input3},
     54     {output0});
     55   assert(model->isValid());
     56 }
     57 
     58 inline bool is_ignored_dynamic_output_shape_quant8(int i) {
     59   static std::set<int> ignore = {};
     60   return ignore.find(i) != ignore.end();
     61 }
     62 
     63 void CreateModel_quant8_2(Model *model) {
     64   OperandType type2(Type::INT32, {});
     65   OperandType type3(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.084f, 127);
     66   OperandType type4(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.05f, 0);
     67   OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.089f, 123);
     68   OperandType type6(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.029f, 0);
     69   OperandType type9(Type::TENSOR_QUANT8_ASYMM, {2, 1, 8}, 0.0078125f, 127);
     70   // Phase 1, operands
     71   auto input0 = model->addOperand(&type3);
     72   auto input1 = model->addOperand(&type4);
     73   auto input2 = model->addOperand(&type5);
     74   auto input3 = model->addOperand(&type6);
     75   auto param = model->addOperand(&type2);
     76   auto output0 = model->addOperand(&type9);
     77   // Phase 2, operations
     78   static int32_t param_init[] = {2};
     79   model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
     80   model->addOperation(ANEURALNETWORKS_CONCATENATION, {input0, input1, input2, input3, param}, {output0});
     81   // Phase 3, inputs and outputs
     82   model->identifyInputsAndOutputs(
     83     {input0, input1, input2, input3},
     84     {output0});
     85   assert(model->isValid());
     86 }
     87 
     88 inline bool is_ignored_quant8_2(int i) {
     89   static std::set<int> ignore = {};
     90   return ignore.find(i) != ignore.end();
     91 }
     92 
     93 void CreateModel_dynamic_output_shape_quant8_2(Model *model) {
     94   OperandType type10(Type::TENSOR_QUANT8_ASYMM, {0, 0, 0}, 0.0078125f, 127);
     95   OperandType type2(Type::INT32, {});
     96   OperandType type3(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.084f, 127);
     97   OperandType type4(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.05f, 0);
     98   OperandType type5(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.089f, 123);
     99   OperandType type6(Type::TENSOR_QUANT8_ASYMM, {2, 1, 2}, 0.029f, 0);
    100   // Phase 1, operands
    101   auto input0 = model->addOperand(&type3);
    102   auto input1 = model->addOperand(&type4);
    103   auto input2 = model->addOperand(&type5);
    104   auto input3 = model->addOperand(&type6);
    105   auto param = model->addOperand(&type2);
    106   auto output0 = model->addOperand(&type10);
    107   // Phase 2, operations
    108   static int32_t param_init[] = {2};
    109   model->setOperandValue(param, param_init, sizeof(int32_t) * 1);
    110   model->addOperation(ANEURALNETWORKS_CONCATENATION, {input0, input1, input2, input3, param}, {output0});
    111   // Phase 3, inputs and outputs
    112   model->identifyInputsAndOutputs(
    113     {input0, input1, input2, input3},
    114     {output0});
    115   assert(model->isValid());
    116 }
    117 
    118 inline bool is_ignored_dynamic_output_shape_quant8_2(int i) {
    119   static std::set<int> ignore = {};
    120   return ignore.find(i) != ignore.end();
    121 }
    122 
    123