gen_tf_pb.py 20.9 KB
Newer Older
1
2
3
# This script generates tf pb files for MIGraphX tf operator tests.
# To generate an individual pb file, you can use the following
# command: python -c "import gen_tf_pb; gen_tf_pb.{test_name}_test()"
Khalique's avatar
Khalique committed
4
5
import numpy as np
import tensorflow as tf
6
from tensorflow.core.framework import attr_value_pb2
Khalique's avatar
Khalique committed
7

Khalique's avatar
Khalique committed
8

Khalique's avatar
Khalique committed
9
10
11
12
def tf_test(op_test):
    def run_test():
        g1 = tf.Graph()
        op_test(g1)
Khalique's avatar
Khalique committed
13
14
15
16
17
        tf.io.write_graph(g1,
                          '.',
                          '{}.pb'.format(op_test.__name__),
                          as_text=False)

Khalique's avatar
Khalique committed
18
    return run_test
Khalique's avatar
Khalique committed
19

Khalique's avatar
Khalique committed
20

Khalique's avatar
Khalique committed
21
22
@tf_test
def add_test(g1):
Khalique's avatar
Khalique committed
23
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
24
25
26
27
28
29
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 2, 2, 3),
                                            name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 2, 2, 3),
                                            name='1')
Khalique's avatar
Khalique committed
30
31
        tf.add(g1_input, g2_input, name='add1')

Khalique's avatar
Khalique committed
32

kahmed10's avatar
kahmed10 committed
33
34
35
36
37
38
39
40
41
42
43
44
@tf_test
def addv2_test(g1):
    with g1.as_default():
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 2, 2, 3),
                                            name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 2, 2, 3),
                                            name='1')
        tf.raw_ops.AddV2(x=g1_input, y=g2_input, name='add1')


Khalique's avatar
Khalique committed
45
46
@tf_test
def add_bcast_test(g1):
Khalique's avatar
Khalique committed
47
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
48
49
        g1_input = tf.compat.v1.placeholder(tf.float32, shape=(2, 3), name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32, shape=(2, 1), name='1')
Khalique's avatar
Khalique committed
50
51
        tf.math.add(g1_input, g2_input, name='add_bcast1')

Khalique's avatar
Khalique committed
52

53
54
55
@tf_test
def argmax_test(g1):
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
56
57
58
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(3, 4, 5, 6),
                                            name='0')
59
60
61
62
63
64
        tf.argmax(g1_input, axis=2, name='argmax1')


@tf_test
def argmin_test(g1):
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
65
66
67
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(3, 4, 5, 6),
                                            name='0')
68
69
70
        tf.argmin(g1_input, axis=2, name='argmin1')


Khalique's avatar
Khalique committed
71
72
@tf_test
def assert_less_equal_test(g1):
Khalique's avatar
Khalique committed
73
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
74
75
        g1_input = tf.compat.v1.placeholder(tf.float32, shape=(2, 3), name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32, shape=(2, 3), name='1')
Khalique's avatar
Khalique committed
76
        with tf.control_dependencies(
kahmed10's avatar
kahmed10 committed
77
            [tf.compat.v1.assert_less_equal(g1_input, g2_input)]):
Khalique's avatar
Khalique committed
78
79
            tf.add(g1_input, g2_input, name='add1')

Khalique's avatar
Khalique committed
80

Khalique's avatar
Khalique committed
81
82
@tf_test
def batchmatmul_test(g1):
Khalique's avatar
Khalique committed
83
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
84
85
86
87
88
89
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 2, 8, 4),
                                            name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 2, 4, 8),
                                            name='1')
Khalique's avatar
Khalique committed
90
91
92
93
94
95
        tf.matmul(g1_input,
                  g2_input,
                  transpose_a=True,
                  transpose_b=True,
                  name='batchmatmul1')

Khalique's avatar
Khalique committed
96

