in detector/train.py [0:0]
def setup_distributed(port=29500):
if not dist.is_available() or not torch.cuda.is_available() or torch.cuda.device_count() <= 1:
return 0, 1
if 'MPIR_CVAR_CH3_INTERFACE_HOSTNAME' in os.environ:
from mpi4py import MPI
mpi_rank = MPI.COMM_WORLD.Get_rank()
mpi_size = MPI.COMM_WORLD.Get_size()
os.environ["MASTER_ADDR"] = '127.0.0.1'
os.environ["MASTER_PORT"] = str(port)
dist.init_process_group(backend="nccl", world_size=mpi_size, rank=mpi_rank)
return mpi_rank, mpi_size
dist.init_process_group(backend="nccl", init_method="env://")
return dist.get_rank(), dist.get_world_size()