XLAStrategy¶
- class lightning.pytorch.strategies.XLAStrategy(accelerator=None, parallel_devices=None, checkpoint_io=None, precision_plugin=None, debug=False, **_)[source]¶
Bases:
lightning.pytorch.strategies.ddp.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.
- connect(model)[source]¶
Called by the accelerator to connect the accelerator and the model with this plugin.
- Return type
- on_train_batch_start(batch, batch_idx)[source]¶
Called in the training loop before anything happens for that batch.
- Return type
- process_dataloader(dataloader)[source]¶
Wraps the dataloader if necessary.
- Parameters
dataloader¶ (
object
) – iterable. Ideally of type:torch.utils.data.DataLoader
- Return type
- 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
- save_checkpoint(checkpoint, filepath, storage_options=None)[source]¶
Save model/training states as a checkpoint file through state-dump and file-write.
- 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
- validation_step(*args, **kwargs)[source]¶
The actual validation step.
See
validation_step()
for more details
- property root_device: torch.device¶
Return the root device.
- Return type