code: def main(args):
      print(
          f"Running cugraph-dgl dataloading benchmark with the following parameters:\n"
          f"Dataset path = {args.dataset_path}\n"
          f"Sampling path = {args.sampling_path}\n"
      )
      with open(os.path.join(args.dataset_path, "meta.json"), "r") as f:
          input_meta = json.load(f)
  
      sampled_dirs = [
          os.path.join(args.sampling_path, f)
          for f in os.listdir(args.sampling_path)
      ]
  
      time_ls = []
      for sampled_dir in sampled_dirs:
          with open(
              os.path.join(sampled_dir, "output_meta.json"), "r"
          ) as f:
              sampled_meta_d = json.load(f)
  
          replication_factor = sampled_meta_d["replication_factor"]
          feat_load_st = time.time()
          label_data = load_node_labels(
              args.dataset_path, replication_factor, input_meta
          )["paper"]["y"]
          feat_data = feat_data = load_node_features(
              args.dataset_path, replication_factor, node_type="paper"
          )
          print(
              f"Feature and label data loading took = {time.time()-feat_load_st}",
              flush=True,
          )
  
          r_time_ls = e2e_benchmark(
              sampled_dir, feat_data, label_data, sampled_meta_d
          )
          [
              x.update({"replication_factor": replication_factor})
              for x in r_time_ls
          ]
          [
              x.update({"num_edges": sampled_meta_d["total_num_edges"]})
              for x in r_time_ls
          ]
          time_ls.extend(r_time_ls)
  
          print(
              f"Benchmark completed for replication factor = {replication_factor}\n{'=' * 30}",
              flush=True,
          )
  
      df = pd.DataFrame(time_ls)
      df.to_csv("cugraph_dgl_e2e_benchmark.csv", index=False)
      print(
          f"Benchmark completed for all replication factors\n{'=' * 30}",
          flush=True,
      )
  
file_path: cugraph/benchmarks/cugraph-dgl/scale-benchmarks/cugraph_dgl_benchmark.py
imports: import os
  import json
  import pandas
  import os
  import time
  from rmm.allocators.torch import rmm_torch_allocator
  import rmm
  import torch
  from cugraph_dgl.dataloading import HomogenousBulkSamplerDataset
  from model import run_1_epoch
  from argparse import ArgumentParser
  from load_graph_feats import load_node_labels, load_node_features
label_desc: Use image node_id 3 for calling a global function with example usage: main(args) without return types