Add: A5 benchmark cases across graph runtimes - #1815
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (5)
📝 WalkthroughWalkthroughAdds five A5 host-build-graph scene tests. The tests register orchestration and device kernels, define execution cases, generate task arguments, compute golden outputs, and run through ChangesA5 host-build-graph benchmark scenes
Estimated code review effort: 3 (Moderate) | ~25 minutes Mergeability Score: ⚪ Minimal · up to This change adds localized A5 host-build-graph benchmark cases without changing kernels, runtime behavior, harnesses, skills, or metrics; no actionable merge-blocking risk remains after normal checks and review. Possibly related PRs
Sequence Diagram(s)sequenceDiagram
participant SceneTestCase
participant HostBuildGraph
participant DeviceKernels
participant GoldenHelper
SceneTestCase->>HostBuildGraph: register kernels and build task arguments
HostBuildGraph->>DeviceKernels: execute the configured workload
SceneTestCase->>GoldenHelper: compute expected tensor outputs
GoldenHelper-->>SceneTestCase: return golden tensors
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
- Add A5 host-build-graph counterparts for the non-Qwen benchmark cases - Add benchmark_bgemm Case0 for A5 TMR and HBG with fixed 128-tile kernels - Pass BGEMM topology as scalar arguments for host-side graph construction
0e5fb5d to
e295bbd
Compare
|
整体 LGTM 👍 —— 用例迁移边界清晰,所有引用的 kernel/orchestration 源码均可解析,HBG 各用例的 有两个非阻塞的遗留项,想请你确认一下是本 PR 顺手补,还是有意留作后续: 1. TMR 和 HBG 的 bgemm
如果 A5 固定 128-tile 的 kernel 能在 a5sim 下正常跑,建议给 bgemm 补上 2. 新增的 A5 TMR A3 的 两项都不影响合入,确认后即可。 |
Summary
benchmark_bgemm/Case0workload to A5 TMR and HBG, using A5-specific fixed-128-tile kernels and scalar topology arguments.Related to #1727.
Coverage matrix
alternating_matmul_addCase1Case1Case1Case1(new)benchmark_bgemmCase0Case0Case0(new)Case0(new)paged_attention_unrollCase1,Case2Case1,Case2Case1,Case2Case1,Case2(new)paged_attention_unroll_manual_scopeCase1,Case2Case1,Case2Case1,Case2Case1,Case2(new)batch_paged_attentionCase1Case1Case1Case1(new)qwen3_14b_decodeStressBatch16Seq3500spmd_paged_attentionCase1,Case2The five included workloads have full A3/A5 × TMR/HBG case coverage.
×marks a counterpart that is not present in the current tree or this PR:qwen3_14b_decode: excluded by request.spmd_paged_attention: excluded from this PR and left for follow-up.A5 BGEMM details
benchmark_bgemm/Case0shape: 500 matmul tasks, 500 add tasks, tile size 128,incore_loop=4, andgrid_k=2.Validation
a5new), all NPU access throughtask-submit --device auto:benchmark_bgemm/Case0TMR + golden: passed (task_20260813_113257_36868417320)benchmark_bgemm/Case0HBG + golden: passed (task_20260813_113313_3713652657)pre-commitpassed: headers, platform literals, clang-format, cpplint, ruff, pyright, and whitespace checks.git diff --checkpassed.