Deeploy.Targets.MemPool.Platform.MemPoolEngine

class Deeploy.Targets.MemPool.Platform.MemPoolEngine(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 ] ]), 'Conv': ConvLayer(maps=[   GenericConv2DParser [   _Conv2D_Template(int8_t, int8_t) -> int32_t ]   GenericDWConv2DParser [   _DWConv2D_Template(int8_t, int8_t) -> int32_t ]   GenericConv1DParser [   _Conv2D_Template(int8_t, int8_t) -> int32_t ]   GenericDWConv1DParser [   _DWConv2D_Template(int8_t, int8_t) -> int32_t ]   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 ] ]), 'Div': DivLayer(maps=[   IntegerDivParser [   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 ] ]), 'Gemm': GEMMLayer(maps=[   GenericGEMMParser [   _GemmTemplate(int8_t, int8_t, int32_t) -> int32_t ] ]), 'ITAMax': ITAMaxLayer(maps=[   ITAMaxParser [   _ITAMaxTemplate(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 ] ]), 'MHSA': MHSALayer(maps=[   MemPoolITAM4HSAParser [   _MHSATemplate(int8_t, int8_t, int8_t, int8_t, int32_t, int8_t, int32_t, int8_t, int32_t, int8_t, int32_t) -> int8_t ]   MemPoolM2HSAParser [   _MHSATemplate(int8_t, int8_t, int8_t, int8_t, int32_t, int8_t, int32_t, int8_t, int32_t, int8_t, int32_t) -> int8_t ]   MemPoolM1HSAParser [   _1HSATemplate(int8_t, int8_t, int8_t, int8_t, int32_t, int8_t, int32_t, int8_t, int32_t, int8_t, int32_t) -> int8_t ] ]), 'MatMul': MatMulLayer(maps=[   MatMulParser [   _MatMulTemplate(int8_t, int8_t) -> int32_t ] ]), 'MatMulInteger': MatMulLayer(maps=[   MatMulParser [   _MatMulTemplate(int8_t, int8_t) -> int32_t ] ]), 'MaxPool': MaxPoolLayer(maps=[   GenericMaxPool2DParser [   _MaxPool2DTemplate(int8_t) -> int8_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 ] ]), 'RQGemm': RQGEMMLayer(maps=[   RQGEMMParser [   _RQGemmTemplate(int8_t, int8_t, int32_t, int32_t, int32_t) -> int8_t ] ]), 'RQIntegerDiv': RQIntegerDivLayer(maps=[   RQIntegerDivParser [   NodeTemplate(int32_t, int32_t, int32_t, int32_t, int32_t) -> int8_t ] ]), 'RQMatMul': RQMatMulLayer(maps=[   RQMatMulParser [   _RQMatMulTemplate(int8_t, int8_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 ] ]), 'RequantShift': RequantShiftLayer(maps=[   RequantShiftParser [   _RequantShiftTemplate(int8_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(uint8_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(int16_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(uint16_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(int32_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(uint32_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(int64_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(uint64_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 ] ]), '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=['DeeployMath.h', 'runtime.h', 'synchronization.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 ] ]), 'Conv': ConvLayer(maps=[   GenericConv2DParser [   _Conv2D_Template(int8_t, int8_t) -> int32_t ]   GenericDWConv2DParser [   _DWConv2D_Template(int8_t, int8_t) -> int32_t ]   GenericConv1DParser [   _Conv2D_Template(int8_t, int8_t) -> int32_t ]   GenericDWConv1DParser [   _DWConv2D_Template(int8_t, int8_t) -> int32_t ]   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 ] ]), 'Div': DivLayer(maps=[   IntegerDivParser [   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 ] ]), 'Gemm': GEMMLayer(maps=[   GenericGEMMParser [   _GemmTemplate(int8_t, int8_t, int32_t) -> int32_t ] ]), 'ITAMax': ITAMaxLayer(maps=[   ITAMaxParser [   _ITAMaxTemplate(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 ] ]), 'MHSA': MHSALayer(maps=[   MemPoolITAM4HSAParser [   _MHSATemplate(int8_t, int8_t, int8_t, int8_t, int32_t, int8_t, int32_t, int8_t, int32_t, int8_t, int32_t) -> int8_t ]   MemPoolM2HSAParser [   _MHSATemplate(int8_t, int8_t, int8_t, int8_t, int32_t, int8_t, int32_t, int8_t, int32_t, int8_t, int32_t) -> int8_t ]   MemPoolM1HSAParser [   _1HSATemplate(int8_t, int8_t, int8_t, int8_t, int32_t, int8_t, int32_t, int8_t, int32_t, int8_t, int32_t) -> int8_t ] ]), 'MatMul': MatMulLayer(maps=[   MatMulParser [   _MatMulTemplate(int8_t, int8_t) -> int32_t ] ]), 'MatMulInteger': MatMulLayer(maps=[   MatMulParser [   _MatMulTemplate(int8_t, int8_t) -> int32_t ] ]), 'MaxPool': MaxPoolLayer(maps=[   GenericMaxPool2DParser [   _MaxPool2DTemplate(int8_t) -> int8_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 ] ]), 'RQGemm': RQGEMMLayer(maps=[   RQGEMMParser [   _RQGemmTemplate(int8_t, int8_t, int32_t, int32_t, int32_t) -> int8_t ] ]), 'RQIntegerDiv': RQIntegerDivLayer(maps=[   RQIntegerDivParser [   NodeTemplate(int32_t, int32_t, int32_t, int32_t, int32_t) -> int8_t ] ]), 'RQMatMul': RQMatMulLayer(maps=[   RQMatMulParser [   _RQMatMulTemplate(int8_t, int8_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 ] ]), 'RequantShift': RequantShiftLayer(maps=[   RequantShiftParser [   _RequantShiftTemplate(int8_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(uint8_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(int16_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(uint16_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(int32_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(uint32_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(int64_t, int32_t, int32_t) -> int8_t   _RequantShiftTemplate(uint64_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 ] ]), '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=['DeeployMath.h', 'runtime.h', 'synchronization.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

Name of this compute engine; must be unique per deployemnt

Mapping

Mapping between operator names and ONNXLayer implementations

includeList

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]