#55738 [Perf][GLM-5.3-Flash] Dense/masked-MHA sparse prefill for the NoPE (256, 0, 256) layout + skip the NoPE K concat
原始 PR · 作者 JaredforReal · 合并时间 2026-09-14 17:36
NoPE (256,0,256) 预填改走 dense/masked MHA,TTFT 最多降 8.5%
值得精读,但不必逐行复查 96 行 diff——重点看三个设计决策:(1) 为何 `(256, 0, 256)` 可以复用 `(192, 64, 256)` 的 kernel,以及 `_is_masked_mha_available` 中 `qk_head_dim == 256 and v_head_dim == 256` 时绕过 `get_flash_attn_version(head_size=...)` 的特殊分支;(2) 白名单式后端选择的边界与测试方法,这是 vLLM MLA 后端选择的标准范式;(3) `_concat_k_nope_k_pe` 用别名返回换 134 MB/layer 拷贝的取舍——建议同时确认 `_compute_prefill_context` 只把该 K 作为只读输入传递。若团队计划生产部署,另需注意 FA4 `mask_mod` 的 JIT 预热缺口(首请求约 7 s)和量化 KV 场景无收益这两点;并跟踪 #55385 合入后是否需要回删这里的 7 行重复注册。