예제 #1
0
파일: ethosu.py 프로젝트: 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
예제 #2
0
파일: ethosu.py 프로젝트: 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
예제 #3
0
파일: ethosu.py 프로젝트: a1nc/tvm
def reshape_pattern():
    """Create pattern for reshape"""
    pattern = is_op("reshape")(wildcard())
    return pattern
예제 #4
0
파일: ethosu.py 프로젝트: a1nc/tvm
def strided_slice_pattern():
    """Create pattern for strided_slice"""
    pattern = is_op("strided_slice")(wildcard())
    return pattern
예제 #5
0
파일: legalize.py 프로젝트: wang910/tvm
 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
예제 #6
0
파일: tensorrt.py 프로젝트: mvermeulen/tvm
def binary_op_pattern_with_const(op):
    """Matches binary operation with rhs arg a constant"""
    return is_op(op)(wildcard(), is_constant())
예제 #7
0
 def pattern_B():
     x = wildcard()
     y = wildcard()
     out = is_op('add')(x, y)
     out = is_op('abs')(out)
     return out
예제 #8
0
파일: legalize.py 프로젝트: wang910/tvm
 def __init__(self):
     super().__init__(require_type=True)
     self.pattern = (wildcard().has_attr({
         "Composite":
         ethosu_patterns.QnnDepthwiseConv2DParams.composite_name
     }))(wildcard())
예제 #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
    )
예제 #10
0
 def __init__(self):
     super().__init__(require_type=True)
     self.pattern = (wildcard().has_attr(
         {"Composite":
          ethosu_patterns.FullyConnectedParams.composite_name}))(wildcard())
예제 #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())
예제 #12
0
def binary_op_pattern(op: relay.expr.Expr) -> relay.dataflow_pattern.DFPattern:
    """Matches binary operation"""
    return is_op(op)(wildcard(), wildcard())
예제 #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]
예제 #14
0
파일: ethosu.py 프로젝트: 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
예제 #15
0
 def pattern_C():
     x = wildcard()
     out = is_op('abs')(x)
     out = is_op('nn.relu')(out)
     return out
예제 #16
0
파일: legalize.py 프로젝트: wang910/tvm
 def __init__(self):
     super().__init__(require_type=True)
     self.pattern = (wildcard().has_attr(
         {"Composite": "ethos-u.qnn_conv2d"}))(wildcard())
예제 #17
0
 def get_pattern():
     conv = make_conv_bias_relu_pattern()
     clip = is_op('clip')(conv, wildcard(), wildcard())
     return is_op('multiply')(conv, clip)
예제 #18
0
파일: legalize.py 프로젝트: wang910/tvm
 def __init__(self):
     super().__init__(require_type=True)
     self.split_in = wildcard()
     self.pattern = is_op("split")(self.split_in)
예제 #19
0
파일: ethosu.py 프로젝트: a1nc/tvm
def split_pattern():
    "Create the pattern for split"
    split = is_op("split")(wildcard())
    return split
예제 #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())
예제 #21
0
파일: tensorrt.py 프로젝트: mvermeulen/tvm
def binary_op_pattern(op):
    """Matches binary operation"""
    return is_op(op)(wildcard(), wildcard())