code: def main():
      args = parse_args()
      lhs_row_dim = int(args.lhs_row_dim)
      lhs_col_dim = int(args.lhs_col_dim)
      rhs_col_dim = int(args.rhs_col_dim)
      density = float(args.density)
      lhs_stype = args.lhs_stype
      rhs_stype = args.rhs_stype
      if args.rhs_density:
          rhs_density = float(args.rhs_density)
      else:
          rhs_density = density
      dot_func = mx.nd.sparse.dot if lhs_stype == "csr" else mx.nd.dot
      check_call(
          _LIB.MXSetNumOMPThreads(ctypes.c_int(args.num_omp_threads))
      )
      bench_dot(
          lhs_row_dim,
          lhs_col_dim,
          rhs_col_dim,
          density,
          rhs_density,
          dot_func,
          False,
          lhs_stype,
          rhs_stype,
          args.only_storage,
      )
  
file_path: mxnet/benchmark/python/sparse/memory_benchmark.py
imports: import ctypes
  import sys
  import argparse
  import mxnet
  from mxnet.test_utils import rand_ndarray
  from mxnet.base import check_call, _LIB
label_desc: Use image node_id 2 for calling a global function with example usage: main() without return types