llamaperf
Oct 13, 2026
Throughput
24.2 t/s gen · 250.4 tokens/s prompt processing (prefill)Prompt processing measures input prefill speed; it does not tell you the time to first token.
Quant
UD-IQ3_XXS (GGUF)
KV cache
F16
Flash Attention
on
MTP (Multi-Token Prediction)
off
System RAM
128 GB

Summary

Historical public-source recovery from Qiu et al., arXiv:2609.14864v1, submitted 2026-09-14. Source: https://arxiv.org/html/2609.14864v1 . Measured columns from Supplement sections 4 and 5 are used; prediction columns B2/P1/P2 are excluded. This is not an independently executed benchmark. Hardware: Mac Studio M4 Max, 128 GB unified system memory, Darwin-arm64, BLAS/MTL. Source specifies 12 performance-core threads, not total physical CPU cores. GPU core count, full CPU core count, macOS version, clocks, power and temperature are unreported. RAM is not dedicated VRAM or measured residency. Model M16: Qwen3.8-27B, UD-IQ3_XXS, GGUF. Exact source repository/file: unsloth/Qwen3.8-27B-GGUF/Qwen3.8-27B-UD-IQ3_XXS.gguf; 10,934,860,704 bytes. The paper's coarser metadata quant label is IQ3_XXS; the full filename's dynamic UD-/XL identity is preserved when present. Verified current reference: https://huggingface.co/unsloth/Qwen3.8-27B-GGUF/blob/4ca720788d1e01f1bff70c033e0d0028fd02e502/Qwen3.8-27B-UD-IQ3_XXS.gguf . Pinned reference revision 4ca720788d1e01f1bff70c033e0d0028fd02e502; LFS SHA256 c0b7c3038681ed2e3040456c1dd45f9858b6c2290bed172c70388a94874f3eee. Current filename and byte count match the paper. The paper says the Studio files were SHA-verified, but it does not expose the historical per-file hash/revision in its tables; it names companion provenance files whose repository is not linked. Thus this current hash is reference metadata, not asserted as the measured historical bytes. Publisher model card identifies base/reference Qwen/Qwen3.8-27B; https://huggingface.co/unsloth/Qwen3.8-27B-GGUF/raw/4ca720788d1e01f1bff70c033e0d0028fd02e502/README.md . No model weights were downloaded. Runtime: source identifies the official llama.cpp b10794 archive for this Studio; upstream tag resolves to f9f09f02cc44d87d842dbd2d578857d92d4bb63b. The source does not publish the archive hash itself in its displayed table. The MacBook's unrecovered runtime revision and RTX directory label are different hosts and are not transferred here. Headline is depth 0: PP512 250.39 and TG128 24.24 tokens/s. All three same-model depth conditions: Prefix depth 0: native PP512 250.39 tokens/s (within-run CV 0.03%); native TG128 24.24 tokens/s (CV 0.31%). Prefix depth 4096: native PP512 239.79 tokens/s (within-run CV 0.04%); native TG128 23.81 tokens/s (CV 0.69%). Prefix depth 16384: native PP512 211.89 tokens/s (within-run CV 0.03%); native TG128 22.34 tokens/s (CV 0.55%). These are separate 512-token prefill and 128-token generation microbenchmarks, not an end-to-end 512-input/128-output conversation. Existing prefix depth is not configured serving context capacity. The depth-0 generation result does not follow the PP512 prompt. No TTFT was measured or reconstructed. The table's rates are rounded to two decimals; per-repetition raw timings are unavailable in the paper. Protocol: single sequence; fresh process for each configuration; five repetitions; 45-second settling; requested GPU layers 99; flash attention; F16 K/V. The chosen rows have 1 acquisition attempt per depth and pre-run macOS one-minute load average 2.14; this is not GPU utilization. Selection prefers complete protocol rows, then lower worst decode CV and lower pre-run load, without reference to prediction residuals. The gate applies to decode; prefill is retained without that gate. No between-run Studio repeatability campaign was performed; execution order was not randomized. No device-memory trace or resident-layer count was recorded. Maximal offload requested does not establish full accelerator residency. Physical GPU quantity 1 is source-protocol and pinned-implementation bound, not inferred from GPU cores or a form default: the paper names the local arm/Metal backend on this Studio and requested offload99. At b10794, Metal initializes MTLCreateSystemDefaultDevice; its implementation expressly uses one physical device, with any GGML_METAL_DEVICES additions being virtual devices on the same physical GPU. This establishes the participating physical Metal device count for the reported Metal protocol, not independent utilization telemetry or proof that all layers reside there. Sources: https://github.com/ggml-org/llama.cpp/blob/f9f09f02cc44d87d842dbd2d578857d92d4bb63b/ggml/src/ggml-metal/ggml-metal-device.m#L1091-L1114 ; https://github.com/ggml-org/llama.cpp/blob/f9f09f02cc44d87d842dbd2d578857d92d4bb63b/src/llama.cpp . Pinned llama-bench semantics: high_resolution_clock timestamps in nanoseconds bracket the timed test; per-repetition rate is (n_prompt+n_gen)*1e9/elapsed_ns, and headline avg_ts averages these rates. Existing depth is preprocessed or restored before the timer. Memory is cleared for each repetition; the requested context is n_prompt+n_gen+n_depth, so there is no single fixed serving-capacity field to fill. Warmup is enabled by the upstream default, but the paper does not print a complete command or separately attest warmup, batch/microbatch, mmap or every environment override; these remain unreported for this campaign. Sources: https://github.com/ggml-org/llama.cpp/blob/f9f09f02cc44d87d842dbd2d578857d92d4bb63b/tools/llama-bench/llama-bench.cpp . No speculative-decoding/MTP workload is described; source uses plain llama-bench PP/TG tests. The paper's frozen metadata snapshot reports 27,320,697,856 total parameters and 27,320,697,856 active parameters (100.0%), 65 layers, and modeled KV bytes at prefix0/4096/16384 of 0/1,090,519,040/4,362,076,160. These are author-derived metadata/modeling quantities, not independent tensor recounts or observed RAM/VRAM usage. They must not be used to assert measured memory residency. Architecture caveat for the paper’s Qwen3.8-27B ladder: its UD-IQ2_XXS artifact M15 has 64 layers and 26,895,998,464 parameters, while the other ladder files have 65 layers and 27,320,697,856 parameters. The IQ2 file therefore has one fewer layer and about 1.55% fewer parameters. This is not an architecture-controlled quantization comparison. The GGUF architecture label qwen35 does not rename the tested Qwen3.8 model family. The form rounds the structured PP/TG rates to one decimal; the exact source values are retained above.