Khalique's avatar
Khalique committed
97
98
@tf_test
def batchnorm_test(g1):
Khalique's avatar
Khalique committed
99
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 16, 16, 32),
                                            name='0')
        g1_scale = tf.constant(1.0, dtype=tf.float32, shape=[32], name='1')
        g1_offset = tf.compat.v1.placeholder(tf.float32, shape=(32), name='2')
        g1_mean = tf.compat.v1.placeholder(tf.float32, shape=(32), name='3')
        g1_variance = tf.compat.v1.placeholder(tf.float32,
                                               shape=(32),
                                               name='4')
        tf.compat.v1.nn.fused_batch_norm(x=g1_input,
                                         scale=g1_scale,
                                         offset=g1_offset,
                                         mean=g1_mean,
                                         variance=g1_variance,
                                         epsilon=0.00001,
                                         is_training=False,
                                         name='batchnorm1')


@tf_test
def batchnormv3_test(g1):
    with g1.as_default():
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 16, 16, 32),
                                            name='0')
Khalique's avatar
Khalique committed
125
        g1_scale = tf.constant(1.0, dtype=tf.float32, shape=[32], name='1')
kahmed10's avatar
kahmed10 committed
126
127
128
129
130
131
132
133
134
135
136
137
138
        g1_offset = tf.compat.v1.placeholder(tf.float32, shape=(32), name='2')
        g1_mean = tf.compat.v1.placeholder(tf.float32, shape=(32), name='3')
        g1_variance = tf.compat.v1.placeholder(tf.float32,
                                               shape=(32),
                                               name='4')
        tf.raw_ops.FusedBatchNormV3(x=g1_input,
                                    scale=g1_scale,
                                    offset=g1_offset,
                                    mean=g1_mean,
                                    variance=g1_variance,
                                    epsilon=0.00001,
                                    is_training=False,
                                    name='batchnorm1')
Khalique's avatar
Khalique committed
139

Khalique's avatar
Khalique committed
140

Khalique's avatar
Khalique committed
141
142
@tf_test
def biasadd_test(g1):
Khalique's avatar
Khalique committed
143
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
144
145
146
147
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 1, 1, 500),
                                            name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32, shape=(500), name='1')
Khalique's avatar
Khalique committed
148
149
        tf.nn.bias_add(g1_input, g2_input, name='bias_add1')

Khalique's avatar
Khalique committed
150

kahmed10's avatar
kahmed10 committed
151
152
153
154
155
156
157
158
@tf_test
def biasadd_scalar_test(g1):
    with g1.as_default():
        g1_input = tf.compat.v1.placeholder(tf.float32, shape=(1, 1), name='0')
        g2_const = tf.constant(1.0, tf.float32, shape=(1, ), name='1')
        tf.nn.bias_add(g1_input, g2_const, name='bias_add1')


Khalique's avatar
Khalique committed
159
160
@tf_test
def cast_test(g1):
Khalique's avatar
Khalique committed
161
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
162
163
164
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 3, 16, 16),
                                            name='0')
Khalique's avatar
Khalique committed
165
166
        tf.cast(g1_input, dtype=tf.int32, name='cast1')

Khalique's avatar
Khalique committed
167

Khalique's avatar
Khalique committed
168
169
@tf_test
def concat_test(g1):
Khalique's avatar
Khalique committed
170
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
171
172
173
174
175
176
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(4, 7, 3),
                                            name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(4, 2, 3),
                                            name='1')
Khalique's avatar
Khalique committed
177
178
        tf.concat([g1_input, g2_input], axis=1, name='concat1')

Khalique's avatar
Khalique committed
179

Khalique's avatar
Khalique committed
180
181
@tf_test
def const_test(g1):
Khalique's avatar
Khalique committed
182
    with g1.as_default():
Khalique's avatar
Khalique committed
183
184
        tf.constant(1.0, dtype=tf.float32, name='constant1')

Khalique's avatar
Khalique committed
185

Khalique's avatar
Khalique committed
186
187
@tf_test
def conv_test(g1):
Khalique's avatar
Khalique committed
188
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
189
190
191
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 16, 16, 3),
                                            name='0')
Khalique's avatar
Khalique committed
192
193
194
195
196
197
        g1_weights = tf.constant(value=1.0,
                                 dtype=tf.float32,
                                 shape=(3, 3, 3, 32),
                                 name='1')
        tf.nn.conv2d(g1_input, g1_weights, [1, 1, 1, 1], "SAME", name='conv1')

Khalique's avatar
Khalique committed
198

