Parallelization

This page contains the reference documentation for the parallelization module.

Vectorized Environments

These are interfaces, classes and utility functions for vectorized environments:

VectorEnv

Abstract base class for vectorised environments.

StructuredVectorEnv

Common superclass for the structured vectorised env implementations in Maze.

SequentialVectorEnv

Creates a simple wrapper for multiple environments, calling each environment in sequence on the current Python process.

SubprocVectorEnv

Creates a multiprocess wrapper for multiple environments, distributing each environment to its own process.

CloudpickleWrapper

Uses cloudpickle to serialize contents (otherwise multiprocessing tries to use pickle).

SinkHoleConsumer

Sink hole statistics consumer.

disable_epoch_level_stats

Disable collection of statistics on epoch level to save memory.

Distributed Actors

These are interfaces, classes and utility functions for distributed actors:

DistributedActors

The base class for all distributed actors.

SequentialDistributedActors

Dummy implementation of distributed actors creates the actors as a list. Once the outputs are to

SubprocDistributedActors

Basic Distributed-Actors-Module using python multiprocessing.Process

MyManager

Basic wrapper for the BaseManager class

BroadcastingContainer

Synchronizes policy updates and other information across actors on local machine.

BaseDistributedWorkersWithBuffer

The base class for all distributed workers with buffer.

DummyDistributedWorkersWithBuffer

Dummy implementation of distributed workers with buffer creates the workers as a list.