Shortcuts

DataParallelPlugin

class pytorch_lightning.plugins.training_type.DataParallelPlugin(parallel_devices=None, checkpoint_io=None)[source]

Bases: pytorch_lightning.plugins.training_type.parallel.ParallelPlugin

Implements data-parallel training in a single process, i.e., the model gets replicated to each device and each gets a split of the data.

barrier(*args, **kwargs)[source]

Synchronizes all processes which blocks processes until the whole group enters this function.

Parameters

name – an optional name to pass into barrier.

broadcast(obj, src=0)[source]

Broadcasts an object to all processes.

Parameters
  • obj (object) – the object to broadcast

  • src (int) – source rank

Return type

object

model_to_device()[source]

Moves the model to the correct device.

Return type

None

reduce(collection, *args, **kwargs)[source]

Reduces a collection of tensors from all processes. It can be applied to just a single tensor.

Parameters
Return type

Union[Metric, Tensor, int, float, Mapping[str, Union[Metric, Tensor, int, float]]]

Returns

Reduced tensor values or the same value if it was not or did not contain a tensor.

reduce_boolean_decision(decision)[source]

Reduce the early stopping decision across all processes.

Return type

bool

setup()[source]

Called by the accelerator to finish setup.

Return type

None

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

None

property root_device

Return the root device.