Skip to content

[release/1.6] Delete duplicate CUDA output handles once - #24490

Merged
JacobSzwejbka merged 2 commits into
release/1.6from
codex/release-1.6-clean-cuda-output-handles-20261103
Nov 3, 2026
Merged

JacobSzwejbka merged 2 commits into
release/1.6from
codex/release-1.6-clean-cuda-output-handles-20261103

Conversation

@JacobSzwejbka

Copy link
Copy Markdown
Contributor

Supersedes #24448 with a clean release pick from #24420.

Deletes each aliased CUDA output handle once, including error cleanup, and carries its regression test.

The original three source files are the complete scope of this pick.

Scope and landing order

Land after #24489 in the verified landing order.

This branch starts directly at release/1.6 commit dfb78b9ecd933a5fee33ebc94f69ed4b71cbb1e7. Its GitHub diff contains 3 files for this pick; it does not carry duplicate #24298 history or the excluded unmerged QNN work. Dependencies are documented here rather than embedded as other cherry-pick commits.

Verification

All changed Python files compile and pass Ruff F821 checks. All seven replacements merge cleanly in the documented sequence, including simulated squash merges. No QNN files are changed.

Native CUDA, OpenVINO and portable C++ suites were not run locally on this macOS host; PR CI remains required before landing.

Prepared with OpenAI Codex.

Cherry-pick #24420 without inherited release cherry-picks.

Prepared with OpenAI Codex.
The release test module uses tempfile, including in the new CUDA tests. Prepared with OpenAI Codex.
@pytorch-bot

pytorch-bot Bot commented Nov 3, 2026 •

Copy link
Copy Markdown

🔗 Helpful Links

🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/24490

Note: Links to docs will display an error until the docs builds have been completed.

❌ 1 New Failure

As of commit 519af0d with merge base 4db778e (image):

NEW FAILURE - The following job has failed:

This comment was automatically generated by Dr. CI and updates every 15 minutes.

@JacobSzwejbka
JacobSzwejbka merged commit f3a9b06 into release/1.6 Nov 3, 2026
307 of 314 checks passed
@JacobSzwejbka
JacobSzwejbka deleted the codex/release-1.6-clean-cuda-output-handles-20261103 branch November 3, 2026 17:04
JacobSzwejbka added a commit that referenced this pull request Nov 3, 2026
Supersedes #24455 with a clean release pick from #24426.

Restores inference-only fused flash, efficient and cuDNN attention calls
to scaled_dot_product_attention when the source pass can preserve their
semantics.

The fused-attention test is moved unchanged to avoid conflicts with the
earlier indexing pick. The existing release missing-kernel regression
test is retained.

## Scope and landing order

Land after #24490 in the
verified landing order.

This branch starts directly at release/1.6 commit
`dfb78b9ecd933a5fee33ebc94f69ed4b71cbb1e7`. Its GitHub diff contains 5
files for this pick; it does not carry duplicate #24298 history or the
excluded unmerged QNN work. Dependencies are documented here rather than
embedded as other cherry-pick commits.

## Verification

All changed Python files compile and pass Ruff F821 checks. All seven
replacements merge cleanly in the documented sequence, including
simulated squash merges. No QNN files are changed. The existing CPU
graph rewrite test passed its nine cases using the real inherited
AotiPartitioner implementation. The GPU import/pass-registration test
could not run locally because Triton is unavailable on macOS.

Native CUDA, OpenVINO and portable C++ suites were not run locally on
this macOS host; PR CI remains required before landing.

Prepared with OpenAI Codex.
JacobSzwejbka added a commit that referenced this pull request Nov 3, 2026
Main-branch counterpart of release/1.6 fix #24509. Fixes the NXP
MCUXpresso failure seen on #24490; main has the same incomplete CMake
target.

The [failed
job](https://github.com/pytorch/executorch/actions/runs/41601038988/job/125799646998)
reaches the final CIFAR firmware link, then fails with `undefined
reference to SYS_INFO_PrintAll`. The SDK example calls this helper, but
our standalone CMake target omits
`examples/eiq_examples/common/sys_info/sys_info.c`.

Add that source to the firmware target. The helper also needs
`MCUXSDK_VERSION_FULL_STR`, which the SDK's normal build supplies
through a generated header. Our standalone target now uses the SDK's
`mcux_version.cmake` parser and sets the equivalent compile definition
from the checked-out SDK version.

## Verification

A focused host CMake build reused the actual example target's source
list and include paths, the real SDK helper/header, and the SDK version
parser. The board/runtime sources were replaced with empty fixtures and
the application with a small C++ caller.

The original source list reproduced the unresolved `SYS_INFO_PrintAll`
link error. Adding only the helper reproduced the missing
`MCUXSDK_VERSION_FULL_STR` compile error. With both changes, the
executable linked and printed `MCUX SDK version: 2026.12.00-pvw1`.

`git diff --check` passed. The full ARM firmware build and execution on
hardware were not run locally; the NXP CI job must validate the complete
build.

Only the example's CMakeLists.txt changes (eight added lines). The
resulting file is byte-identical to the verified release fix in #24509.
Land this on main; #24509 is the corresponding release/1.6 pick.

Prepared with OpenAI Codex.
JacobSzwejbka added a commit that referenced this pull request Nov 3, 2026
Fixes the NXP MCUXpresso failure seen on #24490 and on the release
branch.

The [failed
job](https://github.com/pytorch/executorch/actions/runs/41601038988/job/125799646998)
reaches the final CIFAR firmware link, then fails with `undefined
reference to SYS_INFO_PrintAll`. The SDK example calls this helper, but
our standalone CMake target omits
`examples/eiq_examples/common/sys_info/sys_info.c`.

Add that source to the firmware target. The helper also needs
`MCUXSDK_VERSION_FULL_STR`, which the SDK's normal build supplies
through a generated header. Our standalone target now uses the SDK's
`mcux_version.cmake` parser and sets the equivalent compile definition
from the checked-out SDK version.

## Verification

A focused host CMake build reused the actual example target's source
list and include paths, the real SDK helper/header, and the SDK version
parser. The board/runtime sources were replaced with empty fixtures and
the application with a small C++ caller.

The original source list reproduced the unresolved `SYS_INFO_PrintAll`
link error. Adding only the helper reproduced the missing
`MCUXSDK_VERSION_FULL_STR` compile error. With both changes, the
executable linked and printed `MCUX SDK version: 2026.12.00-pvw1`.

`git diff --check` passed. The full ARM firmware build and execution on
hardware were not run locally; the NXP CI job must validate the complete
build.

Only the example's CMakeLists.txt changes (eight added lines). Based on
release/1.6 after #24490; this PR can land independently of the
remaining clean backend picks.

Prepared with OpenAI Codex.

This branch was successfully deployed

1 active and 1 inactive deployments
upload-benchmark-results — 519af0d0 Deployed Nov 3, 2026 by JacobSzwejbka via upload-benchmark-results #21800
cadence — 519af0d0 Deployed Nov 3, 2026 by JacobSzwejbka via hifi-op-test / hifi4 #36186
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants