This commit is contained in:
wudong 2022-11-23 20:34:30 +08:00
commit 31402010fc

View File

@ -610,16 +610,16 @@ def main(opt,data_list,id,callbacks=Callbacks()):
# DDP mode
device = select_device(opt.device, batch_size=opt.batch_size)
print(device.type)
if LOCAL_RANK != -1:
msg = 'is not compatible with YOLOv5 Multi-GPU DDP training'
assert not opt.image_weights, f'--image-weights {msg}'
assert not opt.evolve, f'--evolve {msg}'
assert opt.batch_size != -1, f'AutoBatch with --batch-size -1 {msg}, please pass a valid --batch-size'
assert opt.batch_size % WORLD_SIZE == 0, f'--batch-size {opt.batch_size} must be multiple of WORLD_SIZE'
assert torch.cuda.device_count() > LOCAL_RANK, 'insufficient CUDA devices for DDP command'
torch.cuda.set_device(LOCAL_RANK)
device = torch.device('cuda', LOCAL_RANK)
dist.init_process_group(backend="nccl" if dist.is_nccl_available() else "gloo")
# if LOCAL_RANK != -1:
# msg = 'is not compatible with YOLOv5 Multi-GPU DDP training'
# assert not opt.image_weights, f'--image-weights {msg}'
# assert not opt.evolve, f'--evolve {msg}'
# assert opt.batch_size != -1, f'AutoBatch with --batch-size -1 {msg}, please pass a valid --batch-size'
# assert opt.batch_size % WORLD_SIZE == 0, f'--batch-size {opt.batch_size} must be multiple of WORLD_SIZE'
# assert torch.cuda.device_count() > LOCAL_RANK, 'insufficient CUDA devices for DDP command'
# torch.cuda.set_device(LOCAL_RANK)
# device = torch.device('cuda', LOCAL_RANK)
# dist.init_process_group(backend="nccl" if dist.is_nccl_available() else "gloo")
# Train
if not opt.evolve: