FreshContextA context lab · Fife
Drawing
02 · Benchmarks
Sheet
2 of 3
Rev
A · 2026-10-01

Spark-X2.6-4B · file← Spark-X2.6-4B

Spark-X2.6-4B

XHToken's own Q4_K_M, which keeps some parts at higher precision. The only file, tested on 24 October.

Size
3.5 GB
Status
Benched 24 Oct 2026
Scored runs
15
Smallest Mac
16 GB measured, 64K context
Results15 scored · 95% intervals
SuiteScore95% interval PassedRuntime · profileRecorded
chainwalkspark-x2.6-4b-q4km-np1-c64k-b1184650.0%9.5–90.5Passed 1/2llama.cppextraction2026-10-24
contractspark-x2.6-4b-q4km-np1-c64k-b1184629.2%18.2–43.2Passed 14/48llama.cppextraction2026-10-24
enrichmentspark-x2.6-4b-q4km-np1-c64k-b1184685.2%73.4–92.3Passed 46/54llama.cppextraction2026-10-24
epistemicsspark-x2.6-4b-q4km-np1-c64k-b1184695.8%86.0–98.8Passed 46/48llama.cppextraction2026-10-24
groundingspark-x2.6-4b-q4km-np1-c64k-b1184672.0%63.6–79.1Passed 90/125llama.cppextraction2026-10-24
needlespark-x2.6-4b-q4km-np1-c64k-b1184687.3%79.8–92.3Passed 96/110llama.cppextraction2026-10-24
nullschemaspark-x2.6-4b-q4km-np1-c64k-b1184663.9%52.4–74.0Passed 46/72llama.cppextraction2026-10-24
screeningspark-x2.6-4b-q4km-np1-c64k-b1184698.3%91.1–99.7Passed 59/60llama.cppextraction2026-10-24
synthesisspark-x2.6-4b-q4km-np1-c64k-b1184681.7%70.1–89.4Passed 49/60llama.cppextraction2026-10-24
taggerspark-x2.6-4b-q4km-np1-c64k-b1184687.9%83.2–91.5Passed 211/240llama.cppextraction2026-10-24
tagger_nullablespark-x2.6-4b-q4km-np1-c64k-b1184671.7%65.7–77.0Passed 172/240llama.cppextraction2026-10-24
toolcallspark-x2.6-4b-q4km-np1-c64k-b118460.0%-0.0–6.0Passed 0/60llama.cppextraction2026-10-24
toolsspark-x2.6-4b-q4km-np1-c64k-b1184686.7%62.1–96.3Passed 13/15llama.cppextraction2026-10-24
toolscalespark-x2.6-4b-q4km-np1-c64k-b1184695.0%83.5–98.6Passed 38/40llama.cppextraction2026-10-24
worldviewspark-x2.6-4b-q4km-np1-c64k-b1184640.0%26.3–55.4Passed 16/40llama.cppextraction2026-10-24

Runs marked unenforced were measured on a suite that requires constrained decoding, on a server shown not to apply the schema: mlx_lm accepts it and ignores it, and a few other servers and models break it. Those numbers do not measure what the suite is designed to measure. They are kept and labelled rather than deleted.

SetupHow it was run

Of record

The measurement of record for this model.

The run’s own note: Single slot at 64K (benchmark rule), beside the full fleet. Vendor Q4_K_M is a mixed quant (BF16 token embeddings, Q8_0 attn-output and output head). shapegen and sitebuild excluded.

Server
1 slot, 64K of context per request, KV cache f16 (default), flash attention on, 1 suite at a time
Runtime
llama.cpp b11846 (1a24df163), plain upstream
Speed
decode 57.8 tokens/s, prefill 465.4 tokens/s (435.5 on prompts over 16K), medians. Single stream, full fleet resident (contended).
Peak memory
7.8 GB resident, with 64K of context allocated
Weights
3.5 GB file · sha256 91cb2811aebb47ac…
Coherence check
passed
Left out by plan
shapegen, sitebuild
Machine
Mac Studio (M1 Max, 64 GB)
Released
24 October 2026, bundle 2026-10-24-4174a46f

Memory by context

The same file and server, started at each context size in turn: what it held in memory and how fast it wrote on a short prompt. It measures memory and serving, not how well the model uses a long context. Released 24 October 2026, bundle 2026-10-24-743cfeb3.

The ladder’s own note: Context ladder 8K to 256K (native window 1M; the ladder tops out at 262144), single slot, f16 KV, beside the full fleet. Decode on a trivial prompt per rung; measures allocation and serving, not long-context quality.

