MCPcopy Create free account
hub / github.com/MoonInTheRiver/DiffSinger / set_distributed_mode

Method set_distributed_mode

utils/pl_utils.py:823–845  ·  view source on GitHub ↗
(self, distributed_backend)

Source from the content-addressed store, hash-verified

821 return batch
822
823 def set_distributed_mode(self, distributed_backend):
824 # skip for CPU
825 if self.num_gpus == 0:
826 return
827
828 # single GPU case
829 # in single gpu case we allow ddp so we can train on multiple
830 # nodes, 1 gpu per node
831 elif self.num_gpus == 1:
832 self.single_gpu = True
833 self.use_dp = False
834 self.use_ddp = False
835 self.root_gpu = 0
836 self.data_parallel_device_ids = [0]
837 else:
838 if distributed_backend is not None:
839 self.use_dp = distributed_backend == 'dp'
840 self.use_ddp = distributed_backend == 'ddp'
841 elif distributed_backend is None:
842 self.use_dp = True
843 self.use_ddp = False
844
845 logging.info(f'gpu available: {torch.cuda.is_available()}, used: {self.on_gpu}')
846
847 def ddp_train(self, gpu_idx, model):
848 """

Callers 1

__init__Method · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected