Deeploy.Targets.Generic.Platform.GenericEngine
- class Deeploy.Targets.Generic.Platform.GenericEngine(name: str, Mapping={'Add': AddLayer(maps=[ AddParser [ _AddTemplate(int8_t, int8_t) -> int32_t _AddTemplate(int8_t, uint8_t) -> int32_t _AddTemplate(int8_t, int16_t) -> int32_t _AddTemplate(int8_t, uint16_t) -> int32_t _AddTemplate(int8_t, int32_t) -> int32_t _AddTemplate(int8_t, uint32_t) -> int32_t _AddTemplate(int8_t, int64_t) -> int32_t _AddTemplate(int8_t, uint64_t) -> int32_t _AddTemplate(uint8_t, int8_t) -> int32_t _AddTemplate(uint8_t, uint8_t) -> int32_t _AddTemplate(uint8_t, int16_t) -> int32_t _AddTemplate(uint8_t, uint16_t) -> int32_t _AddTemplate(uint8_t, int32_t) -> int32_t _AddTemplate(uint8_t, uint32_t) -> int32_t _AddTemplate(uint8_t, int64_t) -> int32_t _AddTemplate(uint8_t, uint64_t) -> int32_t _AddTemplate(int16_t, int8_t) -> int32_t _AddTemplate(int16_t, uint8_t) -> int32_t _AddTemplate(int16_t, int16_t) -> int32_t _AddTemplate(int16_t, uint16_t) -> int32_t _AddTemplate(int16_t, int32_t) -> int32_t _AddTemplate(int16_t, uint32_t) -> int32_t _AddTemplate(int16_t, int64_t) -> int32_t _AddTemplate(int16_t, uint64_t) -> int32_t _AddTemplate(uint16_t, int8_t) -> int32_t _AddTemplate(uint16_t, uint8_t) -> int32_t _AddTemplate(uint16_t, int16_t) -> int32_t _AddTemplate(uint16_t, uint16_t) -> int32_t _AddTemplate(uint16_t, int32_t) -> int32_t _AddTemplate(uint16_t, uint32_t) -> int32_t _AddTemplate(uint16_t, int64_t) -> int32_t _AddTemplate(uint16_t, uint64_t) -> int32_t _AddTemplate(int32_t, int8_t) -> int32_t _AddTemplate(int32_t, uint8_t) -> int32_t _AddTemplate(int32_t, int16_t) -> int32_t _AddTemplate(int32_t, uint16_t) -> int32_t _AddTemplate(int32_t, int32_t) -> int32_t _AddTemplate(int32_t, uint32_t) -> int32_t _AddTemplate(int32_t, int64_t) -> int32_t _AddTemplate(int32_t, uint64_t) -> int32_t _AddTemplate(uint32_t, int8_t) -> int32_t _AddTemplate(uint32_t, uint8_t) -> int32_t _AddTemplate(uint32_t, int16_t) -> int32_t _AddTemplate(uint32_t, uint16_t) -> int32_t _AddTemplate(uint32_t, int32_t) -> int32_t _AddTemplate(uint32_t, uint32_t) -> int32_t _AddTemplate(uint32_t, int64_t) -> int32_t _AddTemplate(uint32_t, uint64_t) -> int32_t _AddTemplate(int64_t, int8_t) -> int32_t _AddTemplate(int64_t, uint8_t) -> int32_t _AddTemplate(int64_t, int16_t) -> int32_t _AddTemplate(int64_t, uint16_t) -> int32_t _AddTemplate(int64_t, int32_t) -> int32_t _AddTemplate(int64_t, uint32_t) -> int32_t _AddTemplate(int64_t, int64_t) -> int32_t _AddTemplate(int64_t, uint64_t) -> int32_t _AddTemplate(uint64_t, int8_t) -> int32_t _AddTemplate(uint64_t, uint8_t) -> int32_t _AddTemplate(uint64_t, int16_t) -> int32_t _AddTemplate(uint64_t, uint16_t) -> int32_t _AddTemplate(uint64_t, int32_t) -> int32_t _AddTemplate(uint64_t, uint32_t) -> int32_t _AddTemplate(uint64_t, int64_t) -> int32_t _AddTemplate(uint64_t, uint64_t) -> int32_t NodeTemplate(float32_t, float32_t) -> float32_t ] ]), 'Concat': ConcatLayer(maps=[ ConcatParser [ _ConcatTemplate(int8_t, int8_t) -> int8_t _ConcatTemplate(uint8_t, uint8_t) -> uint8_t _ConcatTemplate(int16_t, int16_t) -> int16_t _ConcatTemplate(uint16_t, uint16_t) -> uint16_t _ConcatTemplate(int32_t, int32_t) -> int32_t _ConcatTemplate(uint32_t, uint32_t) -> uint32_t _ConcatTemplate(int64_t, int64_t) -> int64_t _ConcatTemplate(uint64_t, uint64_t) -> uint64_t ] ]), 'Conv': ConvLayer(maps=[ GenericConv2DParser [ _Conv2D_Template(int8_t, int8_t) -> int32_t NodeTemplate(float32_t, float32_t, float32_t) -> float32_t ] GenericDWConv2DParser [ _DWConv2D_Template(int8_t, int8_t) -> int32_t NodeTemplate(float32_t, float32_t, float32_t) -> float32_t ] GenericConv1DParser [ _Conv2D_Template(int8_t, int8_t) -> int32_t ] GenericDWConv1DParser [ _DWConv2D_Template(int8_t, int8_t) -> int32_t ] ]), 'DebugPrint': DebugPrintLayer(maps=[ DebugParser [ _DebugPrintTemplate(int8_t) -> int8_t _DebugPrintTemplate(int16_t) -> int16_t _DebugPrintTemplate(int32_t) -> int32_t _DebugPrintTemplate(int64_t) -> int64_t ] ]), 'Dequant': DequantLayer(maps=[ DequantParser [ _DequantTemplate(int8_t) -> float32_t _DequantTemplate(int32_t) -> float32_t ] ]), 'Div': DivLayer(maps=[ DivParser [ NodeTemplate(int32_t, int32_t) -> int32_t NodeTemplate(float32_t, float32_t) -> float32_t ] ]), 'Flatten': ReshapeLayer(maps=[ FlattenParser [ _ReshapeTemplate(int8_t, int32_t) -> int8_t _ReshapeTemplate(uint8_t, int32_t) -> uint8_t _ReshapeTemplate(int16_t, int32_t) -> int16_t _ReshapeTemplate(uint16_t, int32_t) -> uint16_t _ReshapeTemplate(int32_t, int32_t) -> int32_t _ReshapeTemplate(uint32_t, int32_t) -> uint32_t _ReshapeTemplate(int64_t, int32_t) -> int64_t _ReshapeTemplate(uint64_t, int32_t) -> uint64_t _ReshapeTemplate(float32_t, int8_t) -> float32_t _ReshapeTemplate(float32_t, uint8_t) -> float32_t _ReshapeTemplate(float32_t, int16_t) -> float32_t _ReshapeTemplate(float32_t, uint16_t) -> float32_t _ReshapeTemplate(float32_t, int32_t) -> float32_t _ReshapeTemplate(float32_t, uint32_t) -> float32_t _ReshapeTemplate(float32_t, int64_t) -> float32_t _ReshapeTemplate(float32_t, uint64_t) -> float32_t ] ]), 'Gather': GatherLayer(maps=[ GatherParser [ NodeTemplate(int8_t, int32_t) -> int8_t NodeTemplate(int16_t, int32_t) -> int16_t NodeTemplate(int32_t, int32_t) -> int32_t NodeTemplate(int64_t, int32_t) -> int64_t NodeTemplate(float32_t, int8_t) -> float32_t NodeTemplate(float32_t, uint8_t) -> float32_t NodeTemplate(float32_t, int16_t) -> float32_t NodeTemplate(float32_t, uint16_t) -> float32_t NodeTemplate(float32_t, int32_t) -> float32_t NodeTemplate(float32_t, uint32_t) -> float32_t NodeTemplate(float32_t, int64_t) -> float32_t NodeTemplate(float32_t, uint64_t) -> float32_t ] ]), 'Gelu': GELULayer(maps=[ GELUParser [ _iGELUTemplate(int8_t) -> int32_t NodeTemplate(float32_t) -> float32_t ] ]), 'Gemm': GEMMLayer(maps=[ GenericGEMMParser [ _GemmTemplate(int8_t, int8_t, int32_t) -> int32_t NodeTemplate(float32_t, float32_t, float32_t) -> float32_t ] ]), 'ITAMax': ITAMaxLayer(maps=[ ITAMaxParser [ _ITAMaxTemplate(int8_t) -> int8_t ] ]), 'ITAPartialMax': ITAMaxLayer(maps=[ ITAPartialMaxParser [ _ITAPartialMaxTemplate(int8_t) -> int8_t ] ]), 'IntegerDiv': DivLayer(maps=[ IntegerDivParser [ NodeTemplate(int32_t, int32_t) -> int32_t NodeTemplate(float32_t, float32_t) -> float32_t ] ]), 'IntegerMean': ReduceMeanLayer(maps=[ ReduceMeanParser [ _ReduceMeanTemplate(int8_t) -> int8_t _ReduceMeanTemplate(int16_t) -> int16_t _ReduceMeanTemplate(int32_t) -> int32_t _ReduceMeanTemplate(int64_t) -> int64_t _FloatReduceMeanTemplate(bfloat16_t, int8_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int8_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int8_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int8_t) -> float64_t _FloatReduceMeanTemplate(bfloat16_t, int16_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int16_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int16_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int16_t) -> float64_t _FloatReduceMeanTemplate(bfloat16_t, int32_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int32_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int32_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int32_t) -> float64_t _FloatReduceMeanTemplate(bfloat16_t, int64_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int64_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int64_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int64_t) -> float64_t ] ]), 'LayerNormalization': LayerNormLayer(maps=[ LayerNormParser [ _iLayerNormTemplate(int8_t, int32_t, int32_t) -> int8_t NodeTemplate(float32_t, float32_t, float32_t) -> float32_t, float32_t, float32_t ] ]), 'MatMul': GEMMLayer(maps=[ MatMulParser [ _MatMulTemplate(int8_t, int8_t) -> int32_t NodeTemplate(float32_t, float32_t) -> float32_t ] ]), 'MatMulInteger': MatMulLayer(maps=[ MatMulParser [ _MatMulTemplate(int8_t, int8_t) -> int32_t NodeTemplate(float32_t, float32_t) -> float32_t ] ]), 'MaxPool': MaxPoolLayer(maps=[ GenericMaxPool2DParser [ _MaxPool2DTemplate(int8_t) -> int8_t NodeTemplate(float32_t) -> float32_t ] ]), 'Mul': MulLayer(maps=[ MulParser [ _MulTemplate(int8_t, int8_t) -> int32_t _MulTemplate(int8_t, int16_t) -> int32_t _MulTemplate(int8_t, int32_t) -> int32_t _MulTemplate(int8_t, int64_t) -> int32_t _MulTemplate(int16_t, int8_t) -> int32_t _MulTemplate(int16_t, int16_t) -> int32_t _MulTemplate(int16_t, int32_t) -> int32_t _MulTemplate(int16_t, int64_t) -> int32_t _MulTemplate(int32_t, int8_t) -> int32_t _MulTemplate(int32_t, int16_t) -> int32_t _MulTemplate(int32_t, int32_t) -> int32_t _MulTemplate(int32_t, int64_t) -> int32_t _MulTemplate(int64_t, int8_t) -> int32_t _MulTemplate(int64_t, int16_t) -> int32_t _MulTemplate(int64_t, int32_t) -> int32_t _MulTemplate(int64_t, int64_t) -> int32_t NodeTemplate(float32_t, float32_t) -> float32_t ] ]), 'Pad': PadLayer(maps=[ Pad1DParser [ _Pad1DTemplate(int8_t) -> int8_t _Pad1DTemplate(int16_t) -> int16_t _Pad1DTemplate(int32_t) -> int32_t _Pad1DTemplate(int64_t) -> int64_t ] Pad2DParser [ _Pad2DTemplate(int8_t) -> int8_t _Pad2DTemplate(int16_t) -> int16_t _Pad2DTemplate(int32_t) -> int32_t _Pad2DTemplate(int64_t) -> int64_t NodeTemplate(float32_t, float32_t, float32_t) -> float32_t ] ]), 'Quant': QuantLayer(maps=[ QuantParser [ _QuantTemplate(float32_t) -> int8_t ] ]), 'RQIntegerDiv': RQIntegerDivLayer(maps=[ RQIntegerDivParser [ NodeTemplate(int32_t, int32_t, int32_t, int32_t, int32_t) -> int8_t ] ]), 'ReduceMean': ReduceMeanLayer(maps=[ ReduceMeanParser [ _ReduceMeanTemplate(int8_t) -> int8_t _ReduceMeanTemplate(int16_t) -> int16_t _ReduceMeanTemplate(int32_t) -> int32_t _ReduceMeanTemplate(int64_t) -> int64_t _FloatReduceMeanTemplate(bfloat16_t, int8_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int8_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int8_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int8_t) -> float64_t _FloatReduceMeanTemplate(bfloat16_t, int16_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int16_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int16_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int16_t) -> float64_t _FloatReduceMeanTemplate(bfloat16_t, int32_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int32_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int32_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int32_t) -> float64_t _FloatReduceMeanTemplate(bfloat16_t, int64_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int64_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int64_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int64_t) -> float64_t ] ]), 'ReduceSum': ReduceSumLayer(maps=[ ReduceSumParser [ _ReduceSumTemplate(int8_t) -> int32_t _ReduceSumTemplate(int16_t) -> int32_t _ReduceSumTemplate(int32_t) -> int32_t _ReduceSumTemplate(int64_t) -> int32_t ] ]), 'Relu': ReluLayer(maps=[ ReluParser [ NodeTemplate(float32_t) -> float32_t ] ]), 'RequantShift': RequantShiftLayer(maps=[ RequantShiftParser [ _RequantShiftTemplate(int8_t, int32_t, int32_t) -> int8_t _RequantShiftTemplate(int16_t, int32_t, int32_t) -> int8_t _RequantShiftTemplate(int32_t, int32_t, int32_t) -> int8_t _RequantShiftTemplate(int64_t, int32_t, int32_t) -> int8_t ] ]), 'RequantizediGELU': RQSiGELULayer(maps=[ RQSiGELUParser [ _RQSiGELUTemplate(int8_t, int32_t, int32_t, int32_t) -> int8_t ] ]), 'Reshape': ReshapeLayer(maps=[ ReshapeParser [ _ReshapeTemplate(int8_t, int32_t) -> int8_t _ReshapeTemplate(uint8_t, int32_t) -> uint8_t _ReshapeTemplate(int16_t, int32_t) -> int16_t _ReshapeTemplate(uint16_t, int32_t) -> uint16_t _ReshapeTemplate(int32_t, int32_t) -> int32_t _ReshapeTemplate(uint32_t, int32_t) -> uint32_t _ReshapeTemplate(int64_t, int32_t) -> int64_t _ReshapeTemplate(uint64_t, int32_t) -> uint64_t _ReshapeTemplate(float32_t, int8_t) -> float32_t _ReshapeTemplate(float32_t, uint8_t) -> float32_t _ReshapeTemplate(float32_t, int16_t) -> float32_t _ReshapeTemplate(float32_t, uint16_t) -> float32_t _ReshapeTemplate(float32_t, int32_t) -> float32_t _ReshapeTemplate(float32_t, uint32_t) -> float32_t _ReshapeTemplate(float32_t, int64_t) -> float32_t _ReshapeTemplate(float32_t, uint64_t) -> float32_t ] ]), 'Slice': SliceLayer(maps=[ SliceParser [ _SliceTemplate(bfloat16_t, uint8_t, uint8_t, uint8_t, uint8_t) -> bfloat16_t _SliceTemplate(float16_t, uint8_t, uint8_t, uint8_t, uint8_t) -> float16_t _SliceTemplate(float32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> float32_t _SliceTemplate(float64_t, uint8_t, uint8_t, uint8_t, uint8_t) -> float64_t _SliceTemplate(int8_t, uint8_t, uint8_t, uint8_t, uint8_t) -> int8_t _SliceTemplate(uint8_t, uint8_t, uint8_t, uint8_t, uint8_t) -> uint8_t _SliceTemplate(int16_t, uint8_t, uint8_t, uint8_t, uint8_t) -> int16_t _SliceTemplate(uint16_t, uint8_t, uint8_t, uint8_t, uint8_t) -> uint16_t _SliceTemplate(int32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> int32_t _SliceTemplate(uint32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> uint32_t _SliceTemplate(int64_t, uint8_t, uint8_t, uint8_t, uint8_t) -> int64_t _SliceTemplate(uint64_t, uint8_t, uint8_t, uint8_t, uint8_t) -> uint64_t ] ]), 'Softmax': SoftmaxLayer(maps=[ SoftmaxParser [ _iSoftmaxTemplate(int8_t) -> int8_t NodeTemplate(float32_t) -> float32_t ] ]), 'Squeeze': ReshapeLayer(maps=[ UnsqueezeParser [ _ReshapeTemplate(int8_t, int32_t) -> int8_t _ReshapeTemplate(uint8_t, int32_t) -> uint8_t _ReshapeTemplate(int16_t, int32_t) -> int16_t _ReshapeTemplate(uint16_t, int32_t) -> uint16_t _ReshapeTemplate(int32_t, int32_t) -> int32_t _ReshapeTemplate(uint32_t, int32_t) -> uint32_t _ReshapeTemplate(int64_t, int32_t) -> int64_t _ReshapeTemplate(uint64_t, int32_t) -> uint64_t _ReshapeTemplate(float32_t, int8_t) -> float32_t _ReshapeTemplate(float32_t, uint8_t) -> float32_t _ReshapeTemplate(float32_t, int16_t) -> float32_t _ReshapeTemplate(float32_t, uint16_t) -> float32_t _ReshapeTemplate(float32_t, int32_t) -> float32_t _ReshapeTemplate(float32_t, uint32_t) -> float32_t _ReshapeTemplate(float32_t, int64_t) -> float32_t _ReshapeTemplate(float32_t, uint64_t) -> float32_t ] ]), 'Transpose': TransposeLayer(maps=[ TransposeParser [ NodeTemplate(int8_t) -> int8_t NodeTemplate(uint8_t) -> uint8_t NodeTemplate(int16_t) -> int16_t NodeTemplate(uint16_t) -> uint16_t NodeTemplate(int32_t) -> int32_t NodeTemplate(uint32_t) -> uint32_t NodeTemplate(int64_t) -> int64_t NodeTemplate(uint64_t) -> uint64_t NodeTemplate(float32_t) -> float32_t ] ]), 'Unsqueeze': ReshapeLayer(maps=[ UnsqueezeParser [ _ReshapeTemplate(int8_t, int32_t) -> int8_t _ReshapeTemplate(uint8_t, int32_t) -> uint8_t _ReshapeTemplate(int16_t, int32_t) -> int16_t _ReshapeTemplate(uint16_t, int32_t) -> uint16_t _ReshapeTemplate(int32_t, int32_t) -> int32_t _ReshapeTemplate(uint32_t, int32_t) -> uint32_t _ReshapeTemplate(int64_t, int32_t) -> int64_t _ReshapeTemplate(uint64_t, int32_t) -> uint64_t _ReshapeTemplate(float32_t, int8_t) -> float32_t _ReshapeTemplate(float32_t, uint8_t) -> float32_t _ReshapeTemplate(float32_t, int16_t) -> float32_t _ReshapeTemplate(float32_t, uint16_t) -> float32_t _ReshapeTemplate(float32_t, int32_t) -> float32_t _ReshapeTemplate(float32_t, uint32_t) -> float32_t _ReshapeTemplate(float32_t, int64_t) -> float32_t _ReshapeTemplate(float32_t, uint64_t) -> float32_t ] ]), 'iGELU': GELULayer(maps=[ GELUParser [ _iGELUTemplate(int8_t) -> int32_t NodeTemplate(float32_t) -> float32_t ] ]), 'iLayerNorm': LayerNormLayer(maps=[ iLayerNormParser [ _iLayerNormTemplate(int8_t, int32_t, int32_t) -> int8_t NodeTemplate(float32_t, float32_t, float32_t) -> float32_t, float32_t, float32_t ] ]), 'iSoftmax': SoftmaxLayer(maps=[ iSoftmaxParser [ _iSoftmaxTemplate(int8_t) -> int8_t NodeTemplate(float32_t) -> float32_t ] ])}, initCode: str = '', includeList=['DeeployBasicMath.h'])
Bases:
DeploymentEngine
Methods
- __init__(name: str, Mapping={'Add': AddLayer(maps=[ AddParser [ _AddTemplate(int8_t, int8_t) -> int32_t _AddTemplate(int8_t, uint8_t) -> int32_t _AddTemplate(int8_t, int16_t) -> int32_t _AddTemplate(int8_t, uint16_t) -> int32_t _AddTemplate(int8_t, int32_t) -> int32_t _AddTemplate(int8_t, uint32_t) -> int32_t _AddTemplate(int8_t, int64_t) -> int32_t _AddTemplate(int8_t, uint64_t) -> int32_t _AddTemplate(uint8_t, int8_t) -> int32_t _AddTemplate(uint8_t, uint8_t) -> int32_t _AddTemplate(uint8_t, int16_t) -> int32_t _AddTemplate(uint8_t, uint16_t) -> int32_t _AddTemplate(uint8_t, int32_t) -> int32_t _AddTemplate(uint8_t, uint32_t) -> int32_t _AddTemplate(uint8_t, int64_t) -> int32_t _AddTemplate(uint8_t, uint64_t) -> int32_t _AddTemplate(int16_t, int8_t) -> int32_t _AddTemplate(int16_t, uint8_t) -> int32_t _AddTemplate(int16_t, int16_t) -> int32_t _AddTemplate(int16_t, uint16_t) -> int32_t _AddTemplate(int16_t, int32_t) -> int32_t _AddTemplate(int16_t, uint32_t) -> int32_t _AddTemplate(int16_t, int64_t) -> int32_t _AddTemplate(int16_t, uint64_t) -> int32_t _AddTemplate(uint16_t, int8_t) -> int32_t _AddTemplate(uint16_t, uint8_t) -> int32_t _AddTemplate(uint16_t, int16_t) -> int32_t _AddTemplate(uint16_t, uint16_t) -> int32_t _AddTemplate(uint16_t, int32_t) -> int32_t _AddTemplate(uint16_t, uint32_t) -> int32_t _AddTemplate(uint16_t, int64_t) -> int32_t _AddTemplate(uint16_t, uint64_t) -> int32_t _AddTemplate(int32_t, int8_t) -> int32_t _AddTemplate(int32_t, uint8_t) -> int32_t _AddTemplate(int32_t, int16_t) -> int32_t _AddTemplate(int32_t, uint16_t) -> int32_t _AddTemplate(int32_t, int32_t) -> int32_t _AddTemplate(int32_t, uint32_t) -> int32_t _AddTemplate(int32_t, int64_t) -> int32_t _AddTemplate(int32_t, uint64_t) -> int32_t _AddTemplate(uint32_t, int8_t) -> int32_t _AddTemplate(uint32_t, uint8_t) -> int32_t _AddTemplate(uint32_t, int16_t) -> int32_t _AddTemplate(uint32_t, uint16_t) -> int32_t _AddTemplate(uint32_t, int32_t) -> int32_t _AddTemplate(uint32_t, uint32_t) -> int32_t _AddTemplate(uint32_t, int64_t) -> int32_t _AddTemplate(uint32_t, uint64_t) -> int32_t _AddTemplate(int64_t, int8_t) -> int32_t _AddTemplate(int64_t, uint8_t) -> int32_t _AddTemplate(int64_t, int16_t) -> int32_t _AddTemplate(int64_t, uint16_t) -> int32_t _AddTemplate(int64_t, int32_t) -> int32_t _AddTemplate(int64_t, uint32_t) -> int32_t _AddTemplate(int64_t, int64_t) -> int32_t _AddTemplate(int64_t, uint64_t) -> int32_t _AddTemplate(uint64_t, int8_t) -> int32_t _AddTemplate(uint64_t, uint8_t) -> int32_t _AddTemplate(uint64_t, int16_t) -> int32_t _AddTemplate(uint64_t, uint16_t) -> int32_t _AddTemplate(uint64_t, int32_t) -> int32_t _AddTemplate(uint64_t, uint32_t) -> int32_t _AddTemplate(uint64_t, int64_t) -> int32_t _AddTemplate(uint64_t, uint64_t) -> int32_t NodeTemplate(float32_t, float32_t) -> float32_t ] ]), 'Concat': ConcatLayer(maps=[ ConcatParser [ _ConcatTemplate(int8_t, int8_t) -> int8_t _ConcatTemplate(uint8_t, uint8_t) -> uint8_t _ConcatTemplate(int16_t, int16_t) -> int16_t _ConcatTemplate(uint16_t, uint16_t) -> uint16_t _ConcatTemplate(int32_t, int32_t) -> int32_t _ConcatTemplate(uint32_t, uint32_t) -> uint32_t _ConcatTemplate(int64_t, int64_t) -> int64_t _ConcatTemplate(uint64_t, uint64_t) -> uint64_t ] ]), 'Conv': ConvLayer(maps=[ GenericConv2DParser [ _Conv2D_Template(int8_t, int8_t) -> int32_t NodeTemplate(float32_t, float32_t, float32_t) -> float32_t ] GenericDWConv2DParser [ _DWConv2D_Template(int8_t, int8_t) -> int32_t NodeTemplate(float32_t, float32_t, float32_t) -> float32_t ] GenericConv1DParser [ _Conv2D_Template(int8_t, int8_t) -> int32_t ] GenericDWConv1DParser [ _DWConv2D_Template(int8_t, int8_t) -> int32_t ] ]), 'DebugPrint': DebugPrintLayer(maps=[ DebugParser [ _DebugPrintTemplate(int8_t) -> int8_t _DebugPrintTemplate(int16_t) -> int16_t _DebugPrintTemplate(int32_t) -> int32_t _DebugPrintTemplate(int64_t) -> int64_t ] ]), 'Dequant': DequantLayer(maps=[ DequantParser [ _DequantTemplate(int8_t) -> float32_t _DequantTemplate(int32_t) -> float32_t ] ]), 'Div': DivLayer(maps=[ DivParser [ NodeTemplate(int32_t, int32_t) -> int32_t NodeTemplate(float32_t, float32_t) -> float32_t ] ]), 'Flatten': ReshapeLayer(maps=[ FlattenParser [ _ReshapeTemplate(int8_t, int32_t) -> int8_t _ReshapeTemplate(uint8_t, int32_t) -> uint8_t _ReshapeTemplate(int16_t, int32_t) -> int16_t _ReshapeTemplate(uint16_t, int32_t) -> uint16_t _ReshapeTemplate(int32_t, int32_t) -> int32_t _ReshapeTemplate(uint32_t, int32_t) -> uint32_t _ReshapeTemplate(int64_t, int32_t) -> int64_t _ReshapeTemplate(uint64_t, int32_t) -> uint64_t _ReshapeTemplate(float32_t, int8_t) -> float32_t _ReshapeTemplate(float32_t, uint8_t) -> float32_t _ReshapeTemplate(float32_t, int16_t) -> float32_t _ReshapeTemplate(float32_t, uint16_t) -> float32_t _ReshapeTemplate(float32_t, int32_t) -> float32_t _ReshapeTemplate(float32_t, uint32_t) -> float32_t _ReshapeTemplate(float32_t, int64_t) -> float32_t _ReshapeTemplate(float32_t, uint64_t) -> float32_t ] ]), 'Gather': GatherLayer(maps=[ GatherParser [ NodeTemplate(int8_t, int32_t) -> int8_t NodeTemplate(int16_t, int32_t) -> int16_t NodeTemplate(int32_t, int32_t) -> int32_t NodeTemplate(int64_t, int32_t) -> int64_t NodeTemplate(float32_t, int8_t) -> float32_t NodeTemplate(float32_t, uint8_t) -> float32_t NodeTemplate(float32_t, int16_t) -> float32_t NodeTemplate(float32_t, uint16_t) -> float32_t NodeTemplate(float32_t, int32_t) -> float32_t NodeTemplate(float32_t, uint32_t) -> float32_t NodeTemplate(float32_t, int64_t) -> float32_t NodeTemplate(float32_t, uint64_t) -> float32_t ] ]), 'Gelu': GELULayer(maps=[ GELUParser [ _iGELUTemplate(int8_t) -> int32_t NodeTemplate(float32_t) -> float32_t ] ]), 'Gemm': GEMMLayer(maps=[ GenericGEMMParser [ _GemmTemplate(int8_t, int8_t, int32_t) -> int32_t NodeTemplate(float32_t, float32_t, float32_t) -> float32_t ] ]), 'ITAMax': ITAMaxLayer(maps=[ ITAMaxParser [ _ITAMaxTemplate(int8_t) -> int8_t ] ]), 'ITAPartialMax': ITAMaxLayer(maps=[ ITAPartialMaxParser [ _ITAPartialMaxTemplate(int8_t) -> int8_t ] ]), 'IntegerDiv': DivLayer(maps=[ IntegerDivParser [ NodeTemplate(int32_t, int32_t) -> int32_t NodeTemplate(float32_t, float32_t) -> float32_t ] ]), 'IntegerMean': ReduceMeanLayer(maps=[ ReduceMeanParser [ _ReduceMeanTemplate(int8_t) -> int8_t _ReduceMeanTemplate(int16_t) -> int16_t _ReduceMeanTemplate(int32_t) -> int32_t _ReduceMeanTemplate(int64_t) -> int64_t _FloatReduceMeanTemplate(bfloat16_t, int8_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int8_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int8_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int8_t) -> float64_t _FloatReduceMeanTemplate(bfloat16_t, int16_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int16_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int16_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int16_t) -> float64_t _FloatReduceMeanTemplate(bfloat16_t, int32_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int32_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int32_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int32_t) -> float64_t _FloatReduceMeanTemplate(bfloat16_t, int64_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int64_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int64_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int64_t) -> float64_t ] ]), 'LayerNormalization': LayerNormLayer(maps=[ LayerNormParser [ _iLayerNormTemplate(int8_t, int32_t, int32_t) -> int8_t NodeTemplate(float32_t, float32_t, float32_t) -> float32_t, float32_t, float32_t ] ]), 'MatMul': GEMMLayer(maps=[ MatMulParser [ _MatMulTemplate(int8_t, int8_t) -> int32_t NodeTemplate(float32_t, float32_t) -> float32_t ] ]), 'MatMulInteger': MatMulLayer(maps=[ MatMulParser [ _MatMulTemplate(int8_t, int8_t) -> int32_t NodeTemplate(float32_t, float32_t) -> float32_t ] ]), 'MaxPool': MaxPoolLayer(maps=[ GenericMaxPool2DParser [ _MaxPool2DTemplate(int8_t) -> int8_t NodeTemplate(float32_t) -> float32_t ] ]), 'Mul': MulLayer(maps=[ MulParser [ _MulTemplate(int8_t, int8_t) -> int32_t _MulTemplate(int8_t, int16_t) -> int32_t _MulTemplate(int8_t, int32_t) -> int32_t _MulTemplate(int8_t, int64_t) -> int32_t _MulTemplate(int16_t, int8_t) -> int32_t _MulTemplate(int16_t, int16_t) -> int32_t _MulTemplate(int16_t, int32_t) -> int32_t _MulTemplate(int16_t, int64_t) -> int32_t _MulTemplate(int32_t, int8_t) -> int32_t _MulTemplate(int32_t, int16_t) -> int32_t _MulTemplate(int32_t, int32_t) -> int32_t _MulTemplate(int32_t, int64_t) -> int32_t _MulTemplate(int64_t, int8_t) -> int32_t _MulTemplate(int64_t, int16_t) -> int32_t _MulTemplate(int64_t, int32_t) -> int32_t _MulTemplate(int64_t, int64_t) -> int32_t NodeTemplate(float32_t, float32_t) -> float32_t ] ]), 'Pad': PadLayer(maps=[ Pad1DParser [ _Pad1DTemplate(int8_t) -> int8_t _Pad1DTemplate(int16_t) -> int16_t _Pad1DTemplate(int32_t) -> int32_t _Pad1DTemplate(int64_t) -> int64_t ] Pad2DParser [ _Pad2DTemplate(int8_t) -> int8_t _Pad2DTemplate(int16_t) -> int16_t _Pad2DTemplate(int32_t) -> int32_t _Pad2DTemplate(int64_t) -> int64_t NodeTemplate(float32_t, float32_t, float32_t) -> float32_t ] ]), 'Quant': QuantLayer(maps=[ QuantParser [ _QuantTemplate(float32_t) -> int8_t ] ]), 'RQIntegerDiv': RQIntegerDivLayer(maps=[ RQIntegerDivParser [ NodeTemplate(int32_t, int32_t, int32_t, int32_t, int32_t) -> int8_t ] ]), 'ReduceMean': ReduceMeanLayer(maps=[ ReduceMeanParser [ _ReduceMeanTemplate(int8_t) -> int8_t _ReduceMeanTemplate(int16_t) -> int16_t _ReduceMeanTemplate(int32_t) -> int32_t _ReduceMeanTemplate(int64_t) -> int64_t _FloatReduceMeanTemplate(bfloat16_t, int8_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int8_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int8_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int8_t) -> float64_t _FloatReduceMeanTemplate(bfloat16_t, int16_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int16_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int16_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int16_t) -> float64_t _FloatReduceMeanTemplate(bfloat16_t, int32_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int32_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int32_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int32_t) -> float64_t _FloatReduceMeanTemplate(bfloat16_t, int64_t) -> bfloat16_t _FloatReduceMeanTemplate(float16_t, int64_t) -> float16_t _FloatReduceMeanTemplate(float32_t, int64_t) -> float32_t _FloatReduceMeanTemplate(float64_t, int64_t) -> float64_t ] ]), 'ReduceSum': ReduceSumLayer(maps=[ ReduceSumParser [ _ReduceSumTemplate(int8_t) -> int32_t _ReduceSumTemplate(int16_t) -> int32_t _ReduceSumTemplate(int32_t) -> int32_t _ReduceSumTemplate(int64_t) -> int32_t ] ]), 'Relu': ReluLayer(maps=[ ReluParser [ NodeTemplate(float32_t) -> float32_t ] ]), 'RequantShift': RequantShiftLayer(maps=[ RequantShiftParser [ _RequantShiftTemplate(int8_t, int32_t, int32_t) -> int8_t _RequantShiftTemplate(int16_t, int32_t, int32_t) -> int8_t _RequantShiftTemplate(int32_t, int32_t, int32_t) -> int8_t _RequantShiftTemplate(int64_t, int32_t, int32_t) -> int8_t ] ]), 'RequantizediGELU': RQSiGELULayer(maps=[ RQSiGELUParser [ _RQSiGELUTemplate(int8_t, int32_t, int32_t, int32_t) -> int8_t ] ]), 'Reshape': ReshapeLayer(maps=[ ReshapeParser [ _ReshapeTemplate(int8_t, int32_t) -> int8_t _ReshapeTemplate(uint8_t, int32_t) -> uint8_t _ReshapeTemplate(int16_t, int32_t) -> int16_t _ReshapeTemplate(uint16_t, int32_t) -> uint16_t _ReshapeTemplate(int32_t, int32_t) -> int32_t _ReshapeTemplate(uint32_t, int32_t) -> uint32_t _ReshapeTemplate(int64_t, int32_t) -> int64_t _ReshapeTemplate(uint64_t, int32_t) -> uint64_t _ReshapeTemplate(float32_t, int8_t) -> float32_t _ReshapeTemplate(float32_t, uint8_t) -> float32_t _ReshapeTemplate(float32_t, int16_t) -> float32_t _ReshapeTemplate(float32_t, uint16_t) -> float32_t _ReshapeTemplate(float32_t, int32_t) -> float32_t _ReshapeTemplate(float32_t, uint32_t) -> float32_t _ReshapeTemplate(float32_t, int64_t) -> float32_t _ReshapeTemplate(float32_t, uint64_t) -> float32_t ] ]), 'Slice': SliceLayer(maps=[ SliceParser [ _SliceTemplate(bfloat16_t, uint8_t, uint8_t, uint8_t, uint8_t) -> bfloat16_t _SliceTemplate(float16_t, uint8_t, uint8_t, uint8_t, uint8_t) -> float16_t _SliceTemplate(float32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> float32_t _SliceTemplate(float64_t, uint8_t, uint8_t, uint8_t, uint8_t) -> float64_t _SliceTemplate(int8_t, uint8_t, uint8_t, uint8_t, uint8_t) -> int8_t _SliceTemplate(uint8_t, uint8_t, uint8_t, uint8_t, uint8_t) -> uint8_t _SliceTemplate(int16_t, uint8_t, uint8_t, uint8_t, uint8_t) -> int16_t _SliceTemplate(uint16_t, uint8_t, uint8_t, uint8_t, uint8_t) -> uint16_t _SliceTemplate(int32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> int32_t _SliceTemplate(uint32_t, uint8_t, uint8_t, uint8_t, uint8_t) -> uint32_t _SliceTemplate(int64_t, uint8_t, uint8_t, uint8_t, uint8_t) -> int64_t _SliceTemplate(uint64_t, uint8_t, uint8_t, uint8_t, uint8_t) -> uint64_t ] ]), 'Softmax': SoftmaxLayer(maps=[ SoftmaxParser [ _iSoftmaxTemplate(int8_t) -> int8_t NodeTemplate(float32_t) -> float32_t ] ]), 'Squeeze': ReshapeLayer(maps=[ UnsqueezeParser [ _ReshapeTemplate(int8_t, int32_t) -> int8_t _ReshapeTemplate(uint8_t, int32_t) -> uint8_t _ReshapeTemplate(int16_t, int32_t) -> int16_t _ReshapeTemplate(uint16_t, int32_t) -> uint16_t _ReshapeTemplate(int32_t, int32_t) -> int32_t _ReshapeTemplate(uint32_t, int32_t) -> uint32_t _ReshapeTemplate(int64_t, int32_t) -> int64_t _ReshapeTemplate(uint64_t, int32_t) -> uint64_t _ReshapeTemplate(float32_t, int8_t) -> float32_t _ReshapeTemplate(float32_t, uint8_t) -> float32_t _ReshapeTemplate(float32_t, int16_t) -> float32_t _ReshapeTemplate(float32_t, uint16_t) -> float32_t _ReshapeTemplate(float32_t, int32_t) -> float32_t _ReshapeTemplate(float32_t, uint32_t) -> float32_t _ReshapeTemplate(float32_t, int64_t) -> float32_t _ReshapeTemplate(float32_t, uint64_t) -> float32_t ] ]), 'Transpose': TransposeLayer(maps=[ TransposeParser [ NodeTemplate(int8_t) -> int8_t NodeTemplate(uint8_t) -> uint8_t NodeTemplate(int16_t) -> int16_t NodeTemplate(uint16_t) -> uint16_t NodeTemplate(int32_t) -> int32_t NodeTemplate(uint32_t) -> uint32_t NodeTemplate(int64_t) -> int64_t NodeTemplate(uint64_t) -> uint64_t NodeTemplate(float32_t) -> float32_t ] ]), 'Unsqueeze': ReshapeLayer(maps=[ UnsqueezeParser [ _ReshapeTemplate(int8_t, int32_t) -> int8_t _ReshapeTemplate(uint8_t, int32_t) -> uint8_t _ReshapeTemplate(int16_t, int32_t) -> int16_t _ReshapeTemplate(uint16_t, int32_t) -> uint16_t _ReshapeTemplate(int32_t, int32_t) -> int32_t _ReshapeTemplate(uint32_t, int32_t) -> uint32_t _ReshapeTemplate(int64_t, int32_t) -> int64_t _ReshapeTemplate(uint64_t, int32_t) -> uint64_t _ReshapeTemplate(float32_t, int8_t) -> float32_t _ReshapeTemplate(float32_t, uint8_t) -> float32_t _ReshapeTemplate(float32_t, int16_t) -> float32_t _ReshapeTemplate(float32_t, uint16_t) -> float32_t _ReshapeTemplate(float32_t, int32_t) -> float32_t _ReshapeTemplate(float32_t, uint32_t) -> float32_t _ReshapeTemplate(float32_t, int64_t) -> float32_t _ReshapeTemplate(float32_t, uint64_t) -> float32_t ] ]), 'iGELU': GELULayer(maps=[ GELUParser [ _iGELUTemplate(int8_t) -> int32_t NodeTemplate(float32_t) -> float32_t ] ]), 'iLayerNorm': LayerNormLayer(maps=[ iLayerNormParser [ _iLayerNormTemplate(int8_t, int32_t, int32_t) -> int8_t NodeTemplate(float32_t, float32_t, float32_t) -> float32_t, float32_t, float32_t ] ]), 'iSoftmax': SoftmaxLayer(maps=[ iSoftmaxParser [ _iSoftmaxTemplate(int8_t) -> int8_t NodeTemplate(float32_t) -> float32_t ] ])}, initCode: str = '', includeList=['DeeployBasicMath.h']) None
Instantiate a new engine
- Parameters:
name (str) – Name of this compute engine; must be unique per deployemnt
Mapping (Dict[str, Union[ONNXLayer, Callable[[gs.Node], Any]]]) – Mapping between operator names and ONNXLayer implementations
initCode (str) – Static initialization code for this engine
includeList (List[str]) – List of header files to be included with #include directives
__init__
(name[, Mapping])Instantiate a new engine
canExecute
(node)Return whether this accelerator can execute an operator
Attributes
Name of this compute engine; must be unique per deployemnt
Mapping between operator names and ONNXLayer implementations
List of header files to be included with #include directives
- canExecute(node: Node) bool
Return whether this accelerator can execute an operator
- Parameters:
node (gs.Node) – Operator to be checked
- Returns:
True if operator can be run on this Engine, False otherwise
- Return type:
bool
- name
Name of this compute engine; must be unique per deployemnt
- Type:
str
- Mapping
Mapping between operator names and ONNXLayer implementations
- includeList
List of header files to be included with #include directives
- Type:
List[str]