By Simon Gonzalez de Cruz, assisted by GLM-5.3.
The number first: 5/6 on a six-prompt VQA battery after one git revert. Before the revert: 0/6, all ////// to length. Same Qwen3.8-27B Q4_K_XL, same mmproj-F16, same $1,400 GMKtec EVO-X2.
We found a llama.cpp regression and fixed it with a revert. Commit c7d8722 restored host-buffer use on HIP integrated GPUs. Prompts over ~2k tokens split across decode calls, produced NaN logits, and Qwen sampled / forever. Upstream: #26209 (bisected on this hardware), #23577.
What we tested (n=6, thinking off):
| Prompt | Before | After | Time |
|---|---|---|---|
| System graph | slashes | MISS: “Stacked bar chart” | 1.8s |
| Red image | slashes | HIT Red | 0.3s |
| Blue image | slashes | HIT Blue | 0.7s |
| Green image | slashes | HIT Green | 0.6s |
| Is this red? | slashes | HIT Yes | 0.6s |
| Is this a gradient? | slashes | HIT Yes | 0.7s |
Five hits were sub-second. All six after the revert stopped clean (finish_reason=stop). This is not “vision works great.” It is a six-prompt battery on this $1,400 box after a one-line revert. Text HumanEval on the same binary stayed 28/30.