()
| 16 | |
| 17 | |
| 18 | def main(): |
| 19 | args = TrainOptions().parse() |
| 20 | |
| 21 | args.distributed = args.world_size > 1 or args.multiprocessing_distributed |
| 22 | ngpus_per_node = torch.cuda.device_count() |
| 23 | |
| 24 | if args.multiprocessing_distributed: |
| 25 | args.world_size = ngpus_per_node * args.world_size |
| 26 | mp.spawn(main_worker, nprocs=ngpus_per_node, args=(ngpus_per_node, args)) |
| 27 | else: |
| 28 | raise NotImplementedError('Currently only DDP training') |
| 29 | |
| 30 | |
| 31 | def main_worker(gpu, ngpus_per_node, args): |
no test coverage detected