$ the-wire · showcase
TorchTitan drops graph-based EP chunking, ditching FlexAttention in DSV4
By RepoJournal · Filed · About PyTorch · Composed from the cited sources · methodology
TorchTitan removed roughly 2.5k lines of EP chunk pass code and moved DSV4's sliding-window and compressed attention onto gather_attn, while ExecuTorch and TensorDict shipped correctness fixes that silently corrupted or altered results on main.
[graph_trainer] Remove graph-based EP chunking (#4952) pytorch/torchtitan
EP overlap keeps the eager chunking strategy and loses the graph one, which rewrote traced graphs with unbacked SymInts and carried about 2.5k lines of pass code plus 2k lines of tests. Nothing about the overlap feature itself changes, only the maintenance surface behind it.
Preserve Python scalar semantics in Vulkan and XNNPACK quantizers pytorch/executorch
Preparing a model with the Vulkan or XNNPACK quantizer used to materialize Python scalars in the operation's output dtype, so `torch.tensor([1e-4], dtype=torch.float16) * 100000.0` could return infinity where PyTorch returns roughly 10. The quantizers now keep the original Python scalar operands for add and multiply.
Pin ROCm TorchAO nightly separately to unbreak ROCm CI (#23264) pytorch/executorch
Every run of `unittest-rocm-gfx950-rocm7.2` and `test-voxtral-realtime-rocm-gfx950-rocm7.2` on main has failed installing TorchAO with an HTTP 403 on the rocm7.2 nightly wheel since the earlier change. ROCm TorchAO nightlies are now pinned separately; recent green ROCm runs were ones where the path filter skipped these jobs.
Fix rnllama undici security update and Windows ARM64 generator mismatch (#23280) pytorch/executorch
rnllama's undici resolution is constrained to ^6.28.1 with locked versions consolidated onto 6.28.1, because the previous open-ended override allowed 7.x while Expo's transitive dependencies require 6.x and Dependabot's security update could not proceed. The same change fixes a Windows ARM64 CMake generator mismatch.
[BugFix] Validate store indices and convert indexed write values pytorch/tensordict
`TensorDictStore` and `LazyStackedTensorDictStore` silently corrupted data on main: indices wrapped around, and indexed writes skipped conversion and broadcasting to the selected shape and dtype. Both now bounds-check integer, list, range, tensor, and boolean-mask indices, raising `IndexError` on out-of-range values and normalizing negatives, with writes converted following PyTorch assignment r...
[Performance] Avoid full dataset reads when indexing PersistentTensorDict pytorch/tensordict
Indexing a `PersistentTensorDict` such as `h5td[0:5].to_tensordict()` loaded every dataset in full twice and listed every key on each membership check, making slices quadratic in key count. Key lookup now fetches metadata directly instead of enumerating.