Repository navigation
arc-b580-v0.10
Pre-release
Pre-release
·
8 commits
to arc-b580
since this release
Faster MTP decoding on the B580: about 9% faster than v0.8, with 432 MiB more free VRAM at 128K context. Outputs are identical to v0.8.
- Against v0.8 on the B580 (same public models and settings): MTP 71.9 -> 78.3 t/s (+8.9%); with a 32K trimmed draft head 73.8 -> 80.4 t/s (+9%). Live settings (MTP + n-gram drafts, 128K context): short prompts 69.9 -> 75.9 t/s (+8.6%), 48K 73.7 -> 78.7 (+6.8%), 115K 78.8 -> 83.5 (+6.0%).
- Rollback by replay (LLAMA_GDN_REPLAY, on): after each MTP verify, the delta-net layers replay the accepted tokens instead of keeping a saved copy of the state for every drafted token. Replay mode allocates only two state planes, which frees 432 MiB of VRAM at 128K context. Independent implementation of the technique described by llamADALL. LLAMA_GDN_REPLAY=0 turns it off.
- K/V-only MTP prompt pass (LLAMA_MTP_KV_ONLY, on): over a prompt, the draft head computes only the K/V rows it keeps, so long prompts read faster with MTP. Independent implementation of the technique described by GRIMOIRE. LLAMA_MTP_KV_ONLY=0 turns it off.
- One-graph MTP draft chain (LLAMA_MTP_CHAIN): all of a step's drafts in one decode, with the draft-vocabulary embeddings on the GPU. On by default for a GGUF with a trimmed draft head; LLAMA_MTP_CHAIN=1 forces it, =0 turns it off. Independent implementation of the technique described by llamADALL.
- New: scripts/bonsai/add_draft_head.py and freq_public.json add a trimmed 32K draft head to an MTP GGUF, using token counts from public text. See "Adding a trimmed draft head" in docs/bonsai-arc-b580.md.
- Tuned verify tiles on the B580 (GGML_SYCL_PTQ1_T2_TUNED): a sweep of the TernSYCL small-batch kernel at the model's shapes found faster bit-identical tiles for the 5-token MTP verify (FFN down 0.78x the time, FFN gate+up 0.90x, output head 0.88x, attention q+k+v 0.92x). On by default only on a B580; =1 forces them elsewhere, =0 turns them off.
- The SYCL backend uses the legacy Level Zero adapter unless SYCL_UR_USE_LEVEL_ZERO_V2 is set: plain decode about +1% on the B580.
- Fewer host synchronizations (LLAMA_SYNC_TRIM=3, LLAMA_MTP_CHAIN_TIGHT=15). LLAMA_SYNC_TRIM=0 restores the upstream behaviour.
- Diagnostics, off by default: LLAMA_MTP_DRAFT_TIMING, GGML_SYCL_OP_TIMING, GGML_SYCL_SYNC_TRACE.
- No code from llamADALL or GRIMOIRE is used. Every switch and credit is listed in docs/bonsai-arc-b580.md.
Windows x64 build of the arc-b580 branch for Intel Arc (SYCL). EXPERIMENTAL: built by CI and not yet tested on a
Windows machine. Needs a current Intel Arc driver (an old driver's ze_loader.dll crashes at start).
Unzip, put the model next to it, and run run-bonsai.bat. See README.txt and
docs/bonsai-arc-b580.md. Please report results in https://github.com/Torchit1/llama.cpp/discussions/1