117 wires and counting

$ follow PyTorch

Keep up with PyTorch in about 3 minutes: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

fair warning: these emails are deeply technical. diffs, version numbers, CVEs, benchmark deltas. if that's not your idea of a good read, this isn't your newsletter.

Folds into your digest — weekly by default, monthly if you prefer. Unsubscribe in one click.

$ status

wire 2026-10-09
stories 162

© 2026 RepoJournal Home Showcase How it works Privacy

$ the-wire · showcase

Silently wrong MoE gradients, and E8M0 wrappers decompose again

By RepoJournal · Filed · About PyTorch · Composed from the cited sources · methodology

TorchTitan closes a correctness hole that produced wrong expert gradients under activation checkpointing without erroring, while Inductor restores decomposition of higher-order wrappers carrying E8M0 inputs.

[DeepEP] Fix silently wrong MoE gradients under activation checkpointing (#5115) pytorch/torchtitan

by francesco-bertolotti

deepep.dispatch returns an EPHandle recording which received row came from which source token on which rank, and under activation checkpointing the backward recompute produced a different row order than the forward's autograd context recorded, so gradients were wrong with no failure reported. If you train MoE models with DeepEP plus activation checkpointing, pull this before trusting a run.

[Inductor] Decompose functional wrappers with E8M0 inputs (#195817) pytorch/pytorch

by Driller-Killer

fallback_node_due_to_unsupported_type treated float8_e8m0fnu as unsupported except for a handful of view and memory ops, which also caused auto_functionalized, auto_functionalized_v2, and triton_kernel_wrapper_functional to be skipped by their decomposition passes. Those wrappers are not lowered directly, so they must decompose for E8M0 input graphs to compile.

[FSDP2] Keep the unsharded grad_dtype fixed across forward and backward (#200196) pytorch/pytorch

by Wei Feng

Wei Feng made the unsharded parameter's grad_dtype fixed rather than chosen in pre_backward, so gradient accumulation across backward passes without gradient sync stays in FP32 and TP gradient reduction stays in FP32. The earlier deferral let a forward see FP32 while its backward saw something else.

[executorch][cuda] Run INT4 decode linears on autotuned QuantizedGemmFamily Triton kernels and delete the int4_plain_mm C shim pytorch/executorch

by gasoonjia

Decode-sized INT4 linears (CudaCoalescedInt4Tensor, M <= 4) now route through QuantizedGemmFamily as triton::int4_quantized_gemm_m{1,2,3,4}, with the int4_plain_mm C shim deleted everywhere; the INT6 companion does the same for CudaDp4aPlanarInt6Tensor and drops int6_plain_mm.

[autotuner] Speed up config key support checks pytorch/helion

by coder-2011

ConfigSpec.normalize() rebuilt the full supported-key set on every call, running supports_config_key() for all 245 valid keys when it needed only the keys in the config, and a single matmul bind normalizes 493 configs for the 1024x1024 example: over 160,000 support checks, roughly 45% of bind time. The same rewrite also skips function-local _compat imports inside each Triton call.

[Refactor] Bound GPU test parallelism and reap strays pytorch/rl

by huydhn

Jobs hung to the 120-minute timeout after the script had already exited 0 because run_with_env_secrets.py drains stdout until EOF and Xvfb outlived pytest holding the write end. The script now dumps survivors and reaps them; the OSDC container work lands alongside it, moving the read-only /usr/share/glvnd/egl_vendor.d mount and the removed libgl1-mesa-glx and freeglut3 packages, and the docs gh...

[ROCm] Unskip TestVisionTracing torchvision tracing tests (#200067) pytorch/pytorch

by Prachi Gupta

Also cleared: TestVisionTracing's torchvision tracing tests lose their blanket unittest.skipIf(TEST_WITH_ROCM, "Skipped on ROCm") after passing on MI355X (gfx950, ROCm 10.1) and MI300X (gfx942), and torch_tpu moves its pin to 7c98be65adbaf405c58748177ec8ac5dc601bd39.

Quick answers

What shipped in PyTorch on October 9, 2026?
TorchTitan closes a correctness hole that produced wrong expert gradients under activation checkpointing without erroring, while Inductor restores decomposition of higher-order wrappers carrying E8M0 inputs. In total, 97 commits and 65 pull requests landed.
Who contributed to PyTorch on October 9, 2026?
17 developers shipped this update, including syg1996419, Driller-Killer, Prachi Gupta, Wang, Chuanqi, Wei Feng, Rishi Sinha, francesco-bertolotti, and sanketpurandare, and 9 more.
What were the notable PyTorch updates?
[DeepEP] Fix silently wrong MoE gradients under activation checkpointing (#5115), [Inductor] Decompose functional wrappers with E8M0 inputs (#195817), and [FSDP2] Keep the unsharded grad_dtype fixed across forward and backward (#200196).