code: def run_preprocess_data(params):
      """Main function which will help create graph files for ParMETIS processing
  
      Parameters:
      -----------
      params : argparser object
          An instance of argparser class which stores command line arguments.
      """
      logging.info("Starting to generate ParMETIS files...")
      rank = get_proc_info()
  
      assert os.path.isdir(
          params.input_dir
      ), f"Please check `input_dir` argument: {params.input_dit}."
  
      schema_map = read_json(
          os.path.join(params.input_dir, params.schema_file)
      )
      gen_node_weights_files(schema_map, params)
      logging.info("Done with node weights....")
  
      gen_edge_files(rank, schema_map, params)
      logging.info("Done with edge weights...")
  
      if rank == 0:
          gen_parmetis_input_args(params, schema_map)
      logging.info("Done generating files for ParMETIS run ..")
  
file_path: dgl/tools/distpartitioning/parmetis_preprocess.py
imports: import argparse
  import logging
  import os
  import platform
  from pathlib import Path
  import array_readwriter
  import constants
  import numpy
  import pyarrow
  import pyarrow.csv
  from utils import generate_read_list, generate_roundrobin_read_list, get_idranges, get_node_types, read_json
label_desc: Use image node_id 6 for calling a global function with example usage: run_preprocess_data(params) without return types