From 879158a07158f85bc4bb63127ac0226aab744532 Mon Sep 17 00:00:00 2001 From: Balint Cristian Date: Sat, 30 May 2020 04:10:22 +0300 Subject: [PATCH] [ONNX] Skip ADD inside Gemm op when vector is zero (#5697) --- python/tvm/relay/frontend/onnx.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/python/tvm/relay/frontend/onnx.py b/python/tvm/relay/frontend/onnx.py index ea1ac90..be88683 100644 --- a/python/tvm/relay/frontend/onnx.py +++ b/python/tvm/relay/frontend/onnx.py @@ -462,6 +462,10 @@ class Gemm(OnnxOpConverter): inputs[0] = _op.nn.batch_flatten(inputs[0]) out = _op.nn.dense(_expr.const(alpha) * inputs[0], inputs[1], units=channels) + # skip (beta * C) if zero + C_array = params[inputs[2].name_hint].asnumpy() + if (beta == 0.0) or np.array_equal(C_array, np.array([0])): + return out return _op.nn.bias_add(out, _expr.const(beta) * inputs[2]) -- 2.7.4