DeepSpeed 0.19.8 Removes Elastic Training, Progressive Layer Dropping and Apex AMP, Turning Leftover Configs Into Errors
DeepSpeed 0.19.8 removes elastic training, Progressive Layer Dropping, Apex AMP and graph harvesting; configs that still set them now raise DeepSpeedConfigError.
Overview
The v0.19.8 release of DeepSpeed, the distributed training library, was published on October 20, 2026. Its changelog includes a run of removals: entries titled “Remove elastic training”, “Remove Progressive Layer Dropping (PLD) support”, “Deprecate APEX amp”, “Deprecate sparse_gradients”, “Deprecate legacy curriculum learning” and “Deprecate and remove graph harvesting”. Per the linked pull requests, a training job whose configuration still sets any of these now fails at startup instead of continuing without the feature.
A tracked clean-up
The removals are part of a project-wide effort. DeepSpeed maintainers opened a tracking issue described as a “Tracking issue for retiring unused / unmaintained DeepSpeed features so the runtime, docs, tests, and packaging stay consistent.” According to the issue, a first sweep merged on 2026-09-12 removed the compression library, 1-bit Adam and Lamb, 0-1 Adam, MiCS and the Nebula checkpoint engine. The issue lists the net change for that pull request as +169 / −8,298 lines.
The release’s changelog entries correspond to follow-up pull requests, which are summarized below.
What was removed
- Elastic training. The pull request removes the
elasticityconfiguration block, the batch-size solver, theDSElasticAgentrendezvous agent and the--elastic_traininglauncher option. It reports 21 files changed, with 48 insertions and 1475 deletions. As the reason, it says a GitHub usage scan found zero issues outside the DeepSpeed organization for the relevant configuration keys, and that the feature was incompatible with model parallelism and pipeline parallelism in some configurations. It states thatzero_optimization.elastic_checkpointis a different feature and is not touched. - Progressive Layer Dropping. This pull request removes the scheduler, configuration helpers, engine hooks, tests and tutorial. It says any configuration containing
progressive_layer_dropis rejected, including disabled, empty, null and “auto” values. - Apex AMP. The pull request says existing
ampconfigurations, including disabled, empty or null blocks, now raiseDeepSpeedConfigError, directing users tofp16,bf16ortorch_autocast. Native PyTorch AMP and optionalapex.optimizers.FusedAdamcompatibility remain supported, according to the same description. sparse_gradients. The pull request removes the flag, which compressed dense embedding gradients into DeepSpeed’s sparse reduction path. It notes that the project’sconfig-json.mdhad described the feature as “essentially deprecated as we don’t see use cases for it as much anymore”. The description also says the dense-input path selected rows whose values sum to something non-zero, so a row such as[1.0, -1.0]was discarded and updates were silently dropped. Sparse gradient reduction for models that buildEmbedding(..., sparse=True)themselves is unchanged at ZeRO stage 0.- Legacy curriculum learning. This pull request removes the top-level
curriculum_learningconfiguration. It says the legacy path is superseded by the Data Efficiency library, which is retained, and that the error message points to that replacement. - Graph harvesting. The pull request says the
graph_harvestingoption, with any value including false or null, now raisesDeepSpeedConfigError.
Failing loudly
A common design choice across these pull requests is that leftover configuration is rejected rather than ignored. The elastic training description says a leftover elasticity block is rejected “instead of silently training without it”, and the curriculum learning description says a legacy config “now fails at parse time instead of silently training without the feature”. For users upgrading from 0.19.7, that means configuration files may need editing before a job starts.
Other additions in the release
The changelog also lists additions, including “Add DualPipeV”, “Add KLXPU (KUNLUNXIN XPU) accelerator”, “[muon] Per-head Newton-Schulz for attention projections”, “Add an opt-in fused Triton RMSNorm for Llama-style Hugging Face models” and “Speed up import deepspeed by deferring heavy imports and import-time work”. The release page lists these entries without further explanation.
What We Don’t Know
- The release notes are a list of pull-request titles and do not include a dedicated migration guide; this article draws on the linked pull-request descriptions instead.
- The tracking issue’s own checklist was written before several of these pull requests merged, so it should not be read as the final scope of the clean-up.
- None of the cited sources report how many users run the removed features beyond the maintainers’ own usage scan.