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-09-24
stories 97

© 2026 RepoJournal Home Showcase How it works Privacy

$ the-wire · showcase

torch.compiler.precompile becomes a module, callable API retired

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

PyTorch's precompile surface collapses into a module with no capture or load yet, and the fixes that make that transition landable are mostly paperwork; meanwhile two backend kernels were silently returning wrong numbers.

[precompile] Make torch.compiler.precompile a module and retire the callable API (#197993) pytorch/pytorch

by Bob Ren

torch.compiler.precompile now exports only types (Capture, MakeFxTracer, PrecompiledRunnable, PrecompileSummary, and a re-exported PrecompileError), so torch.compiler.precompile(fn, x) raises TypeError: 'module' object is not callable. The landing note is explicit that this commit is not usable on its own: there is no capture() and no load() yet.

Metal backend: honor channels-last strides in conv2d pytorch/executorch

by abdelaziz-mahdy

aoti_torch_mps_convolution read its operands as contiguous NCHW/OIHW regardless of strides, so every conv2d Inductor handed it after layout optimization returned wrong values silently; the reported case is MobileNetV3 top-1 logit 3094 instead of 8.146. 1x1 convs escaped only because inductor lowers them to mm. The kernel now classifies strides for both input and weight.

[precompile] Validate backend and tracer in PrecompiledModule and drive the suite through it (#198283) pytorch/pytorch

by Bob Ren

The backend and tracer validation moves out of _PrecompileApi.__call__ and into PrecompiledModule, with the test suite re-pointed to drive the new path. Bob Ren frames it as preparation: the callable-retirement commit two PRs up would otherwise have to relocate these checks and rewire the suite at the same time.

Avoid hint guards in symbolic expand fast paths (#198258) pytorch/pytorch

by Kalpit Munot

SymIntArrayRef::equals could specialize backed symbolic dimensions from their hints in optional expand fast paths; both expand_outplace overloads now use TORCH_GUARD_OR_FALSE(c10::sym_equals(...)) so an unproven equality falls through to general broadcasting without installing a guard. New coverage asserts a hint-1 dimension stays symbolic across binary logical_and and tensor-list broadcast_ten...

Keep unsupported BF16 and dynamic reshapes out of XNNPACK pytorch/executorch

by mergennachin

BF16 convolution and Conv1d/unsqueeze reshapes with multiple dynamic dimensions now stay on ExecuTorch's native kernels instead of XNNPACK. Regression tests export and execute Conv1d, Conv2d, and unsqueeze without a model dependency.

Refactor tensor-parallel projection backends pytorch/torchtitan

by anijain2305

TorchTitan makes tensor-parallel roles explicit: input projections use ColumnParallelLinear, output projections RowParallelLinear, both still Linear subclasses preserving existing parameter FQNs and behaving as ordinary linear modules when no TP mesh exists. Elsewhere across the desks, the Arm backend drops safe int32-to-int64 index casts for delegated gather, rewrite_slice preserves symbolic b...

Quick answers

What shipped in PyTorch on September 24, 2026?
PyTorch's precompile surface collapses into a module with no capture or load yet, and the fixes that make that transition landable are mostly paperwork; meanwhile two backend kernels were silently returning wrong numbers. In total, 73 commits, 23 pull requests, and 1 releases landed.
Who contributed to PyTorch on September 24, 2026?
10 developers shipped this update, including Kalpit Munot, Bob Ren, Aaron Gokaslan, mansnils, oscarandersson8218, irtrukhina, mergennachin, and abdelaziz-mahdy, and 2 more.
What were the notable PyTorch updates?
[precompile] Make torch.compiler.precompile a module and retire the callable API (#197993), Metal backend: honor channels-last strides in conv2d, and [precompile] Validate backend and tracer in PrecompiledModule and drive the suite through it (#198283).