kahmed10's avatar
kahmed10 committed
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
@tf_test
def conv_nchw_test(g1):
    with g1.as_default():
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 3, 16, 16),
                                            name='0')
        g1_weights = tf.constant(value=1.0,
                                 dtype=tf.float32,
                                 shape=(3, 3, 3, 32),
                                 name='1')
        tf.nn.conv2d(g1_input,
                     g1_weights, [1, 1, 1, 1],
                     "SAME",
                     data_format='NCHW',
                     name='conv1')


Khalique's avatar
Khalique committed
216
217
@tf_test
def depthwiseconv_test(g1):
Khalique's avatar
Khalique committed
218
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
219
220
221
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 16, 16, 3),
                                            name='0')
Khalique's avatar
Khalique committed
222
223
224
225
        g1_weights = tf.constant(value=1.0,
                                 dtype=tf.float32,
                                 shape=(3, 3, 3, 1),
                                 name='1')
kahmed10's avatar
kahmed10 committed
226
227
228
229
        tf.compat.v1.nn.depthwise_conv2d_native(g1_input,
                                                g1_weights, [1, 1, 1, 1],
                                                "SAME",
                                                name='depthwiseconv1')
Khalique's avatar
Khalique committed
230

Khalique's avatar
Khalique committed
231

Khalique's avatar
Khalique committed
232
233
@tf_test
def expanddims_test(g1):
Khalique's avatar
Khalique committed
234
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
235
236
237
238
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(2, 3, 4),
                                            name='0')
        tf.expand_dims(g1_input, axis=0, name='expanddims_neg')
Khalique's avatar
Khalique committed
239

Khalique's avatar
Khalique committed
240

Khalique's avatar
Khalique committed
241
242
@tf_test
def gather_test(g1):
Khalique's avatar
Khalique committed
243
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
244
        g1_input = tf.compat.v1.placeholder(tf.float32, shape=(2, 4), name='0')
Khalique's avatar
Khalique committed
245
246
        tf.gather(g1_input, [1, 1], axis=1, name='gather1')

Khalique's avatar
Khalique committed
247

Khalique's avatar
Khalique committed
248
249
@tf_test
def identity_test(g1):
Khalique's avatar
Khalique committed
250
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
251
252
253
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 3, 16, 16),
                                            name='0')
Khalique's avatar
Khalique committed
254
255
        tf.identity(g1_input, 'identity')

Khalique's avatar
Khalique committed
256

Khalique's avatar
Khalique committed
257
258
@tf_test
def matmul_test(g1):
Khalique's avatar
Khalique committed
259
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
260
261
        g1_input = tf.compat.v1.placeholder(tf.float32, shape=(8, 4), name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32, shape=(4, 8), name='1')
Khalique's avatar
Khalique committed
262
263
264
265
266
267
        tf.matmul(g1_input,
                  g2_input,
                  transpose_a=True,
                  transpose_b=True,
                  name='matmul1')

Khalique's avatar
Khalique committed
268

Khalique's avatar
Khalique committed
269
270
@tf_test
def mean_test(g1):
Khalique's avatar
Khalique committed
271
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
272
273
274
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 3, 16, 16),
                                            name='0')
Khalique's avatar
Khalique committed
275
276
277
278
279
280
        tf.math.reduce_mean(g1_input, axis=(2, 3), keepdims=True, name='mean1')
        tf.math.reduce_mean(g1_input,
                            axis=(2, 3),
                            keepdims=False,
                            name='mean2')

Khalique's avatar
Khalique committed
281

Khalique's avatar
Khalique committed
282
283
@tf_test
def mean_test_nhwc(g1):
Khalique's avatar
Khalique committed
284
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
285
286
287
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 16, 16, 3),
                                            name='0')
Khalique's avatar
Khalique committed
288
289
290
291
292
293
        tf.math.reduce_mean(g1_input, axis=(1, 2), keepdims=True, name='mean1')
        tf.math.reduce_mean(g1_input,
                            axis=(1, 2),
                            keepdims=False,
                            name='mean2')

Khalique's avatar
Khalique committed
294

