code: def distributed_context_single_node_nccl(local_rank, world_size):
      free_port = _setup_free_port(local_rank)
  
      dist_info = {
          "backend": "nccl",
          "world_size": world_size,
          "rank": local_rank,
          "init_method": f"tcp://localhost:{free_port}",
      }
      yield _create_dist_context(dist_info, local_rank)
      _destroy_dist_context()
  
imports: import functools
  import os
  import shutil
  import sys
  import tempfile
  import time
  from pathlib import Path
  import pytest
  import torch
  import torch.distributed
  import ignite.distributed
label_desc: Use image node_id 12 for calling a global function with example usage: distributed_context_single_node_nccl(local_rank, world_size) without return types