Skip to content

feat(integration-tests): port layernorm and rmsnorm-backward to bundle sweeps#9976

Draft
bghimireamd wants to merge 1 commit into
users/bghimire/ALMIOPEN-2281/port_matmul_bundlefrom
users/bghimire/ALMIOPEN-2344/revisit_C_plus_plus_integration
Draft

feat(integration-tests): port layernorm and rmsnorm-backward to bundle sweeps#9976
bghimireamd wants to merge 1 commit into
users/bghimire/ALMIOPEN-2281/port_matmul_bundlefrom
users/bghimire/ALMIOPEN-2344/revisit_C_plus_plus_integration

Conversation

@bghimireamd

@bghimireamd bghimireamd commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Summary

Port C++ integration tests from PR #9255 (mlops engine additions) to compressed template+sweep bundle format, part of the ALMIOPEN-2344 audit ("revisit all C++ integration tests, no duplication").

Layernorm — 708 cases, split by tier to match the C++ INSTANTIATE_TEST_SUITE_P prefixes:

  • quick/Layernorm/{Default,Variant2} — 228 cases (Smoke4d/Smoke5d)
  • full/Layernorm/{Default,Variant2} — 480 cases (Full4d/Full5d/Full5dLargeBatch)

RMSNormBackward — 960 cases:

  • quick/RMSNormBackward/Default — 600 (Smoke)
  • full/RMSNormBackward/Default — 360 (Full)

Topology variants

  • Default = training-mode graph (7 tensors: x, y, scale, bias, epsilon, mean, inv_variance)
  • Variant2 = inference-mode graph (5 tensors, no mean/inv_variance). Only Pure precisions appear here — Mixed/Upcast inference cases GTEST_SKIP in the C++ suite (CPU reference doesn't support mixed-precision inference), so they are correctly absent.

Tier placement

place_bundles.py groups by graph structure only, so Full-tier cases initially landed under quick/. Cases are re-split by their reference_source prefix (Smoke* -> quick/, Full* -> full/) so bundle tier gating matches the source suite — heavy batch-256/512 volumetric shapes stay out of the quick tier.

Captured via --capture-bundles, placed with place_bundles.py, preserving exact graph topology and per-case tensor shapes/dtypes/seeds.

Refs: ALMIOPEN-2344

Test plan

  • Verify bundles register as GTest suites with --allow-bundles
  • Run Hop C (verify_migration.py) byte-diff verification
  • Run Hop D (diff_coverage.py) behavioral verification with mlops engine
  • Confirm no duplicate cases across existing bundle sweeps

Stacking note: intended to stack on top of the ALMIOPEN-2281 matmul-bundle PR. Retarget base once that PR is up.

Generated with Claude Code

@therock-pr-bot

therock-pr-bot Bot commented Jul 24, 2026

Copy link
Copy Markdown

✅ All Checks Passed — Ready for Review

Check Status Details
🌿 Branch Name ✅ Pass
📝 PR Title/Description ✅ Pass
Forbidden Files ✅ Pass
🧪 Unit Test ✅ Pass PR does not contain code files — Unit Test auto-passed
🔎 pre-commit ✅ Pass
🚫 Draft PR 🔜 To Be Enabled
🚩 Feature Flag 🔜 To Be Enabled
📊 Code Coverage 🔜 To Be Enabled
🤖 therock-pr-bot ✅ Pass

🎉 All checks passed! This PR is ready for review.

📖 Need help? See the Policy FAQ for details on every check and how to fix failures.

@therock-pr-bot

Copy link
Copy Markdown

🎉 All checks passed! This PR is ready for review.

…s to bundle sweeps

Port C++ integration tests added by PR #9255 (mlops engine) to compressed
template+sweep bundle format:

- Layernorm: 708 cases split by tier —
  quick/Layernorm/{Default,Variant2}: 228 (Smoke4d/Smoke5d)
  full/Layernorm/{Default,Variant2}: 480 (Full4d/Full5d/Full5dLargeBatch)
- RMSNormBackward: 960 cases (600 quick + 360 full)

Default topology = training mode (mean+inv_variance outputs); Variant2 =
inference mode (Pure precisions only, since Mixed/Upcast inference cases
GTEST_SKIP in the C++ suite). Tier placement (quick/ vs full/) follows the
C++ INSTANTIATE_TEST_SUITE_P prefix (Smoke* -> quick, Full* -> full) so
bundle tiers match the source suite's tier gating.

Each case captured via --capture-bundles and placed with place_bundles.py,
preserving exact graph topology and per-case tensor shapes/dtypes/seeds.

Refs: ALMIOPEN-2344

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@bghimireamd
bghimireamd force-pushed the users/bghimire/ALMIOPEN-2344/revisit_C_plus_plus_integration branch from 5e9661c to b7b731c Compare July 24, 2026 23:32
@bghimireamd
bghimireamd changed the base branch from develop to users/bghimire/ALMIOPEN-2281/port_matmul_bundle July 25, 2026 17:11
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