Skip to content

Commit 0110e0e

Browse files
Implemented Opset 13 for Add, Ceil, Erf, Exp, and Floor operators. (#757)
No additional tests were required as in all of these operators, the only change is support for bfloat16 which the corresponding TF operators support. Add: from Opset 7 to 13 only difference is bfloat16 support. TF doc indicated bfloat16 support and I tested to confirm that it works. Ceil: from Opset 6 to 13 only difference is bfloat16 support. TF doc indicated bfloat16 support and I tested to confirm that it works. Erf: from Opset 9 to 13 only difference is bfloat16 support. TF doc indicated bfloat16 support and I tested to confirm that it works. Exp: from Opset 6 to 13 only difference is bfloat16 support. TF doc indicated bfloat16 support and I tested to confirm that it works. Floor: from Opset 6 to 13 only difference is bfloat16 support. TF doc indicated bfloat16 support and I tested to confirm that it works. Co-authored-by: Chin Huang <[email protected]>
1 parent c7c08c0 commit 0110e0e

File tree

7 files changed

+34
-15
lines changed

7 files changed

+34
-15
lines changed

doc/support_status.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# ONNX-Tensorflow Support Status
22
|||
33
|-:|:-|
4-
|ONNX-Tensorflow Version|Master ( commit id: 00882389ef7c551cbd4d783c4a50db2b0f12372c )|
4+
|ONNX-Tensorflow Version|Master ( commit id: 7d8fa7d88fab469253d75e5e11cf9cdcb90104c4 )|
55
|ONNX Version|1.7.0|
66
|Tensorflow Version|v2.3.0|
77

@@ -19,7 +19,7 @@ Notes:
1919
|Abs|**1**|1|1|1|1|**6**|6|6|6|6|6|6|**13**:small_red_triangle:|Abs|
2020
|Acos|-|-|-|-|-|-|**7**|7|7|7|7|7|7|Acos|
2121
|Acosh|-|-|-|-|-|-|-|-|**9**|9|9|9|9|Acosh|
22-
|Add|**1**|1|1|1|1|**6**|**7**|7|7|7|7|7|**13**:small_red_triangle:|Add|
22+
|Add|**1**|1|1|1|1|**6**|**7**|7|7|7|7|7|**13**|Add|
2323
|And|**1**|1|1|1|1|1|**7**|7|7|7|7|7|7|And|
2424
|ArgMax|**1**|1|1|1|1|1|1|1|1|1|**11**|**12**|**13**|ArgMax|
2525
|ArgMin|**1**|1|1|1|1|1|1|1|1|1|**11**|**12**|**13**|ArgMin|
@@ -31,7 +31,7 @@ Notes:
3131
|BatchNormalization|**1**|1|1|1|1|**6**|**7**|7|**9**|9|9|9|9|BatchNormalization|
3232
|BitShift|-|-|-|-|-|-|-|-|-|-|**11**|11|11|BitShift|
3333
|Cast|**1**:small_orange_diamond:|1:small_orange_diamond:|1:small_orange_diamond:|1:small_orange_diamond:|1:small_orange_diamond:|**6**:small_orange_diamond:|6:small_orange_diamond:|6:small_orange_diamond:|**9**:small_orange_diamond:|9:small_orange_diamond:|9:small_orange_diamond:|9:small_orange_diamond:|**13**:small_orange_diamond:|Cast|
34-
|Ceil|**1**|1|1|1|1|**6**|6|6|6|6|6|6|**13**:small_red_triangle:|Ceil|
34+
|Ceil|**1**|1|1|1|1|**6**|6|6|6|6|6|6|**13**|Ceil|
3535
|Celu|-|-|-|-|-|-|-|-|-|-|-|**12**:small_red_triangle:|12:small_red_triangle:|Celu|
3636
|Clip|**1**:small_orange_diamond:|1:small_orange_diamond:|1:small_orange_diamond:|1:small_orange_diamond:|1:small_orange_diamond:|**6**:small_orange_diamond:|6:small_orange_diamond:|6:small_orange_diamond:|6:small_orange_diamond:|6:small_orange_diamond:|**11**:small_orange_diamond:|**12**:small_orange_diamond:|**13**:small_orange_diamond:|Clip|
3737
|Compress|-|-|-|-|-|-|-|-|**9**|9|**11**|11|11|Compress|
@@ -54,12 +54,12 @@ Notes:
5454
|Einsum|-|-|-|-|-|-|-|-|-|-|-|**12**:small_red_triangle:|12:small_red_triangle:|Einsum|
5555
|Elu|**1**|1|1|1|1|**6**|6|6|6|6|6|6|6|Elu|
5656
|Equal|**1**|1|1|1|1|1|**7**|7|7|7|**11**|11|**13**|Equal|
57-
|Erf|-|-|-|-|-|-|-|-|**9**|9|9|9|**13**:small_red_triangle:|Erf|
58-
|Exp|**1**|1|1|1|1|**6**|6|6|6|6|6|6|**13**:small_red_triangle:|Exp|
57+
|Erf|-|-|-|-|-|-|-|-|**9**|9|9|9|**13**|Erf|
58+
|Exp|**1**|1|1|1|1|**6**|6|6|6|6|6|6|**13**|Exp|
5959
|Expand|-|-|-|-|-|-|-|**8**|8|8|8|8|**13**:small_red_triangle:|Expand|
6060
|EyeLike|-|-|-|-|-|-|-|-|**9**|9|9|9|9|EyeLike|
6161
|Flatten|**1**|1|1|1|1|1|1|1|**9**|9|**11**|11|**13**:small_red_triangle:|Flatten|
62-
|Floor|**1**|1|1|1|1|**6**|6|6|6|6|6|6|**13**:small_red_triangle:|Floor|
62+
|Floor|**1**|1|1|1|1|**6**|6|6|6|6|6|6|**13**|Floor|
6363
|GRU|**1**:small_orange_diamond:|1:small_orange_diamond:|**3**:small_orange_diamond:|3:small_orange_diamond:|3:small_orange_diamond:|3:small_orange_diamond:|**7**:small_orange_diamond:|7:small_orange_diamond:|7:small_orange_diamond:|7:small_orange_diamond:|7:small_orange_diamond:|7:small_orange_diamond:|7:small_orange_diamond:|GRU|
6464
|Gather|**1**|1|1|1|1|1|1|1|1|1|**11**|11|**13**:small_red_triangle:|Gather|
6565
|GatherElements|-|-|-|-|-|-|-|-|-|-|**11**|11|**13**:small_red_triangle:|GatherElements|
@@ -73,7 +73,7 @@ Notes:
7373
|HardSigmoid|**1**|1|1|1|1|**6**|6|6|6|6|6|6|6|HardSigmoid|
7474
|Hardmax|**1**|1|1|1|1|1|1|1|1|1|**11**|11|**13**:small_red_triangle:|Hardmax|
7575
|Identity|**1**|1|1|1|1|1|1|1|1|1|1|1|**13**:small_red_triangle:|Identity|
76-
|If|**1**|1|1|1|1|1|1|1|1|1|**11**|11|11|If|
76+
|If|**1**|1|1|1|1|1|1|1|1|1|**11**|11|**13**:small_red_triangle:|If|
7777
|InstanceNormalization|**1**|1|1|1|1|**6**|6|6|6|6|6|6|6|InstanceNormalization|
7878
|IsInf|-|-|-|-|-|-|-|-|-|**10**|10|10|10|IsInf|
7979
|IsNaN|-|-|-|-|-|-|-|-|**9**|9|9|9|**13**:small_red_triangle:|IsNaN|
@@ -84,7 +84,7 @@ Notes:
8484
|LessOrEqual|-|-|-|-|-|-|-|-|-|-|-|**12**:small_red_triangle:|12:small_red_triangle:|LessOrEqual|
8585
|Log|**1**|1|1|1|1|**6**|6|6|6|6|6|6|**13**:small_red_triangle:|Log|
8686
|LogSoftmax|**1**|1|1|1|1|1|1|1|1|1|**11**|11|**13**:small_red_triangle:|LogSoftmax|
87-
|Loop|**1**|1|1|1|1|1|1|1|1|1|**11**|11|11|Loop|
87+
|Loop|**1**|1|1|1|1|1|1|1|1|1|**11**|11|**13**:small_red_triangle:|Loop|
8888
|LpNormalization|**1**|1|1|1|1|1|1|1|1|1|1|1|1|LpNormalization|
8989
|LpPool|**1**|**2**|2|2|2|2|2|2|2|2|**11**|11|11|LpPool|
9090
|MatMul|**1**|1|1|1|1|1|1|1|**9**|9|9|9|**13**:small_red_triangle:|MatMul|
@@ -179,7 +179,7 @@ Notes:
179179
|Where|-|-|-|-|-|-|-|-|**9**|9|9|9|9|Where|
180180
|Xor|**1**|1|1|1|1|1|**7**|7|7|7|7|7|7|Xor|
181181

182-
ONNX-TF Supported Operators / ONNX Operators: 86 / 162
182+
ONNX-TF Supported Operators / ONNX Operators: 89 / 162
183183

184184
Notes:
185185
1. Cast: Cast string to data types other than float32/float64/int32/int64 is not supported in Tensorflow

onnx_tf/handlers/backend/add.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,7 @@ def version_6(cls, node, **kwargs):
2121
@classmethod
2222
def version_7(cls, node, **kwargs):
2323
return [cls.make_tensor_from_onnx_node(node, **kwargs)]
24+
25+
@classmethod
26+
def version_13(cls, node, **kwargs):
27+
return [cls.make_tensor_from_onnx_node(node, **kwargs)]

onnx_tf/handlers/backend/ceil.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,7 @@ def version_1(cls, node, **kwargs):
1717
@classmethod
1818
def version_6(cls, node, **kwargs):
1919
return [cls.make_tensor_from_onnx_node(node, **kwargs)]
20+
21+
@classmethod
22+
def version_13(cls, node, **kwargs):
23+
return [cls.make_tensor_from_onnx_node(node, **kwargs)]

onnx_tf/handlers/backend/erf.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,7 @@ class Erf(BackendHandler):
1212
@classmethod
1313
def version_9(cls, node, **kwargs):
1414
return [cls.make_tensor_from_onnx_node(node, **kwargs)]
15+
16+
@classmethod
17+
def version_13(cls, node, **kwargs):
18+
return [cls.make_tensor_from_onnx_node(node, **kwargs)]

onnx_tf/handlers/backend/exp.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,7 @@ def version_1(cls, node, **kwargs):
1717
@classmethod
1818
def version_6(cls, node, **kwargs):
1919
return [cls.make_tensor_from_onnx_node(node, **kwargs)]
20+
21+
@classmethod
22+
def version_13(cls, node, **kwargs):
23+
return [cls.make_tensor_from_onnx_node(node, **kwargs)]

onnx_tf/handlers/backend/floor.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,7 @@ def version_1(cls, node, **kwargs):
1717
@classmethod
1818
def version_6(cls, node, **kwargs):
1919
return [cls.make_tensor_from_onnx_node(node, **kwargs)]
20+
21+
@classmethod
22+
def version_13(cls, node, **kwargs):
23+
return [cls.make_tensor_from_onnx_node(node, **kwargs)]

onnx_tf/opset_version.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
'Acosh': [9],
55
'Adagrad': [],
66
'Adam': [],
7-
'Add': [1, 6, 7],
7+
'Add': [1, 6, 7, 13],
88
'And': [1, 7],
99
'ArgMax': [1, 11, 12, 13],
1010
'ArgMin': [1, 11, 12, 13],
@@ -20,7 +20,7 @@
2020
'Cast': [1, 6, 9, 13],
2121
'CastMap': [],
2222
'CategoryMapper': [],
23-
'Ceil': [1, 6],
23+
'Ceil': [1, 6, 13],
2424
'Celu': [],
2525
'Clip': [1, 6, 11, 12, 13],
2626
'Compress': [9, 11],
@@ -45,13 +45,13 @@
4545
'Einsum': [],
4646
'Elu': [1, 6],
4747
'Equal': [1, 7, 11, 13],
48-
'Erf': [9],
49-
'Exp': [1, 6],
48+
'Erf': [9, 13],
49+
'Exp': [1, 6, 13],
5050
'Expand': [8],
5151
'EyeLike': [9],
5252
'FeatureVectorizer': [],
5353
'Flatten': [1, 9, 11],
54-
'Floor': [1, 6],
54+
'Floor': [1, 6, 13],
5555
'GRU': [1, 3, 7],
5656
'Gather': [1, 11],
5757
'GatherElements': [11],
@@ -61,7 +61,6 @@
6161
'GlobalLpPool': [1, 2],
6262
'GlobalMaxPool': [1],
6363
'Gradient': [],
64-
'GraphCall': [],
6564
'Greater': [1, 7, 9],
6665
'GreaterOrEqual': [],
6766
'HardSigmoid': [1, 6],

0 commit comments

Comments
 (0)