Khalique's avatar
Khalique committed
295
296
@tf_test
def mul_test(g1):
Khalique's avatar
Khalique committed
297
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
298
299
300
301
302
303
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 1, 1, 16),
                                            name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 1, 1, 16),
                                            name='1')
Khalique's avatar
Khalique committed
304
305
        tf.multiply(g1_input, g2_input, name='mul1')

Khalique's avatar
Khalique committed
306

kahmed10's avatar
kahmed10 committed
307
308
309
310
311
312
@tf_test
def noop_test(g1):
    with g1.as_default():
        tf.raw_ops.NoOp(name='noop1')


kahmed10's avatar
kahmed10 committed
313
314
315
316
317
318
319
@tf_test
def onehot_test(g1):
    with g1.as_default():
        g1_input = tf.constant((1, 1, 1, 1, 1), dtype=tf.int32)
        tf.one_hot(g1_input, 2, name='onehot1')


Khalique's avatar
Khalique committed
320
321
@tf_test
def pack_test(g1):
Khalique's avatar
Khalique committed
322
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
323
324
325
        g1_input = tf.compat.v1.placeholder(tf.float32, shape=(2), name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32, shape=(2), name='1')
        g3_input = tf.compat.v1.placeholder(tf.float32, shape=(2), name='2')
Khalique's avatar
Khalique committed
326
327
        tf.stack([g1_input, g2_input, g3_input], axis=1, name='pack1')

Khalique's avatar
Khalique committed
328

Khalique's avatar
Khalique committed
329
330
@tf_test
def pack_test_nhwc(g1):
Khalique's avatar
Khalique committed
331
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
332
333
334
335
336
337
338
339
340
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 1, 1, 2),
                                            name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 1, 1, 2),
                                            name='1')
        g3_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 1, 1, 2),
                                            name='2')
Khalique's avatar
Khalique committed
341
342
        tf.stack([g1_input, g2_input, g3_input], axis=3, name='pack1')

Khalique's avatar
Khalique committed
343

kahmed10's avatar
kahmed10 committed
344
345
346
347
348
349
350
351
352
@tf_test
def pad_test(g1):
    with g1.as_default():
        g1_input = tf.compat.v1.placeholder(tf.float32, shape=(2, 4), name='0')
        paddings = tf.constant([[1, 1], [2, 2]])

        tf.pad(g1_input, paddings, name='pad1')


Khalique's avatar
Khalique committed
353
354
@tf_test
def pooling_test(g1):
Khalique's avatar
Khalique committed
355
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 16, 16, 3),
                                            name='0')
        tf.compat.v1.nn.avg_pool(value=g1_input,
                                 ksize=(1, 2, 2, 1),
                                 strides=(1, 2, 2, 1),
                                 padding='VALID',
                                 data_format='NHWC',
                                 name='avg_pooling')
        tf.compat.v1.nn.max_pool(value=g1_input,
                                 ksize=(1, 2, 2, 1),
                                 strides=(1, 2, 2, 1),
                                 padding='VALID',
                                 data_format='NHWC',
                                 name='max_pooling')
Khalique's avatar
Khalique committed
371

Khalique's avatar
Khalique committed
372

Khalique's avatar
Khalique committed
373
374
@tf_test
def pow_test(g1):
Khalique's avatar
Khalique committed
375
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
376
377
378
379
380
381
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 2, 2, 3),
                                            name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 2, 2, 3),
                                            name='1')
Khalique's avatar
Khalique committed
382
383
        tf.pow(g1_input, g2_input, name='pow1')

Khalique's avatar
Khalique committed
384

Khalique's avatar
Khalique committed
385
386
@tf_test
def relu_test(g1):
Khalique's avatar
Khalique committed
387
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
388
389
390
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 3, 16, 16),
                                            name='0')
Khalique's avatar
Khalique committed
391
392
        tf.nn.relu(g1_input, 'relu')

Khalique's avatar
Khalique committed
393

Khalique's avatar
Khalique committed
394
395
@tf_test
def relu6_test(g1):
Khalique's avatar
Khalique committed
396
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
397
398
399
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 3, 16, 16),
                                            name='0')
Khalique's avatar
Khalique committed
400
401
        tf.nn.relu6(g1_input, 'relu6')

Khalique's avatar
Khalique committed
402

