$ the-wire · showcase
Inductor cat merge fixed, AVX512 grid_sample returned zeros
By RepoJournal · Filed · About PyTorch · Composed from the cited sources · methodology
Two correctness bugs landed fixes in pytorch/pytorch, one silently producing zeros on AVX512 hardware and one matching cat operations it had no business matching, while the rest of the stack moved on refactors, tooling, and an opt-in DataLoader seam for RL.
Fix AVX512 grid sampler mask gather (#197635) pytorch/pytorch
The AVX512 mask_gather path converted an all-ones mask to a bitmask using floating-point equality, and since the all-ones pattern is NaN as float or double every comparison was false, so grid_sample returned zeros whenever the AVX512 kernel ran. The fix extracts the sign bit with _mm512_movepi{64,32}_mask to match AVX2; anyone on AVX512 CPUs should pick this up before trusting grid_sample outputs.
[inductor] Fix merge_select_cat_aten matching cats that aren't selects of one tensor (#198638) pytorch/pytorch
merge_select_cat_aten, which only runs with select_cat_aten_pass enabled, built its select list from x.users instead of the cat's actual inputs, so a non-select input crashed and selects of two tensors or index lists like [-1, 0] produced wrong results. It now matches only genuine selects of one tensor.
[MPS] Don't request grads in test_output_match (#198743) pytorch/pytorch
TestConsistency.test_output_match always asked sample_inputs for requires_grad=True on floating dtypes even though gradients belong to test_output_grad_match, which hid every sample an OpInfo generates only under if not requires_grad. Dropping the argument exposes those samples to the forward-only MPS check, including the NaN-propagation cases of masked.norm.
[Feature] Read storages and replay buffers through torch.utils.data pytorch/rl
Storage.as_dataset() returns a StorageDataset, a map-style torch.utils.data.Dataset with __getitems__, so a DataLoader with any torch sampler fetches each index batch through a single get call. Both entry points are opt-in adapters and Storage and ReplayBuffer keep their class hierarchy, so existing code is unaffected.
Qualcomm AI Engine Direct - [GenAI Pipeline Phase 2] PRB1 - Compilation foundation pytorch/executorch
DefaultCompilerAdapter now actually compiles a graph to a .pte, building the compilation groundwork the rest of Stream B depends on. Nothing under examples/ changes: the legacy llama.py flow is untouched and stays CI's reference until the two paths diverge.
[CRCR] Detect overdue in-progress health probes pytorch/test-infra
The health window now includes non-terminal crcr-test results and distinguishes jobs awaiting the zombie sweep from overdue ones, so a broken sweeper degrades relay health instead of silently excluding a stuck probe. The overdue threshold is 375 minutes, the six-hour zombie timeout plus a 15-minute grace.
Remove the unused BUILD_FUNCTORCH option (#195983) pytorch/pytorch
Removing the functorch C extension left BUILD_FUNCTORCH as a cmake_dependent_option nothing consults plus a redundant set(BUILD_FUNCTORCH OFF) in the interned mobile build, and a git grep for it now returns nothing.