Skip to content

feat: sync Nota XNNPACK with Google upstream#3

Merged
ThibaultCastells merged 0 commit into
masterfrom
feat/sync-xnnpack-upstream-20260713
Jul 13, 2026
Merged

feat: sync Nota XNNPACK with Google upstream#3
ThibaultCastells merged 0 commit into
masterfrom
feat/sync-xnnpack-upstream-20260713

Conversation

@ThibaultCastells

Copy link
Copy Markdown
Member

Summary

  • Rebase nota-github/XNNPACK onto current google/XNNPACK master at f45b3ea023012bd29deaa1900272933bca798ab5.
  • Preserve Nota's Arm QD8/F16/QB4W GEMM config fix on top as f8d2ca0a2efbb9c97da9039933960748ebc6b2dc.
  • Keep the fork one Nota commit ahead of current Google upstream, with no missing upstream commits.

Background

The previous Nota fork head was based on Google XNNPACK f0b3a2996d6fff82cd3f004c0b29f5ccb0ab947d and carried a custom fix for xnn_init_qd8_f16_qb4w_gemm_config().

Current Google master still gates that getter on qd8_f16_qb4w_gemm_config.arch, while init_qd8_f16_qb4w_gemm_config() does not assign .arch on its Arm branches. The original failure therefore remains present upstream: supported Arm hardware can receive a null GEMM config and fail runtime creation with xnn_status_unsupported_hardware.

The custom change is replayed after the upstream rebase and still returns the initialized config unconditionally, matching the qd8_f16_qc4w sibling behavior.

Test plan

  • git rev-list --left-right --count upstream/master...HEAD -> 0 1
  • git diff --check upstream/master...HEAD
  • Confirmed current upstream still has the .arch return guard and no corresponding .arch assignment in the initializer.
  • Confirmed the resulting diff against upstream is only the preserved one-line getter fix.
  • Full platform validation is deferred to repository CI and the downstream ExecuTorch wheel/runtime matrix.

@ThibaultCastells
ThibaultCastells merged commit f8d2ca0 into master Jul 13, 2026
3 of 21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant