Skip to content

refactor(hipblaslt): convert gfx950 F8H library logic to dict format - #10395

Merged
dsaffars merged 1 commit into
developfrom
users/dsaffars/Lib_conv_gfx950_F8H
Sep 1, 2026
Merged

dsaffars merged 1 commit into
developfrom
users/dsaffars/Lib_conv_gfx950_F8H

Conversation

@dsaffars

@dsaffars dsaffars commented Aug 5, 2026 •

Copy link
Copy Markdown
Contributor

JIRA ID: AIHPBLAS-4216

Convert 36 gfx950 F8H library logic YAML files from list to dict format.

Motivation

TensileLite is migrating gfx950 library logic YAML from the legacy list format to the canonical dict format. The dict format uses explicit root keys (ArchitectureName, CUCount, ProblemType, Solutions, etc.) and is the format TensileCreateLibrary now emits by default.
The F8H datatype family continues the stacked gfx950 library logic conversion. Migrating these files improves maintainability, aligns shipped logic with the current serialization contract, and reduces YAML size without changing kernel selection behavior.

Technical Details

This PR converts 36 gfx950 F8H library logic YAML files under:
projects/hipblaslt/library/src/amd_detail/rocblaslt/src/Tensile/Logic/asm_full/gfx950/gfx950/Origami/
projects/hipblaslt/library/src/amd_detail/rocblaslt/src/Tensile/Logic/asm_full/gfx950/gfx950/Origami/Origami_nta4/
projects/hipblaslt/library/src/amd_detail/rocblaslt/src/Tensile/Logic/asm_full/gfx950/gfx950/Origami/Origami_ntb4/
Format changes (no semantic changes intended):

  • Root metadata moves from positional list entries to named keys (MinimumRequiredVersion, ScheduleName, ArchitectureName, CUCount, DeviceNames, ProblemType, …).
  • ProblemType fields are nested under a ProblemType: mapping instead of inline list items.
  • Solution entries move from list-of-flow-mappings to a Solutions: dict keyed by solution name.
  • Boolean literals are normalized (True/False → true/false).
    Scope summary:
Metric Before After
Files 36 36
Total lines 1,603,824 1,143,474

This PR is YAML-only; no runtime, generator, or test-code changes. It builds on users/dsaffars/Lib_conv_gfx950_S in the stacked PR series.

Test Plan

For each of the 36 converted files, pre-conversion list-format YAML is compared against the new dict-format YAML using a script (same parser path as TensileCreateLibrary):

Test Result

For all 36/36 F8H files parsed solutions, problem types, and matching tables are semantically identical between list and dict formats.
File integrity: No files added or removed; only format conversion within the existing 36 F8H logic files (Origami, Origami/Origami_nta4, Origami/Origami_ntb4).
Line count: Total YAML size reduced from 1,603,824 to 1,143,474 lines (~29% reduction) with no intended change to kernel selection behavior.

@therock-pr-bot

therock-pr-bot Bot commented Aug 6, 2026 •

Copy link
Copy Markdown

✅ All Checks Passed — Ready for Review

Check Status Details
📝 PR 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.

🙋 Wish to Override Policy?

@dsaffars
dsaffars force-pushed the users/dsaffars/Lib_conv_gfx950_S branch from 7c98ba0 to bb0796b Compare August 10, 2026 12:53
@dsaffars
dsaffars force-pushed the users/dsaffars/Lib_conv_gfx950_F8H branch from 9c83de2 to aa7d0e6 Compare August 10, 2026 12:53
@therock-pr-bot

Copy link
Copy Markdown

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

@codecov

codecov Bot commented Aug 14, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

Additional details and impacted files
@@           Coverage Diff            @@
##           develop   #10395   +/-   ##
========================================
  Coverage    69.32%   69.32%           
========================================
  Files         2810     2810           
  Lines       465520   465520           
  Branches     68685    68685           
========================================
  Hits        322706   322706           
  Misses      119250   119250           
  Partials     23564    23564           
Flag Coverage Δ *Carryforward flag
TensileLite-CPP 38.33% <ø> (ø)
TensileLite-Unit 76.15% <ø> (ø)
hipBLAS 90.62% <ø> (ø) Carriedforward from b4f07c6
hipBLASLt 35.22% <ø> (ø)
hipCUB 82.68% <ø> (ø) Carriedforward from b4f07c6
hipDNN 86.85% <ø> (ø) Carriedforward from b4f07c6
hipFFT 43.78% <ø> (ø) Carriedforward from b4f07c6
hipRAND 76.12% <ø> (ø) Carriedforward from b4f07c6
hipSOLVER 68.92% <ø> (ø) Carriedforward from b4f07c6
hipSPARSE 86.99% <ø> (ø) Carriedforward from b4f07c6
rocBLAS 48.29% <ø> (ø) Carriedforward from b4f07c6
rocFFT 46.60% <ø> (ø) Carriedforward from b4f07c6
rocRAND 56.91% <ø> (ø) Carriedforward from b4f07c6
rocSOLVER 76.83% <ø> (ø) Carriedforward from b4f07c6
rocSPARSE 74.60% <ø> (ø) Carriedforward from b4f07c6
rocThrust 91.60% <ø> (ø) Carriedforward from b4f07c6

*This pull request uses carry forward flags. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@dsaffars
dsaffars force-pushed the users/dsaffars/Lib_conv_gfx950_F8H branch from aa7d0e6 to d3cfe7b Compare August 21, 2026 15:55
@dsaffars
dsaffars force-pushed the users/dsaffars/Lib_conv_gfx950_S branch from bb0796b to 9c491cf Compare August 21, 2026 15:55
@babakpst
babakpst force-pushed the users/dsaffars/Lib_conv_gfx950_S branch from 9c491cf to 48f7868 Compare August 24, 2026 15:28
@babakpst
babakpst force-pushed the users/dsaffars/Lib_conv_gfx950_F8H branch from d3cfe7b to e1d91bd Compare August 24, 2026 15:28
@dsaffars
dsaffars force-pushed the users/dsaffars/Lib_conv_gfx950_S branch from 48f7868 to 7c8a40a Compare August 27, 2026 11:12
@dsaffars
dsaffars force-pushed the users/dsaffars/Lib_conv_gfx950_F8H branch from e1d91bd to 0b3773a Compare August 27, 2026 11:12
@dsaffars
dsaffars force-pushed the users/dsaffars/Lib_conv_gfx950_S branch from 7c8a40a to 5ebe9d3 Compare August 31, 2026 11:27
@dsaffars
dsaffars force-pushed the users/dsaffars/Lib_conv_gfx950_F8H branch from 0b3773a to 2671bc4 Compare August 31, 2026 11:28
@dsaffars
dsaffars force-pushed the users/dsaffars/Lib_conv_gfx950_S branch from 5ebe9d3 to 9ddc471 Compare August 31, 2026 11:47
Convert 36 gfx950 F8H library logic YAML files from list
to dict format.

# Batch: F8H
# Per-file lines (before -> after):
  gfx950/Origami/Origami_nta4/gfx950_Cijk_Ailk_Bjlk_F8H_HF8S_BH_BiasSH_HAS_SAB_SCD_SAV_UserArgs.yaml: 40854 -> 29422
  gfx950/Origami/Origami_nta4/gfx950_Cijk_Ailk_Bjlk_F8H_HHS_BH_BiasSH_HAS_SAV_UserArgs.yaml: 40855 -> 29241
  gfx950/Origami/Origami_nta4/gfx950_Cijk_Ailk_Bjlk_F8H_HSS_BH_BiasS_HAS_SAV_UserArgs.yaml: 40855 -> 29241
  gfx950/Origami/Origami_nta4/gfx950_Cijk_Ailk_Bljk_F8H_HF8S_BH_BiasSH_HAS_SAB_SCD_SAV_UserArgs.yaml: 44662 -> 32044
  gfx950/Origami/Origami_nta4/gfx950_Cijk_Ailk_Bljk_F8H_HHS_BH_BiasSH_HAS_SAV_UserArgs.yaml: 44663 -> 31846
  gfx950/Origami/Origami_nta4/gfx950_Cijk_Ailk_Bljk_F8H_HSS_BH_BiasS_HAS_SAV_UserArgs.yaml: 44663 -> 31846
  gfx950/Origami/Origami_nta4/gfx950_Cijk_Alik_Bjlk_F8H_HF8S_BH_BiasSH_HAS_SAB_SCD_SAV_UserArgs.yaml: 44214 -> 31723
  gfx950/Origami/Origami_nta4/gfx950_Cijk_Alik_Bjlk_F8H_HHS_BH_BiasSH_HAS_SAV_UserArgs.yaml: 44215 -> 31527
  gfx950/Origami/Origami_nta4/gfx950_Cijk_Alik_Bjlk_F8H_HSS_BH_BiasS_HAS_SAV_UserArgs.yaml: 44215 -> 31527
  gfx950/Origami/Origami_nta4/gfx950_Cijk_Alik_Bljk_F8H_HF8S_BH_BiasSH_HAS_SAB_SCD_SAV_UserArgs.yaml: 48470 -> 34655
  gfx950/Origami/Origami_nta4/gfx950_Cijk_Alik_Bljk_F8H_HHS_BH_BiasSH_HAS_SAV_UserArgs.yaml: 48471 -> 34440
  gfx950/Origami/Origami_nta4/gfx950_Cijk_Alik_Bljk_F8H_HSS_BH_BiasS_HAS_SAV_UserArgs.yaml: 48471 -> 34440
  gfx950/Origami/Origami_ntb4/gfx950_Cijk_Ailk_Bjlk_F8H_HF8S_BH_BiasSH_HAS_SAB_SCD_SAV_UserArgs.yaml: 40854 -> 29422
  gfx950/Origami/Origami_ntb4/gfx950_Cijk_Ailk_Bjlk_F8H_HHS_BH_BiasSH_HAS_SAV_UserArgs.yaml: 40855 -> 29241
  gfx950/Origami/Origami_ntb4/gfx950_Cijk_Ailk_Bjlk_F8H_HSS_BH_BiasS_HAS_SAV_UserArgs.yaml: 40855 -> 29241
  gfx950/Origami/Origami_ntb4/gfx950_Cijk_Ailk_Bljk_F8H_HF8S_BH_BiasSH_HAS_SAB_SCD_SAV_UserArgs.yaml: 44662 -> 32044
  gfx950/Origami/Origami_ntb4/gfx950_Cijk_Ailk_Bljk_F8H_HHS_BH_BiasSH_HAS_SAV_UserArgs.yaml: 44663 -> 31846
  gfx950/Origami/Origami_ntb4/gfx950_Cijk_Ailk_Bljk_F8H_HSS_BH_BiasS_HAS_SAV_UserArgs.yaml: 44663 -> 31846
  gfx950/Origami/Origami_ntb4/gfx950_Cijk_Alik_Bjlk_F8H_HF8S_BH_BiasSH_HAS_SAB_SCD_SAV_UserArgs.yaml: 44214 -> 31723
  gfx950/Origami/Origami_ntb4/gfx950_Cijk_Alik_Bjlk_F8H_HHS_BH_BiasSH_HAS_SAV_UserArgs.yaml: 44215 -> 31527
  gfx950/Origami/Origami_ntb4/gfx950_Cijk_Alik_Bjlk_F8H_HSS_BH_BiasS_HAS_SAV_UserArgs.yaml: 44215 -> 31527
  gfx950/Origami/Origami_ntb4/gfx950_Cijk_Alik_Bljk_F8H_HF8S_BH_BiasSH_HAS_SAB_SCD_SAV_UserArgs.yaml: 48470 -> 34655
  gfx950/Origami/Origami_ntb4/gfx950_Cijk_Alik_Bljk_F8H_HHS_BH_BiasSH_HAS_SAV_UserArgs.yaml: 48471 -> 34440
  gfx950/Origami/Origami_ntb4/gfx950_Cijk_Alik_Bljk_F8H_HSS_BH_BiasS_HAS_SAV_UserArgs.yaml: 48471 -> 34440
  gfx950/Origami/gfx950_Cijk_Ailk_Bjlk_F8H_HF8S_BH_BiasSH_HAS_SAB_SCD_SAV_UserArgs.yaml: 40854 -> 29240
  gfx950/Origami/gfx950_Cijk_Ailk_Bjlk_F8H_HHS_BH_BiasSH_HAS_SAV_UserArgs.yaml: 40855 -> 29059
  gfx950/Origami/gfx950_Cijk_Ailk_Bjlk_F8H_HSS_BH_BiasS_HAS_SAV_UserArgs.yaml: 40855 -> 29059
  gfx950/Origami/gfx950_Cijk_Ailk_Bljk_F8H_HF8S_BH_BiasSH_HAS_SAB_SCD_SAV_UserArgs.yaml: 44662 -> 31845
  gfx950/Origami/gfx950_Cijk_Ailk_Bljk_F8H_HHS_BH_BiasSH_HAS_SAV_UserArgs.yaml: 44663 -> 31647
  gfx950/Origami/gfx950_Cijk_Ailk_Bljk_F8H_HSS_BH_BiasS_HAS_SAV_UserArgs.yaml: 44663 -> 31647
  gfx950/Origami/gfx950_Cijk_Alik_Bjlk_F8H_HF8S_BH_BiasSH_HAS_SAB_SCD_SAV_UserArgs.yaml: 44214 -> 31526
  gfx950/Origami/gfx950_Cijk_Alik_Bjlk_F8H_HHS_BH_BiasSH_HAS_SAV_UserArgs.yaml: 44215 -> 31330
  gfx950/Origami/gfx950_Cijk_Alik_Bjlk_F8H_HSS_BH_BiasS_HAS_SAV_UserArgs.yaml: 44215 -> 31330
  gfx950/Origami/gfx950_Cijk_Alik_Bljk_F8H_HF8S_BH_BiasSH_HAS_SAB_SCD_SAV_UserArgs.yaml: 48470 -> 34439
  gfx950/Origami/gfx950_Cijk_Alik_Bljk_F8H_HHS_BH_BiasSH_HAS_SAV_UserArgs.yaml: 48471 -> 34224
  gfx950/Origami/gfx950_Cijk_Alik_Bljk_F8H_HSS_BH_BiasS_HAS_SAV_UserArgs.yaml: 48471 -> 34224
Total: 1603824 -> 1143474 lines across 36 files.
@dsaffars
dsaffars force-pushed the users/dsaffars/Lib_conv_gfx950_F8H branch from 2671bc4 to 173f202 Compare August 31, 2026 11:48
@dsaffars
dsaffars changed the base branch from users/dsaffars/Lib_conv_gfx950_S to develop August 31, 2026 12:08
@dsaffars
dsaffars merged commit ecdeb92 into develop Sep 1, 2026
110 of 115 checks passed
@dsaffars
dsaffars deleted the users/dsaffars/Lib_conv_gfx950_F8H branch September 1, 2026 12:30
@assistant-librarian

Copy link
Copy Markdown
Contributor

TheRock Submodule Bump Activity

Newest first

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.

2 participants