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-04
stories 43

© 2026 RepoJournal Home Showcase How it works Privacy

$ the-wire · showcase

AOTI fallback fixes, Vulkan reductions stop clamping, Dist-MoE gets a TorchTitan adapter

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

Inductor's lite-mode AOTI path picked up two codegen fixes for cond/while_loop models, Executorch's Vulkan backend stopped saturating fp32 reductions at 65504, and TorchTitan's Dist-MoE integration landed as a three-part stack.

[Vulkan] Stop clamping per-row reductions and propagate NaN pytorch/executorch

by mergennachin

A preprocessor guard written as `#if T == float16_t` compared two undeclared names, so the preprocessor evaluated 0 against 0 and the clamp never turned off. Per-row buffer sum, mean, amax and amin were therefore saturating fp32 results at 65504, including generated int32 shader variants; with the clamp removed, single-dimension texture and per-row buffer amax and amin now propagate NaN instead...

[1/2][test] Extract cuda-specific tests from `TestCppExtensionJIT` into `TestCppExtensionJITCUDA` in `test_cpp_extensions_jit.py`. (#196222) pytorch/pytorch

by Benedykt Bela

The refactor splits device-specific cases out of `TestCppExtensionJIT` into a new `TestCppExtensionJITCUDA` class in `test_cpp_extensions_jit.py`, following the current test refactoring guidelines. It is split into two commits, the first of which reorders functions without changing behavior, so the actual extraction is reviewable on its own.

[inductor] Register subgraph constants in root allocated_constant_name (#199188) pytorch/pytorch

by Aaron Orenstein

Under TORCHINDUCTOR_LITE_MODE=1, AOTI compilation of cond/while_loop models with tensor constants in subgraphs failed with `AssertionError: Can not find the original value for while_loop_body_graph_0_constant0`. The fix registers those subgraph constants in the root graph's `allocated_constant_name`, connecting them to the machinery that attaches constants to the output.

[inductor] AOTI: pass symbolic scalars in Tensor args to proxy-executor fallbacks (#199204) pytorch/pytorch

by Aaron Orenstein

`test_while_loop_with_sym_expr_cond` had been failing AOTI codegen in the inductor_aoti_fallback config since that config was added, with `AssertionError: got <class 'torch.SymInt'>`. The model adds an unbacked SymInt to an int64 tensor, lowering to `aten.add.Tensor(tensor, u0)`, and symbolic scalars inside Tensor args now reach proxy-executor fallbacks; the test is removed from LITE_MODE_TEST_...

[dist_moe] Add the TorchTitan backend adapter pytorch/torchtitan

by sanketpurandare

The adapter wires the standalone dist-moe package into TorchTitan against its current model-transform and FSDP contracts, eager pipeline execution, and GraphPP tracing. It is the bottom of a three-PR stack alongside DeepSeek V3 recipes and a user-facing integration guide under `torchtitan/models/common/dist_moe/README.md`.

Quick answers

What shipped in PyTorch on October 4, 2026?
Inductor's lite-mode AOTI path picked up two codegen fixes for cond/while_loop models, Executorch's Vulkan backend stopped saturating fp32 reductions at 65504, and TorchTitan's Dist-MoE integration landed as a three-part stack. In total, 33 commits and 10 pull requests landed.
Who contributed to PyTorch on October 4, 2026?
8 developers shipped this update, including Benedykt Bela, dingsheng758, Yuanyuan Chen, Aaron Orenstein, sanketpurandare, Felipe Mello, mergennachin, and pytorchbot.
What were the notable PyTorch updates?
[Vulkan] Stop clamping per-row reductions and propagate NaN, [1/2][test] Extract cuda-specific tests from `TestCppExtensionJIT` into `TestCppExtensionJITCUDA` in `test_cpp_extensions_jit.py`. (#196222), and [inductor] Register subgraph constants in root allocated_constant_name (#199188).