RepoJournal

$ cat pytorch/week/2026-08-24.log

PyTorch

PyTorch

the week in review · Aug 24 – Aug 30, 2026

Executorch stabilizes its build and strips legacy backends

Executorch overhauls its CI promotion and removes deprecated backends, while core PyTorch and its ecosystem libraries ship a steady stream of correctness fixes.

426 commits 151 PRs merged 2 releases 6 briefings covered

ExecuTorch's commit promotion to viable/strict now runs on a schedule rather than by commit count, ending a class of build pipeline failures caused by batch promotions [1]. The change makes the promotion cadence deterministic, so developers can rely on the stable branch being updated at predictable intervals. Separately, ExecuTorch removed pass-local ExportPass replays [2], cutting redundant graph passes, and the Arm backend now drops RESIZE ops that don't change shape [3], reducing unnecessary work. In related cleanup, ExecuTorch removed the deprecated MPS backend [4] and reduced the aten_device dependency to c10 alone [5]. These changes signal a tightening of the codebase and a focus on build reliability.

PyTorch core shipped a crash fix for FSDP2: the _unsharded_param access in to_accumulated_grad_if_needed is now properly guarded [6], preventing a crash when the parameter is not unsharded. The fix corrects a behavior where gradients could be accumulated incorrectly. Also in core, the legacy C extension was killed, a change that affects anyone still relying on the old extension mechanism. The CUDA path removed an unused multinomial probability copy [7], a minor efficiency gain. A Python 3.15 numpy pin was bumped to 2.5.2 [8], keeping CI green for the upcoming Python release.

TorchRL fixed a bug where TruncatedNormal samples did not preserve their original dtype [9], which could cause silent type coercion in downstream computations. The fix ensures samples retain the dtype of the distribution parameters. TorchAO added passthrough ops for batch norm fusion [10] and restored the straight-through estimator at the fake-quant clamp boundary [11], two fixes that tighten quantization behavior.

Test infrastructure work progressed across the stack: more tests now use hardware classification tags [12][13][14], making it possible to skip or group tests by backend. PyTorch removed the test retry policy A/B experiment from the unstable suite [15], returning to a stable retry policy. The CI also updated macOS actions to latest majors [16], and skipped failing Pallas tests [17]. These are housekeeping changes, but they keep the signal in CI high.

The export recipe framework in ExecuTorch saw fixes [18], and TorchAO migrated from assert_allclose to assert_close [19], aligning with modern testing conventions. None of these changes are breaking for end users, but they prepare the codebase for future work.

References

  1. [1] Promote commits to viable/strict on a schedule, not by commit count (#22064) pytorch/executorch
  2. [2] Remove pass-local ExportPass replays (#22091) pytorch/executorch
  3. [3] Arm backend: Remove RESIZE that don't change shape pytorch/executorch
  4. [4] Remove the deprecated MPS backend (#22181) pytorch/executorch
  5. [5] Depend on c10 alone from aten_device (#22151) pytorch/executorch
  6. [6] [FSDP2] Guard _unsharded_param access in to_accumulated_grad_if_needed (#194058) pytorch/pytorch
  7. [7] [CUDA] Remove unused multinomial probability copy (#194391) pytorch/pytorch
  8. [8] Bump the Python 3.15 numpy pin to 2.5.2 (#194741) pytorch/pytorch
  9. [9] [BugFix] Preserve TruncatedNormal sample dtype (#4137) ↗ pytorch/rl
  10. [10] Support passthrough ops for batch norm fusion (#4776) ↗ pytorch/ao
  11. [11] Restore straight-through estimator at the fake-quant clamp boundary (#4806) ↗ pytorch/ao
  12. [12] [Testcase Refactoring] Enable PrivateUse1 tests and add hw-classification in test_microbatch (#190422) pytorch/pytorch
  13. [13] [Testcase Refactoring] Use is_backend_available for MultiProcContinuousTest backend check (#192186) pytorch/pytorch
  14. [14] [Testcase Refactoring] Add hw_classification to test_store (#192036) pytorch/pytorch
  15. [15] Remove the test retry policy A/B experiment from unstable (#194779) pytorch/pytorch
  16. [16] [BE] MacOS CD: Update `actions/` to latest majors (#194748) pytorch/pytorch
  17. [17] [CI] Skip failing Pallas tests ↗ pytorch/helion
  18. [18] Fix issues in the export recipe framework (#22158) pytorch/executorch
  19. [19] assert_allclose -> assert_close (#4826) ↗ pytorch/ao

$ ls pytorch/week/ # the briefings behind this review