Skip to content

Un-skip sum dim=None U55/U85 tests; fix stale addmm xfail reason - #21407

Open
psiddh wants to merge 1 commit into
pytorch:mainfrom
psiddh:export-D113676338
Open

Un-skip sum dim=None U55/U85 tests; fix stale addmm xfail reason#21407
psiddh wants to merge 1 commit into
pytorch:mainfrom
psiddh:export-D113676338

Conversation

@psiddh

@psiddh psiddh commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

Summary:
Two test-hygiene fixes in the Arm backend test suite, both reducing the
ai_infra_mobile_platform SKIPPING oncall bucket for executorch/backends/arm.

  • test_sum.py: test_sum_u55_INT_1_0 / test_sum_u85_INT_1_0 were skipping
    the dim_None and dim_None_4d_tensor cases because the FVP bundled program
    cannot serialize None as a model input. dim/keepdim were passed as
    forward arguments, so they became model inputs. A new SumDimNone module
    bakes dim=None into the module, leaving only the tensor as an input, so the
    cases now run and pass on both U55 and U85 instead of being skipped. The
    non-None cases are unchanged. (The TOSA path already ran these un-skipped.)

  • test_addmm.py: the test_addmm_16a8w_u55_INT xfail reason claimed "Vela
    compilation fails with 'Invalid arguments'", but the test actually fails at
    runtime on the Corstone-300 U55 FVP (method load status 0x14); Vela
    compilation succeeds. Corrected the reason string to describe the observed
    failure so the next investigator is not misled. The test still xfails.

Authored with Claude Code.

Differential Revision: D113676338

cc @digantdesai @freddan80 @per @zingo @oscarandersson8218 @mansnils @Sebastian-Larsson @robell @rascani

Summary:
Two test-hygiene fixes in the Arm backend test suite, both reducing the
`ai_infra_mobile_platform` SKIPPING oncall bucket for `executorch/backends/arm`.

- `test_sum.py`: `test_sum_u55_INT_1_0` / `test_sum_u85_INT_1_0` were skipping
  the `dim_None` and `dim_None_4d_tensor` cases because the FVP bundled program
  cannot serialize `None` as a model input. `dim`/`keepdim` were passed as
  `forward` arguments, so they became model inputs. A new `SumDimNone` module
  bakes `dim=None` into the module, leaving only the tensor as an input, so the
  cases now run and pass on both U55 and U85 instead of being skipped. The
  non-`None` cases are unchanged. (The TOSA path already ran these un-skipped.)

- `test_addmm.py`: the `test_addmm_16a8w_u55_INT` xfail reason claimed "Vela
  compilation fails with 'Invalid arguments'", but the test actually fails at
  runtime on the Corstone-300 U55 FVP (method load status `0x14`); Vela
  compilation succeeds. Corrected the reason string to describe the observed
  failure so the next investigator is not misled. The test still xfails.

Authored with Claude Code.

Differential Revision: D113676338
@psiddh
psiddh requested a review from digantdesai as a code owner July 27, 2026 18:44
Copilot AI review requested due to automatic review settings July 27, 2026 18:44
@pytorch-bot

pytorch-bot Bot commented Jul 27, 2026

Copy link
Copy Markdown

🔗 Helpful Links

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

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

❌ 2 New Failures

As of commit 5be00a1 with merge base 55d693b (image):

NEW FAILURES - The following jobs have failed:

  • Cadence Build & Test / hifi-build / hifi4 (gh)
    Refusing to check out fork pull request code from a 'pull_request_target' workflow. This workflow runs with the base repository's GITHUB_TOKEN, secrets, default-branch cache scope, and runner access. Fetching and executing a fork's code in that trusted context commonly leads to "pwn request" vulnerabilities. To opt in, review the risks at https://gh.io/securely-using-pull_request_target and set 'allow-unsafe-pr-checkout: true' on the actions/checkout step.
  • Cadence Build & Test / vision-build / vision (gh)
    Refusing to check out fork pull request code from a 'pull_request_target' workflow. This workflow runs with the base repository's GITHUB_TOKEN, secrets, default-branch cache scope, and runner access. Fetching and executing a fork's code in that trusted context commonly leads to "pwn request" vulnerabilities. To opt in, review the risks at https://gh.io/securely-using-pull_request_target and set 'allow-unsafe-pr-checkout: true' on the actions/checkout step.

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

@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Jul 27, 2026
@github-actions github-actions Bot added ciflow/trunk module: arm Issues related to arm backend labels Jul 27, 2026
@meta-codesync

meta-codesync Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

@psiddh has exported this pull request. If you are a Meta employee, you can view the originating Diff in D113676338.

@github-actions

Copy link
Copy Markdown

This PR needs a release notes: label

If your change should be included in the release notes (i.e. would users of this library care about this change?), please use a label starting with release notes:. This helps us keep track and include your important work in the next release notes.

To add a label, you can comment to pytorchbot, for example
@pytorchbot label "release notes: none"

For more information, see
https://github.com/pytorch/pytorch/wiki/PyTorch-AutoLabel-Bot#why-categorize-for-release-notes-and-how-does-it-work.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR improves Arm backend test hygiene by (1) enabling previously skipped Ethos-U55/U85 sum(dim=None) test cases in the FVP path by baking dim=None into the module, and (2) correcting a stale/incorrect xfail reason for an addmm int16 test so failures are attributed to the right stage (runtime load vs. Vela compile).

Changes:

  • Add a SumDimNone module and route dim=None test vectors through it so the FVP bundled program doesn’t need to serialize None as an input.
  • Remove skip logic for dim=None cases in U55/U85 sum INT tests by switching to module+inputs selection.
  • Update test_addmm_16a8w_u55_INT xfail reason to reflect the observed U55 FVP load failure (status 0x14).

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
backends/arm/test/ops/test_sum.py Introduces SumDimNone + helper to un-skip dim=None U55/U85 cases in the FVP pipeline.
backends/arm/test/ops/test_addmm.py Updates the xfail reason string to match the actual failing stage (FVP load).
Comments suppressed due to low confidence (2)

backends/arm/test/ops/test_sum.py:124

  • test_data is a callable parameter (provided by common.parametrize) and is used as such via _module_and_inputs(test_data). The current Tuple annotation is inaccurate and inconsistent with other tests in this file.
def test_sum_u55_INT_1_0(test_data: Tuple):

backends/arm/test/ops/test_sum.py:137

  • Same as above: test_data is a callable from common.parametrize, but is annotated as Tuple. Align the signature with the rest of the file for clarity and static checking.
def test_sum_u85_INT_1_0(test_data: Tuple):

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

"dim_None": _DIM_NONE_SKIP_REASON,
"dim_None_4d_tensor": _DIM_NONE_SKIP_REASON,
}
def _module_and_inputs(test_data: Tuple):
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ciflow/trunk CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. meta-exported module: arm Issues related to arm backend

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants