code: def run_cuda(
      rank: int,
      world_size: int,
      args: argparse.ArgumentParser,
      num_classes: int,
      data: Union[Data, HeteroData],
  ):
      os.environ["MASTER_ADDR"] = "localhost"
      os.environ["MASTER_PORT"] = "12355"
      dist.init_process_group("nccl", rank=rank, world_size=world_size)
      run(rank, world_size, args, num_classes, data)
  
file_path: pytorch_geometric/benchmark/multi_gpu/training/training_benchmark_cuda.py
imports: import argparse
  import os
  from typing import Union
  import torch
  import torch.distributed
  import torch.multiprocessing
  from benchmark.multi_gpu.training.common import get_predefined_args, run, supported_sets
  from benchmark.utils import get_dataset
  from torch_geometric.data import Data, HeteroData
label_desc: Use image node_id 1 for calling a global function with example usage: run_cuda(rank, world_size, args, num_classes, data) without return types