From 93a1628bc3dd48d9ba099de503b586a561b4751f Mon Sep 17 00:00:00 2001 From: Kevin Cheng Date: Tue, 31 Aug 2021 16:14:03 -0700 Subject: Rename attribute: Pool2d, Conv2d, TransposeConv2d -> Pool, Conv, TransposeConv Signed-off-by: Kevin Cheng Change-Id: I466dd1dcf5230e8e07df202ba88515e775e04a1e --- reference_model/src/ops/tensor_ops.cc | 10 ++++---- reference_model/src/ops/tensor_ops.h | 10 ++++---- thirdparty/serialization_lib | 2 +- verif/tosa_serializer.py | 44 +++++++++++++++++------------------ verif/tosa_test_gen.py | 17 +++++++------- 5 files changed, 41 insertions(+), 42 deletions(-) diff --git a/reference_model/src/ops/tensor_ops.cc b/reference_model/src/ops/tensor_ops.cc index 045c0a5..a150656 100644 --- a/reference_model/src/ops/tensor_ops.cc +++ b/reference_model/src/ops/tensor_ops.cc @@ -78,7 +78,7 @@ OpAvgPool2d::OpAvgPool2d(SubgraphTraverser* sgt_, setRequiredOperands(1, 1); setRequiredRank(4); - INIT_ATTRIBUTE(Pool2d); + INIT_ATTRIBUTE(Pool); INIT_QINFO(Unary); } @@ -299,7 +299,7 @@ OpConv2d::OpConv2d(SubgraphTraverser* sgt_, setRequiredOperands(3, 1); setRequiredRank(4); - INIT_ATTRIBUTE(Conv2d); + INIT_ATTRIBUTE(Conv); INIT_QINFO(Conv); } @@ -491,7 +491,7 @@ OpDepthwiseConv2d::OpDepthwiseConv2d(SubgraphTraverser* sg setRequiredOperands(3, 1); setRequiredRank(4); - INIT_ATTRIBUTE(Conv2d); + INIT_ATTRIBUTE(Conv); INIT_QINFO(Conv); } @@ -892,7 +892,7 @@ OpMaxPool2d::OpMaxPool2d(SubgraphTraverser* sgt_, setRequiredOperands(1, 1); setRequiredRank(4); - INIT_ATTRIBUTE(Pool2d); + INIT_ATTRIBUTE(Pool); } template @@ -1034,7 +1034,7 @@ OpTransposeConv2d::OpTransposeConv2d(SubgraphTraverser* sgt_, setRequiredOperands(3, 1); setRequiredRank(4); - INIT_ATTRIBUTE(TransposeConv2d); + INIT_ATTRIBUTE(TransposeConv); INIT_QINFO(Conv); } diff --git a/reference_model/src/ops/tensor_ops.h b/reference_model/src/ops/tensor_ops.h index 6ffc27d..eea351d 100644 --- a/reference_model/src/ops/tensor_ops.h +++ b/reference_model/src/ops/tensor_ops.h @@ -68,7 +68,7 @@ public: protected: TosaReference::TensorTemplate* in; TosaReference::TensorTemplate* out; - tosa::TosaPool2dAttribute* attribute; + tosa::TosaPoolAttribute* attribute; tosa::TosaUnaryQuantInfo* qinfo; protected: @@ -104,7 +104,7 @@ protected: TosaReference::TensorTemplate* weight; TosaReference::TensorTemplate* bias; TosaReference::TensorTemplate* output; - tosa::TosaConv2dAttribute* attribute; + tosa::TosaConvAttribute* attribute; tosa::TosaConvQuantInfo* qinfo; }; @@ -136,7 +136,7 @@ protected: TosaReference::TensorTemplate* weight; TosaReference::TensorTemplate* bias; TosaReference::TensorTemplate* output; - tosa::TosaConv2dAttribute* attribute; + tosa::TosaConvAttribute* attribute; tosa::TosaConvQuantInfo* qinfo; }; @@ -219,7 +219,7 @@ public: protected: TosaReference::TensorTemplate* in; TosaReference::TensorTemplate* out; - tosa::TosaPool2dAttribute* attribute; + tosa::TosaPoolAttribute* attribute; }; template @@ -250,7 +250,7 @@ protected: TosaReference::TensorTemplate* weight; TosaReference::TensorTemplate* bias; TosaReference::TensorTemplate* output; - TosaTransposeConv2dAttribute* attribute; + TosaTransposeConvAttribute* attribute; TosaConvQuantInfo* qinfo; }; diff --git a/thirdparty/serialization_lib b/thirdparty/serialization_lib index ab905ec..79a4199 160000 --- a/thirdparty/serialization_lib +++ b/thirdparty/serialization_lib @@ -1 +1 @@ -Subproject commit ab905ec865a9f4889e6818ce1c4bc934cff2070d +Subproject commit 79a4199be5b87eb6220b6688b02f5f6cbebb6131 diff --git a/verif/tosa_serializer.py b/verif/tosa_serializer.py index e9ec027..22ebb52 100644 --- a/verif/tosa_serializer.py +++ b/verif/tosa_serializer.py @@ -135,36 +135,36 @@ class TosaSerializerAttribute(TosaSerializerUnion): def __init__(self): super().__init__() - def Pool2dAttribute(self, kernel, stride, padding): - from tosa import Pool2dAttribute as a, Attribute + def PoolAttribute(self, kernel, stride, padding): + from tosa import PoolAttribute as a, Attribute - self.utype = Attribute.Attribute().Pool2dAttribute + self.utype = Attribute.Attribute().PoolAttribute - self.optFcns = (a.Pool2dAttributeStart, a.Pool2dAttributeEnd) - self.intvecs.append((a.Pool2dAttributeAddPadding, padding)) - self.intvecs.append((a.Pool2dAttributeAddKernel, kernel)) - self.intvecs.append((a.Pool2dAttributeAddStride, stride)) + self.optFcns = (a.PoolAttributeStart, a.PoolAttributeEnd) + self.intvecs.append((a.PoolAttributeAddPadding, padding)) + self.intvecs.append((a.PoolAttributeAddKernel, kernel)) + self.intvecs.append((a.PoolAttributeAddStride, stride)) - def Conv2dAttribute(self, padding, stride, dilation): - from tosa import Conv2dAttribute as a, Attribute + def ConvAttribute(self, padding, stride, dilation): + from tosa import ConvAttribute as a, Attribute - self.utype = Attribute.Attribute().Conv2dAttribute - self.optFcns = (a.Conv2dAttributeStart, a.Conv2dAttributeEnd) + self.utype = Attribute.Attribute().ConvAttribute + self.optFcns = (a.ConvAttributeStart, a.ConvAttributeEnd) - self.intvecs.append((a.Conv2dAttributeAddPadding, padding)) - self.intvecs.append((a.Conv2dAttributeAddStride, stride)) - self.intvecs.append((a.Conv2dAttributeAddDilation, dilation)) + self.intvecs.append((a.ConvAttributeAddPadding, padding)) + self.intvecs.append((a.ConvAttributeAddStride, stride)) + self.intvecs.append((a.ConvAttributeAddDilation, dilation)) - def TransposeConv2DAttribute(self, outpad, stride, dilation, output_shape): - from tosa import TransposeConv2dAttribute as a, Attribute + def TransposeConvAttribute(self, outpad, stride, dilation, output_shape): + from tosa import TransposeConvAttribute as a, Attribute - self.utype = Attribute.Attribute().TransposeConv2dAttribute - self.optFcns = (a.TransposeConv2dAttributeStart, a.TransposeConv2dAttributeEnd) + self.utype = Attribute.Attribute().TransposeConvAttribute + self.optFcns = (a.TransposeConvAttributeStart, a.TransposeConvAttributeEnd) - self.intvecs.append((a.TransposeConv2dAttributeAddOutpad, outpad)) - self.intvecs.append((a.TransposeConv2dAttributeAddStride, stride)) - self.intvecs.append((a.TransposeConv2dAttributeAddDilation, dilation)) - self.intvecs.append((a.TransposeConv2dAttributeAddOutputShape, output_shape)) + self.intvecs.append((a.TransposeConvAttributeAddOutpad, outpad)) + self.intvecs.append((a.TransposeConvAttributeAddStride, stride)) + self.intvecs.append((a.TransposeConvAttributeAddDilation, dilation)) + self.intvecs.append((a.TransposeConvAttributeAddOutputShape, output_shape)) def ReluNAttribute(self, maxint, maxfp): from tosa import ReluNAttribute as a, Attribute diff --git a/verif/tosa_test_gen.py b/verif/tosa_test_gen.py index 3e14c5b..44582ac 100644 --- a/verif/tosa_test_gen.py +++ b/verif/tosa_test_gen.py @@ -381,7 +381,7 @@ class TosaTensorGen: new_shapeList = [shape.copy()] length_on_axis = shape[axis] remaining_length = length_on_axis - for i in range(len(shapeList)-2): + for i in range(len(shapeList) - 2): # Calculate split on axis and remaining value split_shape_val = int(shape[axis] / 2) remaining_length = remaining_length - split_shape_val @@ -396,7 +396,6 @@ class TosaTensorGen: return new_shapeList - class TosaArgGen: """Argument generators create exhaustive or random lists of attributes for operators that take attributes or other parameters. The return value is a list of (descriptive_name, [arglist]) @@ -1339,7 +1338,7 @@ class TosaTestGen: result_tens = OutputShaper.pool2dOp(self.ser, input, kernel, stride, pad) attr = ts.TosaSerializerAttribute() - attr.Pool2dAttribute(kernel, stride, pad) + attr.PoolAttribute(kernel, stride, pad) self.ser.addOperator(op, [input.name], [result_tens.name], attr, qinfo) return result_tens @@ -1351,7 +1350,7 @@ class TosaTestGen: ) attr = ts.TosaSerializerAttribute() - attr.Conv2dAttribute(padding, strides, dilations) + attr.ConvAttribute(padding, strides, dilations) self.ser.addOperator( op, [ifm.name, filter.name, bias.name], [result_tens.name], attr, qinfo @@ -1365,7 +1364,7 @@ class TosaTestGen: result_tens = OutputShaper.transposeConv2DOp(self.ser, ifm, output_shape) attr = ts.TosaSerializerAttribute() - attr.TransposeConv2DAttribute(outpad, stride, dilation, output_shape) + attr.TransposeConvAttribute(outpad, stride, dilation, output_shape) self.ser.addOperator( op, [ifm.name, filter.name, bias.name], [result_tens.name], attr, qinfo @@ -1380,7 +1379,7 @@ class TosaTestGen: ) attr = ts.TosaSerializerAttribute() - attr.Conv2dAttribute(padding, strides, dilations) + attr.ConvAttribute(padding, strides, dilations) self.ser.addOperator( op, [ifm.name, filter.name, bias.name], [result_tens.name], attr, qinfo @@ -1463,7 +1462,7 @@ class TosaTestGen: return result_tens def build_concat(self, op, *a): - assert (type(a[-1]) == int) + assert type(a[-1]) == int # To store variable length list of input tensors we need to store axis along with it axis = a[-1] @@ -1944,12 +1943,12 @@ class TosaTestGen: if isinstance(dtype_or_dtypeList, list): dtypeList = dtype_or_dtypeList - elif op['op'] == Op.CONCAT: + elif op["op"] == Op.CONCAT: dtypeList = [dtype_or_dtypeList] * len(shapeList) else: dtypeList = [dtype_or_dtypeList] * (num_operands) - if op['op'] != Op.CONCAT: + if op["op"] != Op.CONCAT: assert ( len(shapeList) == num_operands ), "shapeList length {} must match number of operands {}".format( -- cgit v1.2.1