Conversation
|
Added eacd2ba to align the runnable corpus with PTO v0.58.5 and the corrected ASL runner path:
Dependencies: LLVM PR #78 and TileOP API PR #44. This PR remains unmerged pending the refreshed 333-case ASL run. |
eacd2ba to
c8577e9
Compare
|
Owner review requested; this PR intentionally remains Draft and must not be merged yet. Current signed candidate:
Validation completed: 21 producer/verifier/benchmark-stability tests, generation idempotence, Python compilation, Ruff, and Not yet release evidence: the real 333-case compiler-to-ASL execution has not run. Please review the code and artifact contract; keep the PR Draft until exact toolchain/model execution produces complete immutable evidence. |
- README 状态块新增 2026-09-10 更新: cherry-pick fix/cherrypick-63-100 (b8669ce+PTO-ISA#63+PTO-ISA#100) 装头后 gfrun 四项全绿(动态编译/执行/非尾轴精度/尾轴回归) - RECORD 问题28(PTO-ISA#100)/29(PTO-ISA#63) 标记已修复并补验证小节 - RECORD 问题14 注更新 pto-spec#256 裁决 + 本地 patch 过宽核对(dmxq 不受影响) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
框架增强(向后兼容单输出算子): - Case 增加 verify 钩子(自定义比对,支持多输出/专用 golden)与 four_pe 字段 - run_case:prepare 可选、verify 优先于默认 np.allclose、按 four_pe 决定 4-PE 样板 dynamic_mx_quant 8 个 driver(多输出 B 范式): - 双输出(output+scale_output),verify 调算子自带 dynamic_mx_quant_data_compare.py (FP8/FP4 解码 MSE<0.1 + scale 逐字节);golden 由 compile.all 的 gen 脚本生成 - four_pe 按 driver 标记(cublas/ocp 4pe 变体) 注:缺 TileOP PTO-ISA#63/PTO-ISA#100 的发布版工具链上 kernel 编不过->ELF 缺失->如实 SKIP; 工具链缺口修复合入 tag 后自动编过+跑通(条件切换意义)。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* solution: 新增 host-golden 精度入口 res_check_all.py(与 multi_thread 对称) 作为 solution 树的统一精度验证入口,与 test/kernel/multi_thread/res_check_all.py 对称:host-golden 范式(kernel 只做二进制 I/O,host 用 numpy 造 golden + np.allclose), 同一套 CLI(--gfrun/--timeout/可选 --compiler-dir)与 stdout 输出格式。 CASES 留空,由算子侧维护:加算子只需追加一个 Case + prep_ 函数,上层遍历接入零改。 本入口 host-golden 范式替代 kernel 内嵌自判(后者不合规),与 multi_thread 一致。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * solution/res_check_all: 增强 Case 框架 + dynamic_mx_quant 样板接入 框架增强(向后兼容单输出算子): - Case 增加 verify 钩子(自定义比对,支持多输出/专用 golden)与 four_pe 字段 - run_case:prepare 可选、verify 优先于默认 np.allclose、按 four_pe 决定 4-PE 样板 dynamic_mx_quant 8 个 driver(多输出 B 范式): - 双输出(output+scale_output),verify 调算子自带 dynamic_mx_quant_data_compare.py (FP8/FP4 解码 MSE<0.1 + scale 逐字节);golden 由 compile.all 的 gen 脚本生成 - four_pe 按 driver 标记(cublas/ocp 4pe 变体) 注:缺 TileOP #63/#100 的发布版工具链上 kernel 编不过->ELF 缺失->如实 SKIP; 工具链缺口修复合入 tag 后自动编过+跑通(条件切换意义)。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * solution/res_check_all: 接入 normalization 4 算子 + Case 框架增强 框架增强(向后兼容单输出算子): - Case 增加 prepare(可选) 与 verify(自定义比对) 钩子、four_pe 字段 - run_case: prepare 可选、verify 优先于默认 np.allclose、按 four_pe 决定 4-PE 样板 B: normalization 4 个(rms_norm/rms_norm_binary/group_norm_grad/group_norm_grad_1d) - make_prep_gen 调各自 gen 脚本生成 input+golden 到 case_dir - make_verify_cmpdir 调各自 compare 脚本(--cmp-dir,退出码 0=PASS) - 多入多出由算子自带 gen/compare 吸收,框架只调度 - matmul_test 暂不接入(verify_matmul_test 一体化自 gfrun,与 run_case 两段式不契合) 注:发布版工具链行归约/TileOP skew 下这些 kernel 编不过->ELF 缺失->如实 SKIP。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Summary
Publish reproducible 0xE9 cross-model microbenchmark artifacts and independent ASL corpus inputs.
cross_model_resultABI plus absolute size symbol;mainandcross_model_stopsymbols for direct boot;e_machine=0xE9;pto-asl-elf-sidecar-v1generators for every active family;Corpus
All 341 active
microbenchmark/coverage.jsoncases now have verified corpus rows:Every row validates ELF/golden SHA-256, exact LLVM/LLD/TileOp/PTO/source identity, writable PT_LOAD result placement,
cross_model_resultsize 8192, absolutecross_model_result_size=8192, and the stop symbol. Every golden is exactly 8192 bytes.Reproducibility
27c2ff9dce92629ccf9b66140d171a13ce2c0153155f610c838e918e1fc30ae44f631a85c440b76be51cf7382584a367b0222411966576971c74d2640xE9Runtime status
The real scalar
add_i32_latELF passes the ASL model with result 3905 and an exact 8192-byte golden. The parameterized GTest suite is running withctest -j8; remaining family results will be added before this draft is marked ready.Tracks #99.