aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Kunze <eric.kunze@arm.com>2022-06-01 17:26:48 -0700
committerEric Kunze <eric.kunze@arm.com>2022-06-13 15:54:03 -0700
commit7ffa1ff137b573e775892836821976e190f28687 (patch)
tree7d39117a9ae9caf13f00b199de87ffe05576552b
parent9a293aa4be98947c5d6fdb85798c6181e09b8b50 (diff)
downloadserialization_lib-7ffa1ff137b573e775892836821976e190f28687.tar.gz
Remove dilation from transpose_conv2d
The specification does not have dilation for transpose_conv2d. Removed dilation from the attributes for transpose. Rename outpad to out_pad for transpose conv2d to align with specification Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: Ifb0fb7121a6bf33601420366ce86f2f0b56353de
-rw-r--r--include/attribute.def5
-rw-r--r--include/tosa_generated.h40
-rw-r--r--python/serializer/tosa_serializer.py3
-rw-r--r--python/tosa/TransposeConvAttribute.py53
-rw-r--r--schema/tosa.fbs3
5 files changed, 29 insertions, 75 deletions
diff --git a/include/attribute.def b/include/attribute.def
index 38f6d29..8ac5d8d 100644
--- a/include/attribute.def
+++ b/include/attribute.def
@@ -36,10 +36,9 @@ DEF_ATTRIBUTE(Conv, 3,
int32_t, V, stride,
int32_t, V, dilation)
-DEF_ATTRIBUTE(TransposeConv, 4,
- int32_t, V, outpad,
+DEF_ATTRIBUTE(TransposeConv, 3,
+ int32_t, V, out_pad,
int32_t, V, stride,
- int32_t, V, dilation,
int32_t, V, output_shape)
DEF_ATTRIBUTE(Pad, 3,
diff --git a/include/tosa_generated.h b/include/tosa_generated.h
index 799a3e7..58fe4a7 100644
--- a/include/tosa_generated.h
+++ b/include/tosa_generated.h
@@ -782,31 +782,25 @@ inline flatbuffers::Offset<ConvAttribute> CreateConvAttributeDirect(
struct TransposeConvAttribute FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef TransposeConvAttributeBuilder Builder;
enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
- VT_OUTPAD = 4,
+ VT_OUT_PAD = 4,
VT_STRIDE = 6,
- VT_DILATION = 8,
- VT_OUTPUT_SHAPE = 10
+ VT_OUTPUT_SHAPE = 8
};
- const flatbuffers::Vector<int32_t> *outpad() const {
- return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_OUTPAD);
+ const flatbuffers::Vector<int32_t> *out_pad() const {
+ return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_OUT_PAD);
}
const flatbuffers::Vector<int32_t> *stride() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_STRIDE);
}
- const flatbuffers::Vector<int32_t> *dilation() const {
- return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_DILATION);
- }
const flatbuffers::Vector<int32_t> *output_shape() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_OUTPUT_SHAPE);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
- VerifyOffset(verifier, VT_OUTPAD) &&
- verifier.VerifyVector(outpad()) &&
+ VerifyOffset(verifier, VT_OUT_PAD) &&
+ verifier.VerifyVector(out_pad()) &&
VerifyOffset(verifier, VT_STRIDE) &&
verifier.VerifyVector(stride()) &&
- VerifyOffset(verifier, VT_DILATION) &&
- verifier.VerifyVector(dilation()) &&
VerifyOffset(verifier, VT_OUTPUT_SHAPE) &&
verifier.VerifyVector(output_shape()) &&
verifier.EndTable();
@@ -817,15 +811,12 @@ struct TransposeConvAttributeBuilder {
typedef TransposeConvAttribute Table;
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
- void add_outpad(flatbuffers::Offset<flatbuffers::Vector<int32_t>> outpad) {
- fbb_.AddOffset(TransposeConvAttribute::VT_OUTPAD, outpad);
+ void add_out_pad(flatbuffers::Offset<flatbuffers::Vector<int32_t>> out_pad) {
+ fbb_.AddOffset(TransposeConvAttribute::VT_OUT_PAD, out_pad);
}
void add_stride(flatbuffers::Offset<flatbuffers::Vector<int32_t>> stride) {
fbb_.AddOffset(TransposeConvAttribute::VT_STRIDE, stride);
}
- void add_dilation(flatbuffers::Offset<flatbuffers::Vector<int32_t>> dilation) {
- fbb_.AddOffset(TransposeConvAttribute::VT_DILATION, dilation);
- }
void add_output_shape(flatbuffers::Offset<flatbuffers::Vector<int32_t>> output_shape) {
fbb_.AddOffset(TransposeConvAttribute::VT_OUTPUT_SHAPE, output_shape);
}
@@ -843,33 +834,28 @@ struct TransposeConvAttributeBuilder {
inline flatbuffers::Offset<TransposeConvAttribute> CreateTransposeConvAttribute(
flatbuffers::FlatBufferBuilder &_fbb,
- flatbuffers::Offset<flatbuffers::Vector<int32_t>> outpad = 0,
+ flatbuffers::Offset<flatbuffers::Vector<int32_t>> out_pad = 0,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> stride = 0,
- flatbuffers::Offset<flatbuffers::Vector<int32_t>> dilation = 0,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> output_shape = 0) {
TransposeConvAttributeBuilder builder_(_fbb);
builder_.add_output_shape(output_shape);
- builder_.add_dilation(dilation);
builder_.add_stride(stride);
- builder_.add_outpad(outpad);
+ builder_.add_out_pad(out_pad);
return builder_.Finish();
}
inline flatbuffers::Offset<TransposeConvAttribute> CreateTransposeConvAttributeDirect(
flatbuffers::FlatBufferBuilder &_fbb,
- const std::vector<int32_t> *outpad = nullptr,
+ const std::vector<int32_t> *out_pad = nullptr,
const std::vector<int32_t> *stride = nullptr,
- const std::vector<int32_t> *dilation = nullptr,
const std::vector<int32_t> *output_shape = nullptr) {
- auto outpad__ = outpad ? _fbb.CreateVector<int32_t>(*outpad) : 0;
+ auto out_pad__ = out_pad ? _fbb.CreateVector<int32_t>(*out_pad) : 0;
auto stride__ = stride ? _fbb.CreateVector<int32_t>(*stride) : 0;
- auto dilation__ = dilation ? _fbb.CreateVector<int32_t>(*dilation) : 0;
auto output_shape__ = output_shape ? _fbb.CreateVector<int32_t>(*output_shape) : 0;
return tosa::CreateTransposeConvAttribute(
_fbb,
- outpad__,
+ out_pad__,
stride__,
- dilation__,
output_shape__);
}
diff --git a/python/serializer/tosa_serializer.py b/python/serializer/tosa_serializer.py
index 929aebd..3582924 100644
--- a/python/serializer/tosa_serializer.py
+++ b/python/serializer/tosa_serializer.py
@@ -161,7 +161,7 @@ class TosaSerializerAttribute(TosaSerializerUnion):
self.intvecs.append((a.AddStride, stride))
self.intvecs.append((a.AddDilation, dilation))
- def TransposeConvAttribute(self, outpad, stride, dilation, output_shape):
+ def TransposeConvAttribute(self, outpad, stride, output_shape):
from tosa import TransposeConvAttribute as a, Attribute
self.utype = Attribute.Attribute().TransposeConvAttribute
@@ -169,7 +169,6 @@ class TosaSerializerAttribute(TosaSerializerUnion):
self.intvecs.append((a.AddOutpad, outpad))
self.intvecs.append((a.AddStride, stride))
- self.intvecs.append((a.AddDilation, dilation))
self.intvecs.append((a.AddOutputShape, output_shape))
def PadAttribute(self, padding, pad_const_int, pad_const_fp):
diff --git a/python/tosa/TransposeConvAttribute.py b/python/tosa/TransposeConvAttribute.py
index f8970b3..2a675a0 100644
--- a/python/tosa/TransposeConvAttribute.py
+++ b/python/tosa/TransposeConvAttribute.py
@@ -25,7 +25,7 @@ class TransposeConvAttribute(object):
self._tab = flatbuffers.table.Table(buf, pos)
# TransposeConvAttribute
- def Outpad(self, j):
+ def OutPad(self, j):
o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4))
if o != 0:
a = self._tab.Vector(o)
@@ -33,21 +33,21 @@ class TransposeConvAttribute(object):
return 0
# TransposeConvAttribute
- def OutpadAsNumpy(self):
+ def OutPadAsNumpy(self):
o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4))
if o != 0:
return self._tab.GetVectorAsNumpy(flatbuffers.number_types.Int32Flags, o)
return 0
# TransposeConvAttribute
- def OutpadLength(self):
+ def OutPadLength(self):
o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4))
if o != 0:
return self._tab.VectorLen(o)
return 0
# TransposeConvAttribute
- def OutpadIsNone(self):
+ def OutPadIsNone(self):
o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4))
return o == 0
@@ -79,35 +79,8 @@ class TransposeConvAttribute(object):
return o == 0
# TransposeConvAttribute
- def Dilation(self, j):
- o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8))
- if o != 0:
- a = self._tab.Vector(o)
- return self._tab.Get(flatbuffers.number_types.Int32Flags, a + flatbuffers.number_types.UOffsetTFlags.py_type(j * 4))
- return 0
-
- # TransposeConvAttribute
- def DilationAsNumpy(self):
- o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8))
- if o != 0:
- return self._tab.GetVectorAsNumpy(flatbuffers.number_types.Int32Flags, o)
- return 0
-
- # TransposeConvAttribute
- def DilationLength(self):
- o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8))
- if o != 0:
- return self._tab.VectorLen(o)
- return 0
-
- # TransposeConvAttribute
- def DilationIsNone(self):
- o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8))
- return o == 0
-
- # TransposeConvAttribute
def OutputShape(self, j):
- o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10))
+ o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8))
if o != 0:
a = self._tab.Vector(o)
return self._tab.Get(flatbuffers.number_types.Int32Flags, a + flatbuffers.number_types.UOffsetTFlags.py_type(j * 4))
@@ -115,30 +88,28 @@ class TransposeConvAttribute(object):
# TransposeConvAttribute
def OutputShapeAsNumpy(self):
- o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10))
+ o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8))
if o != 0:
return self._tab.GetVectorAsNumpy(flatbuffers.number_types.Int32Flags, o)
return 0
# TransposeConvAttribute
def OutputShapeLength(self):
- o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10))
+ o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8))
if o != 0:
return self._tab.VectorLen(o)
return 0
# TransposeConvAttribute
def OutputShapeIsNone(self):
- o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10))
+ o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8))
return o == 0
-def TransposeConvAttributeStart(builder): builder.StartObject(4)
-def TransposeConvAttributeAddOutpad(builder, outpad): builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(outpad), 0)
-def TransposeConvAttributeStartOutpadVector(builder, numElems): return builder.StartVector(4, numElems, 4)
+def TransposeConvAttributeStart(builder): builder.StartObject(3)
+def TransposeConvAttributeAddOutPad(builder, outPad): builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(outPad), 0)
+def TransposeConvAttributeStartOutPadVector(builder, numElems): return builder.StartVector(4, numElems, 4)
def TransposeConvAttributeAddStride(builder, stride): builder.PrependUOffsetTRelativeSlot(1, flatbuffers.number_types.UOffsetTFlags.py_type(stride), 0)
def TransposeConvAttributeStartStrideVector(builder, numElems): return builder.StartVector(4, numElems, 4)
-def TransposeConvAttributeAddDilation(builder, dilation): builder.PrependUOffsetTRelativeSlot(2, flatbuffers.number_types.UOffsetTFlags.py_type(dilation), 0)
-def TransposeConvAttributeStartDilationVector(builder, numElems): return builder.StartVector(4, numElems, 4)
-def TransposeConvAttributeAddOutputShape(builder, outputShape): builder.PrependUOffsetTRelativeSlot(3, flatbuffers.number_types.UOffsetTFlags.py_type(outputShape), 0)
+def TransposeConvAttributeAddOutputShape(builder, outputShape): builder.PrependUOffsetTRelativeSlot(2, flatbuffers.number_types.UOffsetTFlags.py_type(outputShape), 0)
def TransposeConvAttributeStartOutputShapeVector(builder, numElems): return builder.StartVector(4, numElems, 4)
def TransposeConvAttributeEnd(builder): return builder.EndObject()
diff --git a/schema/tosa.fbs b/schema/tosa.fbs
index b0b219f..7830bd2 100644
--- a/schema/tosa.fbs
+++ b/schema/tosa.fbs
@@ -172,9 +172,8 @@ table ConvAttribute {
}
table TransposeConvAttribute {
- outpad: [int32];
+ out_pad: [int32];
stride: [int32];
- dilation: [int32];
output_shape: [int32];
}