Python torch.distributed.is_available() Examples
The following are 30
code examples of torch.distributed.is_available().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
torch.distributed
, or try the search function
.
Example #1
Source File: distributed.py From DetNAS with MIT License | 6 votes |
def __init__(self, dataset, num_replicas=None, rank=None, shuffle=True): if num_replicas is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") num_replicas = dist.get_world_size() if rank is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") rank = dist.get_rank() self.dataset = dataset self.num_replicas = num_replicas self.rank = rank self.epoch = 0 self.num_samples = int(math.ceil(len(self.dataset) * 1.0 / self.num_replicas)) self.total_size = self.num_samples * self.num_replicas self.shuffle = shuffle
Example #2
Source File: distributed.py From SegmenTron with Apache License 2.0 | 6 votes |
def __init__(self, dataset, num_replicas=None, rank=None, shuffle=True): if num_replicas is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") num_replicas = dist.get_world_size() if rank is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") rank = dist.get_rank() self.dataset = dataset self.num_replicas = num_replicas self.rank = rank self.epoch = 0 self.num_samples = int(math.ceil(len(self.dataset) * 1.0 / self.num_replicas)) self.total_size = self.num_samples * self.num_replicas self.shuffle = shuffle
Example #3
Source File: sampler.py From mars with Apache License 2.0 | 6 votes |
def __init__(self, dataset, num_replicas=None, rank=None, shuffle=True): import torch.distributed as dist super().__init__(dataset) if num_replicas is None: # pragma: no cover if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") num_replicas = dist.get_world_size() if rank is None: # pragma: no cover if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") rank = dist.get_rank() self.dataset = dataset self.num_replicas = num_replicas self.rank = rank self.epoch = 0 self.num_samples = int(math.ceil(len(self.dataset) * 1.0 / self.num_replicas)) self.total_size = self.num_samples * self.num_replicas self.shuffle = shuffle
Example #4
Source File: distributed.py From ocr-pytorch with MIT License | 6 votes |
def __init__(self, dataset, num_replicas=None, rank=None, shuffle=True): if num_replicas is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") num_replicas = dist.get_world_size() if rank is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") rank = dist.get_rank() self.dataset = dataset self.num_replicas = num_replicas self.rank = rank self.epoch = 0 self.num_samples = int(math.ceil(len(self.dataset) * 1.0 / self.num_replicas)) self.total_size = self.num_samples * self.num_replicas self.shuffle = shuffle
Example #5
Source File: sampler.py From LEDNet with MIT License | 6 votes |
def __init__(self, dataset, num_replicas=None, rank=None, shuffle=True): if num_replicas is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") num_replicas = dist.get_world_size() if rank is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") rank = dist.get_rank() self.dataset = dataset self.num_replicas = num_replicas self.rank = rank self.epoch = 0 self.num_samples = int(math.ceil(len(self.dataset) * 1.0 / self.num_replicas)) self.total_size = self.num_samples * self.num_replicas self.shuffle = shuffle
Example #6
Source File: distributed.py From Clothing-Detection with GNU General Public License v3.0 | 6 votes |
def __init__(self, dataset, num_replicas=None, rank=None, shuffle=True): if num_replicas is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") num_replicas = dist.get_world_size() if rank is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") rank = dist.get_rank() self.dataset = dataset self.num_replicas = num_replicas self.rank = rank self.epoch = 0 self.num_samples = int(math.ceil(len(self.dataset) * 1.0 / self.num_replicas)) self.total_size = self.num_samples * self.num_replicas self.shuffle = shuffle
Example #7
Source File: train.py From gpt-2-output-dataset with MIT License | 6 votes |
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()
Example #8
Source File: distributed.py From R2CNN.pytorch with MIT License | 6 votes |
def __init__(self, dataset, num_replicas=None, rank=None, shuffle=True): if num_replicas is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") num_replicas = dist.get_world_size() if rank is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") rank = dist.get_rank() self.dataset = dataset self.num_replicas = num_replicas self.rank = rank self.epoch = 0 self.num_samples = int(math.ceil(len(self.dataset) * 1.0 / self.num_replicas)) self.total_size = self.num_samples * self.num_replicas self.shuffle = shuffle
Example #9
Source File: distributed.py From awesome-semantic-segmentation-pytorch with Apache License 2.0 | 6 votes |
def __init__(self, dataset, num_replicas=None, rank=None, shuffle=True): if num_replicas is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") num_replicas = dist.get_world_size() if rank is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") rank = dist.get_rank() self.dataset = dataset self.num_replicas = num_replicas self.rank = rank self.epoch = 0 self.num_samples = int(math.ceil(len(self.dataset) * 1.0 / self.num_replicas)) self.total_size = self.num_samples * self.num_replicas self.shuffle = shuffle
Example #10
Source File: distributed.py From Parsing-R-CNN with MIT License | 6 votes |
def __init__(self, dataset, num_replicas=None, rank=None, shuffle=True): if num_replicas is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") num_replicas = dist.get_world_size() if rank is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") rank = dist.get_rank() self.dataset = dataset self.num_replicas = num_replicas self.rank = rank self.epoch = 0 self.num_samples = int(math.ceil(len(self.dataset) * 1.0 / self.num_replicas)) self.total_size = self.num_samples * self.num_replicas self.shuffle = shuffle
Example #11
Source File: sampler.py From training_results_v0.5 with Apache License 2.0 | 6 votes |
def __init__(self, dataset, num_replicas=None, rank=None, pad=True): if num_replicas is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") num_replicas = dist.get_world_size() if rank is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") rank = dist.get_rank() self.dataset = dataset self.num_replicas = num_replicas self.rank = rank self.pad = pad self.epoch = 0 if self.pad: self.num_samples = int(math.ceil(len(self.dataset) * 1.0 / self.num_replicas)) self.total_size = self.num_samples * self.num_replicas else: self.num_samples = int(math.ceil((len(self.dataset)-self.rank) * 1.0 / self.num_replicas)) self.total_size = len(self.dataset)
Example #12
Source File: distributed.py From remote_sensing_object_detection_2019 with MIT License | 6 votes |
def __init__(self, dataset, num_replicas=None, rank=None, shuffle=True): if num_replicas is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") num_replicas = dist.get_world_size() if rank is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") rank = dist.get_rank() self.dataset = dataset self.num_replicas = num_replicas self.rank = rank self.epoch = 0 self.num_samples = int(math.ceil(len(self.dataset) * 1.0 / self.num_replicas)) self.total_size = self.num_samples * self.num_replicas self.shuffle = True
Example #13
Source File: distributed.py From Res2Net-maskrcnn with MIT License | 6 votes |
def __init__(self, dataset, num_replicas=None, rank=None, shuffle=True): if num_replicas is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") num_replicas = dist.get_world_size() if rank is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") rank = dist.get_rank() self.dataset = dataset self.num_replicas = num_replicas self.rank = rank self.epoch = 0 self.num_samples = int(math.ceil(len(self.dataset) * 1.0 / self.num_replicas)) self.total_size = self.num_samples * self.num_replicas self.shuffle = shuffle
Example #14
Source File: torch_utils.py From Centripetal-SGD with Apache License 2.0 | 5 votes |
def get_rank(): if not dist.is_available(): return 0 if not dist.is_initialized(): return 0 return dist.get_rank()
Example #15
Source File: comm.py From ACNet with MIT License | 5 votes |
def get_world_size(): if not dist.is_available(): return 1 if not dist.is_initialized(): return 1 return dist.get_world_size()
Example #16
Source File: torch_utils.py From Centripetal-SGD with Apache License 2.0 | 5 votes |
def synchronize(): """ Helper function to synchronize (barrier) among all processes when using distributed training """ if not dist.is_available(): return if not dist.is_initialized(): return world_size = dist.get_world_size() if world_size == 1: return dist.barrier()
Example #17
Source File: distributed_utils.py From neural_chat with MIT License | 5 votes |
def is_distributed(): """Return if we are in distributed mode.""" return TORCH_AVAILABLE and dist.is_available() and dist.is_initialized()
Example #18
Source File: torch_utils.py From Centripetal-SGD with Apache License 2.0 | 5 votes |
def get_world_size(): if not dist.is_available(): return 1 if not dist.is_initialized(): return 1 return dist.get_world_size()
Example #19
Source File: comm.py From fast-reid with Apache License 2.0 | 5 votes |
def get_rank() -> int: if not dist.is_available(): return 0 if not dist.is_initialized(): return 0 return dist.get_rank()
Example #20
Source File: comm.py From fast-reid with Apache License 2.0 | 5 votes |
def get_world_size() -> int: if not dist.is_available(): return 1 if not dist.is_initialized(): return 1 return dist.get_world_size()
Example #21
Source File: util.py From allennlp with Apache License 2.0 | 5 votes |
def is_distributed() -> bool: """ Checks if the distributed process group is available and has been initialized """ return dist.is_available() and dist.is_initialized()
Example #22
Source File: util.py From allennlp with Apache License 2.0 | 5 votes |
def prepare_environment(params: Params): """ Sets random seeds for reproducible experiments. This may not work as expected if you use this from within a python project in which you have already imported Pytorch. If you use the scripts/run_model.py entry point to training models with this library, your experiments should be reasonably reproducible. If you are using this from your own project, you will want to call this function before importing Pytorch. Complete determinism is very difficult to achieve with libraries doing optimized linear algebra due to massively parallel execution, which is exacerbated by using GPUs. # Parameters params: `Params` A `Params` object or dict holding the json parameters. """ seed = params.pop_int("random_seed", 13370) numpy_seed = params.pop_int("numpy_seed", 1337) torch_seed = params.pop_int("pytorch_seed", 133) if seed is not None: random.seed(seed) if numpy_seed is not None: numpy.random.seed(numpy_seed) if torch_seed is not None: torch.manual_seed(torch_seed) # Seed all GPUs with the same seed if available. if torch.cuda.is_available(): torch.cuda.manual_seed_all(torch_seed) log_pytorch_version_info()
Example #23
Source File: comm.py From ACNet with MIT License | 5 votes |
def get_rank(): if not dist.is_available(): return 0 if not dist.is_initialized(): return 0 return dist.get_rank()
Example #24
Source File: dist.py From pytorch_image_classification with MIT License | 5 votes |
def get_rank() -> int: if not (dist.is_available() and dist.is_initialized()): return 0 else: return dist.get_rank()
Example #25
Source File: torch_utils.py From ACNet with MIT License | 5 votes |
def synchronize(): """ Helper function to synchronize (barrier) among all processes when using distributed training """ if not dist.is_available(): return if not dist.is_initialized(): return world_size = dist.get_world_size() if world_size == 1: return dist.barrier()
Example #26
Source File: torch_utils.py From ACNet with MIT License | 5 votes |
def get_rank(): if not dist.is_available(): return 0 if not dist.is_initialized(): return 0 return dist.get_rank()
Example #27
Source File: torch_utils.py From ACNet with MIT License | 5 votes |
def get_world_size(): if not dist.is_available(): return 1 if not dist.is_initialized(): return 1 return dist.get_world_size()
Example #28
Source File: dist_utils.py From mmcv with Apache License 2.0 | 5 votes |
def get_dist_info(): if TORCH_VERSION < '1.0': initialized = dist._initialized else: if dist.is_available(): initialized = dist.is_initialized() else: initialized = False if initialized: rank = dist.get_rank() world_size = dist.get_world_size() else: rank = 0 world_size = 1 return rank, world_size
Example #29
Source File: __init__.py From pytorch_image_classification with MIT License | 5 votes |
def apply_data_parallel_wrapper(config: yacs.config.CfgNode, model: nn.Module) -> nn.Module: local_rank = config.train.dist.local_rank if dist.is_available() and dist.is_initialized(): if config.train.dist.use_sync_bn: model = nn.SyncBatchNorm.convert_sync_batchnorm(model) model = nn.parallel.DistributedDataParallel(model, device_ids=[local_rank], output_device=local_rank) else: if config.device == 'cuda': model = nn.DataParallel(model) return model
Example #30
Source File: data_sampler.py From real-world-sr with MIT License | 5 votes |
def __init__(self, dataset, num_replicas=None, rank=None, ratio=100): if num_replicas is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") num_replicas = dist.get_world_size() if rank is None: if not dist.is_available(): raise RuntimeError("Requires distributed package to be available") rank = dist.get_rank() self.dataset = dataset self.num_replicas = num_replicas self.rank = rank self.epoch = 0 self.num_samples = int(math.ceil(len(self.dataset) * ratio / self.num_replicas)) self.total_size = self.num_samples * self.num_replicas