ContextResident memorySwap in use, whole MacDecodeLoad
8K3.81 GB11.76 GB58.1 tokens/s3 s
16K4.09 GB11.76 GB58.3 tokens/s3 s
32K4.66 GB11.76 GB58.2 tokens/s3 s
64K5.78 GB11.76 GB58.2 tokens/s3 s
128K8.04 GB11.76 GB58.1 tokens/s3 s
256K12.54 GB11.76 GB58.2 tokens/s3 s
The recordHow it was made · how it was served · what went wrong · what happened to it

Rebuilt from the lab's records by Claude, an AI model. The results above come straight from the automated runs. How these pages are made.

FileSpark-X2.6-4B-Q4_K_M.gguf
FormatGGUF "Q4_K_M", 3,543,441,312 B: a mixed quant with BF16 embeddings and Q8_0 attn-output (variant doc)
Where fromdownloaded
Statusbenched 2026-10-24
Hugging FaceXHToken/Spark-X2.6-4B-GGUF

How it was made

Downloaded, not made here.

fieldvalue
repoXHToken/Spark-X2.6-4B-GGUF
fileSpark-X2.6-4B-Q4_K_M.gguf
revisionfe31f8d64890302cc3a1d365d700357b4b75ba77
size3,543,441,312 bytes (ls -l; matches the HF listing)
sha25691cb2811aebb47ac916aa619d27d4cdd7f4143106b7917accb8ead4cd7f5cbd9 (shasum -a 256; equals the HF LFS oid)
downloaded2026-10-24 ~10:12–10:15Z, huggingface_hub 1.33.0 with HF_XET_HIGH_PERFORMANCE=1
local pathmodels/spark-x2.6-4b/Spark-X2.6-4B-Q4_K_M.gguf
asked byAlan, 2026-10-24: "ok, there's a new spark model, we tested the previous one but it's now the same model with different training"

Header (read with gguf-py from llama.cpp-b11846):

  • architecture spark2_5, 36 blocks, 4 KV heads, context_length 1,048,576, general.file_type 15 (Q4_K_M);
  • token_embd [2560, 131072], vocabulary 131,072.

Tensor-type mix: the vendor's "Q4_K_M" is a heavy mix.

typetensorsbytes
Q4_K1081.49 GB
Q8_0370.76 GB: output.weight plus all 36 attn_output
BF16370.67 GB, incl. token_embd.weight (131,072 × 2,560)
Q6_K360.62 GB
F3273~0 (norms)

X2.5's vendor Q4_K_M was 2,600,224,352 B with the same shapes. The +0.94 GB is consistent with these higher-precision tensors, though X2.5's own mix is not on record (its file was deleted 2026-10-11, header never read).

How it was served

Machine: a Mac Studio (Mac13,1): Apple M1 Max, 64 GB.

labeldates (UTC)binary and versionctx / -np / KV / -fa / --jinja / --reasoning-formatprofilewhy this label exists
spark-x2.6-4b-q4km-np1-c64k-b118462026-10-24 10:17–12:22Zllama.cpp-b11846/build/bin/llama-server, version 0.7.0-dev, build 11846 (1a24df163)-c 65536 -np 1 (server log: n_slots = 1, n_ctx_slot = 65536) / KV default f16 / -fa on / --jinja / default / -ngl 999 --cache-ram 0extractionthe measurement of record: the pre-registered gauntlet (the family's decision log), run by a one-off script through eval/swapseat_gauntlet.sh with VACATE=0 and PAR=1, 15 suites
spark-x2.6-4b-q4km-np1-b11846 (context ladder)2026-10-24 12:22–12:24Zthe same binary-c 8192 … 262144 -np 1 -fa on --jinja -ngl 99, KV default f16—eval/ctx_ladder.py with LADDER_BIN, beside the full fleet

Seats held: none.

Decisions

  • 2026-10-24: the vendor Q4_K_M, to match X2.5's measured format (the family's decision log). The header shows the bit allocation differs from a plain Q4_K_M, which is recorded above.

What went wrong

  • The run log's llama_build and server_flags will be wrong when it's backfilled. The truth is build 11846 with the Served-as flags.
  • The ladder's KV column reads "?" (b11846's log format). KV is taken from RSS growth.

What happened to it

Downloaded 2026-10-24 → gauntlet of record and context ladder complete 2026-10-24 → decide/1 and edgefill pending. Re-downloadable from the repo and revision above.