XLAStrategy
- class lightning.pytorch.strategies.XLAStrategy(accelerator=None, parallel_devices=None, checkpoint_io=None, precision_plugin=None, debug=False, sync_module_states=True, **_)[source]
Bases:
DDPStrategy
Strategy for training multiple TPU devices using the
torch_xla.distributed.xla_multiprocessing.spawn()
method.- all_gather(tensor, group=None, sync_grads=False)[source]
Function to gather a tensor from several distributed processes.
- barrier(name=None, *args, **kwargs)[source]
Synchronizes all processes which blocks processes until the whole group enters this function.
- broadcast(obj, src=0)[source]
Broadcasts an object to all processes.
- process_dataloader(dataloader)[source]
Wraps the dataloader if necessary.
- Parameters:
dataloader (
object
) – iterable. Ideally of type:torch.utils.data.DataLoader
- Return type:
MpDeviceLoader
- reduce(output, group=None, reduce_op=None)[source]
Reduces a tensor from several distributed processes to one aggregated tensor.
- Parameters:
- Return type:
- Returns:
reduced value, except when the input was not a tensor the output remains is unchanged
- remove_checkpoint(filepath)[source]
Remove checkpoint filepath from the filesystem.
- save_checkpoint(checkpoint, filepath, storage_options=None)[source]
Save model/training states as a checkpoint file through state-dump and file-write.
- setup(trainer)[source]
Sets up the accelerator, plugins and initializes the optimizers (if needed).
- setup_environment()[source]
Setup any processes or distributed connections.
This is called before the LightningModule/DataModule setup hook which allows the user to access the accelerator environment before setup is complete.
- Return type:
- teardown()[source]
This method is called to teardown the training process.
It is the right place to release memory and free other resources.
- Return type:
- property root_device: device
Return the root device.