Skip to content

[pull] main from pytorch:main#1648

Merged
pull[bot] merged 7 commits into
ais-developer:mainfrom
pytorch:main
Jul 18, 2026
Merged

[pull] main from pytorch:main#1648
pull[bot] merged 7 commits into
ais-developer:mainfrom
pytorch:main

Conversation

@pull

@pull pull Bot commented Jul 18, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

amjames and others added 7 commits July 18, 2026 13:55
fixes: #136452

docstrings for `linalg.norm` and `linalg.matrix_norm`
contain a confusing contradiction between the `dtype` kwarg and the
return for complex dtypes. This is clarified by simply stating that the
input is cast. The output dtype is already implied by the definitions of
the operations.

All three of `norm`, `vector_norm`, and `matrix_norm` are now
consistent. They no longer state that the return type will be guaranteed
to be the same.

* `torch.linalg.norm` flows to either `torch.linalg.vector_norm` or
  `torch.linalg.matrix_norm` depending on the conditions documented.
* All of  `norm`, `vector_norm` and `matrix_norm` indicate that the
  return value will be real if input is complex.
* Both of `vector_norm` and `matrix_norm` indicate that for complex
  input the norm of `A.abs()` or `x.abs()` is computed instead.

`vector_norm` did not contain a contradiction but the description for
`dtype` was also far less clear.

IMO saying less with respect to dtype is more clear here.
Pull Request resolved: #190381
Approved by: https://github.com/lezcano
Disables TestNVUniversalGemmEpilogueFusion.test_workspace_runtime_integration,
failing in CI and tracked/disabled via #188674.

Test Plan: test-only; the test is skipped.

Authored with Claude.

Pull Request resolved: #190101
Approved by: https://github.com/janeyx99
Disables test_p2p_ipc_expandable_segments (P2PIpcTest), which is failing in CI
(one of several rotating failures on the B200 distributed job). Tracked and
disabled via #189878; this makes the skip explicit in-tree.

Test Plan: test-only change; the test is skipped.

Authored with Claude.
Pull Request resolved: #190096
Approved by: https://github.com/janeyx99
## Why

When one `aot_autograd` backend compiles a second, distinct graph, `AotAutograd.__call__` re-enters with `bw_compiler` already wrapped. The `_is_wrapped_bw_compiler` branch then ran `bw_compiler.compiler_fn = bw_compiler`, grafting a self-referential attribute (and needing a `type: ignore`) instead of leaving the wrapper untouched. The branch only exists to be idempotent.

## How

- Leave `bw_compiler` as-is when it is already wrapped
- Add `test_aot_autograd_reentrant_bw_compiler`, which fails before this change

Pull Request resolved: #189325
Approved by: https://github.com/bobrenjc93, https://github.com/jansel
…#189525)

## Related Issue

Fixes #188151

## Why

`_bound_stride` registers expected stride keys as `stride * size`, but fake tensors compute contiguous strides as `stride * max(size, 1)`. Int-input-derived symbols under `dynamic=True` have ranges including 0/1, so the Max does not simplify, the lookup misses, and an internal RuntimeError escapes. Regression from #147130 (2.12+).

## How

- Also register the `max(size, 1)` key form (via `torch.sym_max`, no guards) mapped to the same canonical merged stride expr

Pull Request resolved: #189525
Approved by: https://github.com/aorenste
…cpu_float32` (#190318)

`PYTORCH_OPINFO_SAMPLE_INPUT_INDEX=16 python functorch/test_ops.py TestOperatorsCPU.test_vmap_autograd_grad_nn_functional_conv2d_cpu_float32` fails with
> Greatest absolute difference: 1.1444091796875e-05 at index (0, 4, 0, 0, 2) (up to 1e-05 allowed)
> Greatest relative difference: 2.064850013994146e-05 at index (0, 4, 0, 0, 2) (up to 1.3e-06 allowed)

So use the same tolerance used for CUDA unconditionally.

Fixes #151113
Pull Request resolved: #190318
Approved by: https://github.com/janeyx99
Advances the Triton 3.8 pin from [`43422b04`](triton-lang/triton@43422b0) to [`4774139f`](triton-lang/triton@4774139), the current `release/3.8.x` tip.

The new pin includes:

- triton-lang/triton#10900: combines TMEM loads followed by row reductions on sm103+.
- triton-lang/triton#10787: release-branch revert of triton-lang/triton#7067.
- triton-lang/triton#10779: disables LLVM SLP for sm90 bf16 reductions, fixing the H100 bf16 Swin accuracy regression reported in #188492.
- triton-lang/triton#10935: uses `torch.cuda.is_available()` when torch is already imported, avoiding forked-child CUDA state poisoning reported in #189287.
Pull Request resolved: #190349
Approved by: https://github.com/atalman
@pull pull Bot locked and limited conversation to collaborators Jul 18, 2026
@pull pull Bot added the ⤵️ pull label Jul 18, 2026
@pull
pull Bot merged commit aca9e8e into ais-developer:main Jul 18, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants