class_docstr: Main micro benchmark class.
code: def benchmark_matmul(self):
      sizes = [(2, 2), (10, 10), (100, 100), (200, 200), (1000, 1000)]
      # Override repeat flag since this can be very slow.
      repeats = [FLAGS.repeat] * 3 + [50, 10]
      times = []
      for size, repeat in zip(sizes, repeats):
          x = np.random.uniform(size=size).astype(
              np.float32, copy=False
          )
          name = "{}_{}".format(self._get_name(), size)
          times.append(
              self._benchmark_np_and_tf_np(
                  name, "matmul", (x, x), repeat=repeat
              )
          )
  
      self._print_times("matmul", sizes, times)
  
imports: import gc
  import time
  from absl import flags
  from absl import logging
  import numpy
  import tensorflow.compat.v2
  from tensorflow.python.ops.numpy_ops.integration_test.benchmarks import numpy_mlp
  from tensorflow.python.ops.numpy_ops.integration_test.benchmarks import tf_numpy_mlp
label_desc: Use image node_id 12 for calling the MicroBenchmarks obj's underlying member method code with example usage: obj.benchmark_matmul() without return types