[P2] StreamK evaluate 使用假想 65536 元素 L0C 方形 tile,未按 plan 实际 single_core_m×n 计量(瘦长 case 搬入低估 ~16x) #25
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
stream_k.evaluate 用 tile_elems=65536 及 √65536=256 方形假设计算每核搬入/MMAD/归约/部分和,与 make_plan 生成的 single_core_m×n 不一致(仅 M=N=256 附近近似成立)。
证据:B=4 M=1 N=8192 K=8192 → plan tile=1x8192(8192 元素/核),每核真实搬入 kseg*(M+N)dt=4.10MB,模型 gm_read_bytes 仅 0.26MB(低估 ~16x,MMAD 反向按 65536 元素高估 8x);streamk_demo M=N=128 也有 2x 偏差(模型 320KB vs 真实 160KB/核)。
期望:evaluate 按 plan 的 tile 尺寸与 m_cnt/n_cnt/b/grid_k 布局重写字节量与归约口径,并补 M!=N、MN!=65536 回归样例。
【修复说明 · 乱码重写】原评论提交时编码损坏、内容不可恢复, 以下按 git 记录 / issue 正文 / 残留文本重建 (要点级, 非逐字原稿):
[P2] StreamK evaluate 使用假想 65536 方形 tile、未按 plan 实际 tile 计 已修复 (commit
4843053):waves = ceil(bm_cntn_cnt*grid_K / C), 组内 K 段零重复读;
与 GM 读 512MiB 的物理下限一致。