Repository navigation
Pin llama.cpp 6e42b51: HRX prompt matmuls on the q8_1 x4 kernel, Qwen3.8-27B pp512 98 -> 335 - #273
Conversation
|
Docs7 for 1bit-monster/engine
Commit |
PR Reviewer Guide 🔍(Review updated until commit 3247a23)Here are some key observations to aid the review process:
|
|
Persistent review updated to latest commit f0aea87 |
…3.8-27B pp512 98 -> 335 llama.cpp fork #55 routes Q4_K/Q5_K/IQ4_XS prompt matmuls to the existing q8_1 x4 prefill kernel: - Q5_K and IQ4_XS get Q4_K's activation/GLU policy. - The generic fused SwiGLU (priority 290) leaves 256-2048-token chunks to it. On Qwen3.8-27B UD-Q4_K_XL those projections had gone to the generic F32 WMMA kernels, 94% of HRX prompt time. Measured on this pin (6e42b51, which also carries #53/#54): - llama-bench -b 512 -ub 512: pp512 98.5 -> 334.6, pp2048 98.1 -> 309.5 tok/s. - 1bit serve --device hrx, 14,435-token prompt: 90.7 -> 264.7 tok/s, same text. - KLD vs the BF16 logits (wikitext-2, 20 x 512): 0.00712, same top token 96.27%. - test-backend-ops MUL_MAT on HRX0: 287/287. GGML_HRX_Q8_PREFILL_RELAX=0 restores the old routing. Docs: a docs/hrx.md section and "Our patches" entry. The docs/serve.md auto-routing note ("97-99 tok/s until fork #55 is pinned") and the docs/laya.md policy note now carry the measured numbers. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…; no mapping changes) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
f0aea87 to
3247a23
Compare
|
Persistent review updated to latest commit 3247a23 |
The engine's GPU route is HRX only since 2026-10-01. Long documents went to the lean ROCm build while HRX prefilled Qwen3.8-27B at 97-99 tok/s; since the HRX prompt-matmul routing (fork #55, engine #273) it prefills 335 tok/s pp512 and a 14,435-token prompt through serve at 265 tok/s. Every Laya class now routes to HRX. Past 32K of context HRX needs fork #59 (pinned separately). Co-authored-by: bong-water-water-bong <bong-water-water-bong@1bit.gg> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Moves
third_party/llama.cppfromdd74f6bto6e42b51, which is llama.cpp fork #55 squashed on top of #53/#54.Fork #55 routes Q4_K/Q5_K/IQ4_XS prompt matmuls to HRX's existing q8_1 x4 prefill kernel:
On Qwen3.8-27B UD-Q4_K_XL those projections had been taking 94% of HRX prompt time in the generic F32 WMMA kernels.
Measured on this pin:
1bit serve --device hrx, 14,435-token prompttest-backend-ops -o MUL_MAT -b HRX0: 287/287.GGML_HRX_Q8_PREFILL_RELAX=0restores the old routing.Docs:
docs/hrx.mdgets a section and an "Our patches" entry.docs/serve.md's auto-routing note, which said "97-99 tok/s until fork q4nx: document the two Q8 code layouts behind one chunk size #55 is pinned" (added in serve: --device auto keeps Vulkan for architectures HRX does not map, --mtp and --mmproj #271), now carries the measured numbers.docs/laya.mdpolicy note.🤖 Generated with Claude Code