code: def _compareGpu(self, x, y, np_func, tf_func):
      np_ans = np_func(x, y)
      with self.cached_session():
          inx = ops.convert_to_tensor(x)
          iny = ops.convert_to_tensor(y)
          out = tf_func(inx, iny)
          tf_gpu = self.evaluate(out)
      self.assertAllClose(np_ans, tf_gpu)
      self.assertShapeEqual(np_ans, out)
  
imports: import itertools
  import threading
  import numpy
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import random_seed
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import gradient_checker_v2
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import random_ops
  from tensorflow.python.ops import variables
  from tensorflow.python.ops.gen_array_ops import broadcast_gradient_args
  from tensorflow.python.platform import test
label_desc: Use image node_id 3 for calling the BroadcastSimpleTest obj's underlying member method code with example usage: obj._compareGpu(x, y, np_func, tf_func) without return types