Khalique's avatar
Khalique committed
403
404
@tf_test
def reshape_test(g1):
Khalique's avatar
Khalique committed
405
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
406
        g1_input = tf.compat.v1.placeholder(tf.float32, shape=(16), name='0')
Khalique's avatar
Khalique committed
407
408
        tf.reshape(g1_input, (1, 1, 1, 16), 'reshape')

Khalique's avatar
Khalique committed
409

Khalique's avatar
Khalique committed
410
411
@tf_test
def rsqrt_test(g1):
Khalique's avatar
Khalique committed
412
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
413
414
415
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 3, 16, 16),
                                            name='0')
Khalique's avatar
Khalique committed
416
417
        tf.math.rsqrt(g1_input, 'rsqrt')

Khalique's avatar
Khalique committed
418

419
420
421
@tf_test
def shape_test(g1):
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
422
423
424
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 3, 16, 16),
                                            name='0')
425
426
427
    g1.create_op(op_type='Shape', inputs=[g1_input])


Khalique's avatar
Khalique committed
428
429
@tf_test
def slice_test(g1):
Khalique's avatar
Khalique committed
430
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
431
432
433
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(5, 10),
                                            name='0')
Khalique's avatar
Khalique committed
434
435
        tf.slice(g1_input, [1, 0], [2, -1], name='slice1')

Khalique's avatar
Khalique committed
436

Khalique's avatar
Khalique committed
437
438
@tf_test
def softmax_test(g1):
Khalique's avatar
Khalique committed
439
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
440
        g1_input = tf.compat.v1.placeholder(tf.float32, shape=(1, 3), name='0')
Khalique's avatar
Khalique committed
441
442
        tf.nn.softmax(g1_input, name='softmax')

Khalique's avatar
Khalique committed
443

kahmed10's avatar
kahmed10 committed
444
445
446
@tf_test
def split_test(g1):
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
447
448
449
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(5, 30),
                                            name='0')
kahmed10's avatar
kahmed10 committed
450
451
452
453
454
455
456
457
        split0, split1, split2 = tf.split(g1_input, 3, 1, name='split')
        tf.concat([split0, split1], axis=1, name='concat1')
        tf.concat([split1, split2], axis=1, name='concat2')


@tf_test
def split_test_one_output(g1):
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
458
459
460
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(5, 30),
                                            name='0')
kahmed10's avatar
kahmed10 committed
461
462
463
464
465
466
        tf.split(g1_input, 1, 1, name='split')


@tf_test
def split_test_vector_as_input(g1):
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
467
468
469
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(5, 30),
                                            name='0')
kahmed10's avatar
kahmed10 committed
470
471
472
473
474
475
476
        split0, split1, split2 = tf.split(g1_input, [4, 15, 11],
                                          1,
                                          name='split')
        tf.concat([split0, split1], axis=1, name='concat1')
        tf.concat([split1, split2], axis=1, name='concat2')


Khalique's avatar
Khalique committed
477
478
@tf_test
def sqdiff_test(g1):
Khalique's avatar
Khalique committed
479
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
480
481
482
483
484
485
486
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 2, 2, 3),
                                            name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 2, 2, 3),
                                            name='1')
        tf.compat.v1.squared_difference(g1_input, g2_input, name='sqdiff')
Khalique's avatar
Khalique committed
487

Khalique's avatar
Khalique committed
488

Khalique's avatar
Khalique committed
489
490
@tf_test
def squeeze_test(g1):
Khalique's avatar
Khalique committed
491
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
492
493
494
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 2, 3, 1),
                                            name='0')
Khalique's avatar
Khalique committed
495
496
        tf.squeeze(g1_input, name='squeeze')

Khalique's avatar
Khalique committed
497

Khalique's avatar
Khalique committed
498
499
@tf_test
def stopgradient_test(g1):
Khalique's avatar
Khalique committed
500
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
501
502
503
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 3, 16, 16),
                                            name='0')
Khalique's avatar
Khalique committed
504
505
        tf.stop_gradient(g1_input, 'stopgradient')

Khalique's avatar
Khalique committed
506

