code: def test_input_reorder():
      class Block(gluon.HybridBlock):
          def __init__(self, **kwargs):
              super(Block, self).__init__(**kwargs)
  
          def forward(self, x, y, z):
              s = x * 2
              s2 = s + z
              s = mx.np.add(s, y * y)
              return mx.np.dot(s, s2)
  
      for static_alloc in (False, True):
          arg_shapes = [(10, 10), (10, 1), (10, 10)]
          arg_data = [mx.np.random.uniform(size=s) for s in arg_shapes]
  
          arrays = {}
          for use_fusion in ("0", "1"):
              with environment("MXNET_USE_FUSION", use_fusion):
                  arrays[use_fusion] = {}
                  n = Block()
                  n.hybridize(static_alloc=static_alloc)
                  args = [arg.copyto(mx.gpu()) for arg in arg_data]
                  for arg in args:
                      arg.attach_grad()
                  with autograd.record():
                      r = n(*args)
                  arrays[use_fusion]["result"] = r
                  r.backward()
                  for i, arg in enumerate(args):
                      arrays[use_fusion][i] = arg.grad
          for key in ["result"] + list(range(len(arg_data))):
              assert_allclose(
                  arrays["0"][key].asnumpy(), arrays["1"][key].asnumpy()
              )
  
file_path: mxnet/tests/python/gpu/test_fusion.py
imports: import sys
  import os
  import random
  import itertools
  import mxnet
  import numpy
  from mxnet import autograd, gluon
  from mxnet.test_utils import *
label_desc: Use image node_id 10 for calling a global function with example usage: test_input_reorder() and returns: mx