Issues / #2840

#2840 [Feature]: Conversation cache (prompt reuse) for the Qwen3.6-35B-A3B (strata-q36) path

open · @patiwatcpe-byte · 0 comments · View on GitHub

BenchmarksServer & APINVIDIA / CUDAModels & quantsWindows

Description

I'd like the Qwen3.6 path to reuse the conversation prefix between requests, the way the Flash-Next engine does with its conversation-cache checkpoints (DETAILS.md, "Conversation cache"). Today every request on Qwen3.6 re-reads the whole conversation from token 0, which makes agent clients slow.

**Measured with BENCH.bat on the same PC** (RTX 4080 SUPER 16 GB, Ryzen 9 7900, 32 GB, Windows 11, engine 0.1.44.1, repo `296b59d`):

| | Qwen3.6-35B-A3B UD-Q4_K_XL, 128K | Flash-Next Coder IQ1_M, 64K |
|---|---|---|
| agent cache hit % | **0.00** | 68.71 |
| agent re-read tokens/session | **30,161** | 5 |
| agent turn first token | **6.69 s** (2.64–10.97) | 1.32 s |
| chat decode | 70.2 tok/s | 69.1 tok/s |
| 16K prompt read | 1,425 tok/s | 3,235 tok/s |

**In practice:** with Claude Code (`ANTHROPIC_BASE_URL=http://127.0.0.1:8080`), the system prompt and tool list are about 24K tokens and get read again on every turn. The same 10-section document task took 35 minutes on Qwen3.6 (17 turns) against 8 minutes on the Coder (20 turns). Decode speed is fine; the prompt re-reading is what costs the time.

As far as I can tell, `src/qwen35/q36_main.cpp` has no checkpoint or snapshot code yet. Since qwen35moe mixes Gated DeltaNet layers with a few attention layers, I assume it needs the same state checkpoints the Flash-Next path uses, rather than KV-prefix reuse alone.

**Workaround today:** I use the Flash-Next Coder for long agent sessions and Qwen3.6 for chat. Related but different: #2693 / #2698 / #2742 (int8 KV cache for this path).

Related on this site

Quick links to related pages.