Khalique's avatar
Khalique committed
507
508
@tf_test
def stridedslice_test(g1):
Khalique's avatar
Khalique committed
509
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
510
511
512
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 1, 1, 10),
                                            name='0')
Khalique's avatar
Khalique committed
513
514
515
516
        tf.strided_slice(g1_input, [0, 0, 0, 0], [1, 1, 1, 5], [1, 1, 1, 1],
                         shrink_axis_mask=2,
                         name='stridedslice1')

Khalique's avatar
Khalique committed
517

Khalique's avatar
Khalique committed
518
519
@tf_test
def stridedslice_masks_test(g1):
Khalique's avatar
Khalique committed
520
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
521
522
523
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 3, 3, 10),
                                            name='0')
Khalique's avatar
Khalique committed
524
525
526
527
528
        tf.strided_slice(g1_input, [0, 1, 1, 0], [0, 0, 0, 0], [1, 1, 1, 1],
                         begin_mask=9,
                         end_mask=15,
                         name='stridedslice1')

Khalique's avatar
Khalique committed
529

Khalique's avatar
Khalique committed
530
531
@tf_test
def sub_test(g1):
Khalique's avatar
Khalique committed
532
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
533
534
535
536
537
538
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 2, 2, 3),
                                            name='0')
        g2_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 2, 2, 3),
                                            name='1')
Khalique's avatar
Khalique committed
539
540
        tf.subtract(g1_input, g2_input, name='sub1')

Khalique's avatar
Khalique committed
541

Khalique's avatar
Khalique committed
542
543
@tf_test
def tanh_test(g1):
Khalique's avatar
Khalique committed
544
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
545
546
547
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 3, 16, 16),
                                            name='0')
Khalique's avatar
Khalique committed
548
549
        tf.tanh(g1_input, 'tanh')

Khalique's avatar
Khalique committed
550

Khalique's avatar
Khalique committed
551
552
@tf_test
def transpose_test(g1):
Khalique's avatar
Khalique committed
553
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
554
555
556
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(1, 3, 16, 16),
                                            name='0')
Khalique's avatar
Khalique committed
557
        tf.transpose(g1_input, perm=[0, 2, 3, 1], name='transpose')
558
559
560
561
562


@tf_test
def variable_batch_test(g1):
    with g1.as_default():
kahmed10's avatar
kahmed10 committed
563
564
565
        g1_input = tf.compat.v1.placeholder(tf.float32,
                                            shape=(0, 3, 16, 16),
                                            name='0')
566
        tf.identity(g1_input, name='identity')
kahmed10's avatar
kahmed10 committed
567
568
569
570
571
572
573
574
575
576
577
578
579


if __name__ == '__main__':
    add_test()
    addv2_test()
    add_bcast_test()
    argmax_test()
    argmin_test()
    assert_less_equal_test()
    batchmatmul_test()
    batchnorm_test()
    batchnormv3_test()
    biasadd_test()
kahmed10's avatar
kahmed10 committed
580
    biasadd_scalar_test()
kahmed10's avatar
kahmed10 committed
581
582
583
584
    cast_test()
    concat_test()
    const_test()
    conv_test()
kahmed10's avatar
kahmed10 committed
585
    conv_nchw_test()
kahmed10's avatar
kahmed10 committed
586
587
588
589
590
591
592
593
594
    depthwiseconv_test()
    expanddims_test()
    gather_test()
    identity_test()
    matmul_test()
    mean_test()
    mean_test_nhwc()
    mul_test()
    noop_test()
kahmed10's avatar
kahmed10 committed
595
    onehot_test()
kahmed10's avatar
kahmed10 committed
596
597
    pack_test()
    pack_test_nhwc()
kahmed10's avatar
kahmed10 committed
598
    pad_test()
kahmed10's avatar
kahmed10 committed
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
    pooling_test()
    pow_test()
    relu_test()
    relu6_test()
    reshape_test()
    rsqrt_test()
    shape_test()
    slice_test()
    softmax_test()
    split_test()
    split_test_one_output()
    split_test_vector_as_input()
    sqdiff_test()
    squeeze_test()
    stopgradient_test()
    stridedslice_test()
    stridedslice_masks_test()
    sub_test()
    tanh_test()
    transpose_test()
    variable_batch_test()