Ejemplo n.º 1
0
Archivo: ethosu.py Proyecto: a1nc/tvm
def abs_pattern() -> tvm.relay.dataflow_pattern.DFPattern:
    """Create pattern for abs"""
    pattern = is_op("qnn.dequantize")(wildcard(), is_constant(), is_constant())
    pattern = is_op("abs")(pattern)
    pattern = is_op("qnn.quantize")(pattern, is_constant(), is_constant())
    return pattern
Ejemplo n.º 2
0
Archivo: ethosu.py Proyecto: a1nc/tvm
def tanh_pattern():
    """Create pattern for tanh"""
    dequant = is_op("qnn.dequantize")(wildcard(), is_constant(), is_constant())
    tanh = is_op("tanh")(dequant)
    quant = is_op("qnn.quantize")(tanh, is_constant(), is_constant())
    return quant
Ejemplo n.º 3
0
Archivo: ethosu.py Proyecto: a1nc/tvm
def reshape_pattern():
    """Create pattern for reshape"""
    pattern = is_op("reshape")(wildcard())
    return pattern
Ejemplo n.º 4
0
Archivo: ethosu.py Proyecto: a1nc/tvm
def strided_slice_pattern():
    """Create pattern for strided_slice"""
    pattern = is_op("strided_slice")(wildcard())
    return pattern
Ejemplo n.º 5
0
 def __init__(self):
     super().__init__(require_type=True, rewrite_once=True)
     self.reshape = is_op("reshape")(wildcard())
     self.strided_slice = is_op("strided_slice")(wildcard())
     self.pattern = self.reshape | self.strided_slice
Ejemplo n.º 6
0
def binary_op_pattern_with_const(op):
    """Matches binary operation with rhs arg a constant"""
    return is_op(op)(wildcard(), is_constant())
Ejemplo n.º 7
0
 def pattern_B():
     x = wildcard()
     y = wildcard()
     out = is_op('add')(x, y)
     out = is_op('abs')(out)
     return out
Ejemplo n.º 8
0
 def __init__(self):
     super().__init__(require_type=True)
     self.pattern = (wildcard().has_attr({
         "Composite":
         ethosu_patterns.QnnDepthwiseConv2DParams.composite_name
     }))(wildcard())
Ejemplo n.º 9
0
def proj_five_op_pattern_with_const(op: relay.expr.Expr) -> relay.dataflow_pattern.DFPattern:
    return is_tuple_get_item(
        is_op(op)(wildcard(), is_constant(), is_constant(), is_constant(), is_constant()), 0
    )
Ejemplo n.º 10
0
 def __init__(self):
     super().__init__(require_type=True)
     self.pattern = (wildcard().has_attr(
         {"Composite":
          ethosu_patterns.FullyConnectedParams.composite_name}))(wildcard())
Ejemplo n.º 11
0
def binary_op_pattern_with_const(op: relay.expr.Expr) -> relay.dataflow_pattern.DFPattern:
    """Matches binary operation with rhs arg a constant"""
    return is_op(op)(wildcard(), is_constant())
Ejemplo n.º 12
0
def binary_op_pattern(op: relay.expr.Expr) -> relay.dataflow_pattern.DFPattern:
    """Matches binary operation"""
    return is_op(op)(wildcard(), wildcard())
Ejemplo n.º 13
0
def _get_breakpoint_patterns() -> List[dfp.DFPattern]:
    x = dfp.wildcard()
    shortcut = dfp.wildcard()
    x = dfp.is_op('add')(x, shortcut)
    x = dfp.is_op('nn.relu')(x)
    return [x]
Ejemplo n.º 14
0
Archivo: ethosu.py Proyecto: a1nc/tvm
def sigmoid_pattern():
    """Create pattern for sigmoid"""
    dequant = is_op("qnn.dequantize")(wildcard(), is_constant(), is_constant())
    sigmoid = is_op("sigmoid")(dequant)
    quant = is_op("qnn.quantize")(sigmoid, is_constant(), is_constant())
    return quant
Ejemplo n.º 15
0
 def pattern_C():
     x = wildcard()
     out = is_op('abs')(x)
     out = is_op('nn.relu')(out)
     return out
Ejemplo n.º 16
0
 def __init__(self):
     super().__init__(require_type=True)
     self.pattern = (wildcard().has_attr(
         {"Composite": "ethos-u.qnn_conv2d"}))(wildcard())
Ejemplo n.º 17
0
 def get_pattern():
     conv = make_conv_bias_relu_pattern()
     clip = is_op('clip')(conv, wildcard(), wildcard())
     return is_op('multiply')(conv, clip)
Ejemplo n.º 18
0
 def __init__(self):
     super().__init__(require_type=True)
     self.split_in = wildcard()
     self.pattern = is_op("split")(self.split_in)
Ejemplo n.º 19
0
Archivo: ethosu.py Proyecto: a1nc/tvm
def split_pattern():
    "Create the pattern for split"
    split = is_op("split")(wildcard())
    return split
Ejemplo n.º 20
0
 def __init__(self):
     super().__init__(require_type=True, rewrite_once=True)
     self.pattern = (wildcard().has_attr(
         {"Composite":
          ethosu_patterns.SplitParams.composite_name}))(wildcard())
Ejemplo n.º 21
0
def binary_op_pattern(op):
    """Matches binary operation"""
    return is_op(op)(wildcard(), wildcard())