code: def benchmarking(model, args):
      bs = args.batch_size
      num_iterations = args.num_iterations
      input_shape = (bs, 3, args.image_shape, args.image_shape)
      size = num_iterations * bs
      data = mx.random.uniform(
          -1.0, 1.0, shape=input_shape, ctx=args.ctx[0], dtype="float32"
      )
      dry_run = 5
  
      with tqdm(total=size + dry_run * bs) as pbar:
          for n in range(dry_run + num_iterations):
              if n == dry_run:
                  tic = time.time()
              outputs = model(data)
              for output in outputs:
                  output.wait_to_read()
              pbar.update(bs)
      speed = size / (time.time() - tic)
      print(
          "With batch size %d , %d batches, throughput is %f imgs/sec"
          % (bs, num_iterations, speed)
      )
  
imports: import os
  import logging
  from tqdm import tqdm
  import numpy
  import argparse
  import time
  import sys
  import mxnet
  from mxnet import gluon, ndarray
  from mxnet.gluon.data.vision import transforms
  from mxnet.contrib.quantization import *
  import gluoncv
  from gluoncv.model_zoo.segbase import *
  from gluoncv.model_zoo import get_model
  from gluoncv.data import get_segmentation_dataset, ms_batchify_fn
  from gluoncv.utils.viz import get_color_pallete
  from gluoncv.utils.parallel import *
label_desc: Use image node_id 4 for calling a global function with example usage: benchmarking(model, args) without return types