colossalai.context.random.seed_manager

class colossalai.context.random.seed_manager.SeedManager[source]

This class is a manager of all random seeds involved in the system.

Note

The parallel_mode should be concluded in ParallelMode. More details about ParallelMode could be found in parallel_mode.

set_state(parallel_mode, state)[source]

Sets the state of the seed manager for parallel_mode.

Parameters
  • parallel_mode (colossalai.context.ParallelMode) – The chosen parallel mode.

  • state (torch.Tensor) – the state to be set.

Raises

AssertionError – Raises an AssertionError if parallel_mode is not found in the seed manager.

set_mode(parallel_mode)[source]

Sets the current mode of the seed manager.

Parameters

parallel_mode (colossalai.context.ParallelMode) – The chosen parallel mode.

add_seed(parallel_mode, seed, overwrtie=False)[source]

Adds a seed to the seed manager for parallel_mode.

Parameters
  • parallel_mode (colossalai.context.ParallelMode) – The chosen parallel mode.

  • seed (int) – The seed to be added.

  • overwrtie (bool, optional) – Whether allows to overwrite the seed that has been set already

Raises

AssertionError – Raises an AssertionError if parallel_mode is not an instance of colossalai.context.ParallelMode or the seed for parallel_mode has been added.