Determinism

Maturity: verified for the recorded facts

Determinism describes the controls and recorded state that constrain variation across executions of the same training work.

Determinism controls

  • seed is a required non-negative integer in the resolved config.

  • torch.manual_seed(seed) runs before program construction.

  • the canonical split has ordered, content-identified membership.

  • the bounded DataLoader uses shuffle=False.

  • model and optimizer state restore from a completed-step checkpoint.

  • config, training-contract, dataset, component, run, attempt, source, image, launch, parent, and artifact identities are recorded where supplied.

Unsupported controls and state

  • a derived seed tree for dataset, worker, transform, or rank;

  • torch.use_deterministic_algorithms policy;

  • cuDNN or cuBLAS determinism configuration;

  • Python, NumPy, PyTorch CPU, or accelerator random-number-generator checkpoints;

  • loader, sampler, or worker progress checkpoints;

  • environment and dependency-lock capture in the attempt manifest;

  • distributed determinism and rank-specific state.

The current accelerator path uses an NVIDIA CUDA GPU selected by the exact cuda configuration literal; that path does not add the omitted state above.

Do not describe a repeated bounded run as bit-identical without comparing its actual outputs. Do not describe current resume as exact replay; it is a compatibility-checked continuation of model and optimizer state.

See Also