Skip to content

[DO NOT MERGE] Feat/nnx set defaults true g3 test#4146

Open
ecnal-cienet wants to merge 1 commit into
mainfrom
feat/nnx-set-defaults-true-g3-test
Open

[DO NOT MERGE] Feat/nnx set defaults true g3 test#4146
ecnal-cienet wants to merge 1 commit into
mainfrom
feat/nnx-set-defaults-true-g3-test

Conversation

@ecnal-cienet

@ecnal-cienet ecnal-cienet commented Jun 11, 2026

Copy link
Copy Markdown
Collaborator

Description

This PR is used for testing Google internal G3 tests.

Checklist

Before submitting this PR, please make sure (put X in square brackets):

  • I have performed a self-review of my code. For an optional AI review, add the gemini-review label.
  • I have necessary comments in my code, particularly in hard-to-understand areas.
  • I have run end-to-end tests tests and provided workload links above if applicable.
  • I have made or will make corresponding changes to the doc if needed, including adding new documentation pages to the relevant Table of Contents (toctree directive) as explained in our documentation.

@ecnal-cienet ecnal-cienet changed the title Feat/nnx set defaults true g3 test [DO NOT MERGE] Feat/nnx set defaults true g3 test Jun 11, 2026
The PR6-PR10 sequence promoted every routed-to-Linen feature to
NNX-native (DPO/PR6, MaxEngine/PR7, LoRA+GRPO/PR8, QK-Clip + checkpoint
utilities/PR9, AQT + serve-mode/PR9.5, vocab tiling custom_vjp/PR10).
With those gaps closed, NNX is the production path; this commit makes
it the default.

Empirical break-test on CPU (pytest before/after the flip across
tiling_test, train_compile_test, sharding_compare_test,
maxtext_utils_test, maxengine_test) showed zero flip-induced failures
- every CPU unit-test failure pre-existed on PR10 tip. TPU smoke
verified end-to-end: gemma2-2b 3-step train under the new defaults
logged "pure_nnx: True" in pyconfig and produced loss
13.04 -> 12.32 -> 11.82 (decreasing, no NaN/inf, no Traceback).
Linen-only test files were already pinned in the prior commit so no
per-test breakage from the flip.

base.yml: enable_nnx, pure_nnx_decoder, pure_nnx all flip False -> True.

No use_nnx_pipeline flag is added: PR10 tip has no NNX pipeline path
to opt out of, so a one-valued flag would be dead weight. Pipeline
tests keep their Linen pin from the prior commit; the eventual NNX
pipeline work (PR11.5) will introduce its own opt-in if needed.

Sharding goldens not regenerated: tests/unit/sharding_compare_test.py
already pins enable_nnx=False, pure_nnx=False, pure_nnx_decoder=False
explicitly when invoking the dump utility, so existing goldens at
tests/utils/sharding_info/ stay valid against the flipped default.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant