Deeploy.Targets.Neureka.TileConstraints.NeurekaDepthwiseConstraint.NeurekaDWConv2DTileConstraint
- class Deeploy.Targets.Neureka.TileConstraints.NeurekaDepthwiseConstraint.NeurekaDWConv2DTileConstraint
Bases:
TileConstraintMethods
- __init__()
__init__()addGeometricalConstraint(tilerModel, ...)Override this function to add your geometric constraints.
addPolicyConstraint(tilerModel, parseDict, ctxt)Override this function to add your custom constraints to your node.
constructSymbolicNodeRep(tilerModel, ...)extractBaseAddr(tilingSolution, ...)getBaseAddr(tilingSolution, targetMemLevel, name)sanitizeTilingSchedule(tilingSchedule)serializeTilingSolution(tilingSolution, ...)Compute the required input tiles as a sequence of HyperRectangles
wrapTilingSolution(tilingSolution, ...)- static addGeometricalConstraint(tilerModel: TilerModel, parseDict: Dict, ctxt: NetworkContext) TilerModel
Override this function to add your geometric constraints. Each dimension of the output tensors should be determinable through a linear equation that utilizes the dimensions of the input tensors and the attributes of the nodes.
- static addPolicyConstraint(tilerModel: TilerModel, parseDict: Dict, ctxt: NetworkContext) TilerModel
Override this function to add your custom constraints to your node.
- classmethod serializeTilingSolution(tilingSolution: NodeMemoryConstraint, absoluteOutputCubes: List[AbsoluteHyperRectangle], targetMemLevel: str, ctxt: NetworkContext, operatorRepresentation: Dict[str, str | Any]) Tuple[VariableReplacementScheme, TilingSchedule]
Compute the required input tiles as a sequence of HyperRectangles
- Parameters:
tilingSolution (NodeMemoryConstraint) – The final tiling solution computed in the midend
absoluteOutputCubes (List[AbsoluteHyperRectangle]) – A list of HyperRectangles that represent tiles of the operator’s outputs with absolute offsets
targetMemLevel (str) – The name of the MemoryLevel registered within the Platform’s MemoryHierarchy where tiles should be transferred into (e.g.: L2, L1,… )
ctxt (NetworkContext) – The current NetworkContext
operatorRepresentation (Dict) – The operator’s node representation dictionary
- Returns:
Return a VariableReplacementScheme to express which expressions within the target template might have to be replaced due to tiling. Also return a TilingSchedule to define one input HyperRectangle tuple for each output tile
- Return type:
- Raises:
Exception – Raises an exception unless overridden in the calling class