---
version: 0.21.3
date: 2026-06-18
headline: "Make it unmistakable: the GPU bench numbers are fak's OWN in-kernel engine, not llama.cpp — and cross-link the data + charts."
themes:
  - gpu
  - bench
  - docs
---

**TL;DR** — The shipped Qwen2.5-3B Q8 GPU bench (v0.21.1–v0.21.2) now states plainly, in the
data README and on the charts, that every fak number is fak's **own** in-kernel forward pass —
`llama.cpp` appears only as a labeled comparison baseline — and the data + figures are
cross-linked from `GPU-QWEN-RESULTS.md` and `docs/cli-reference.md`.

## Engine attribution (#gpu #bench)

- **What changed** — `experiments/gpu/README.md` and both charts now say explicitly that the
  throughput, the argmax-exact witness, and the generated text come from **fak's own kernel**
  (fak's pure-Go forward pass + fak's hand-written CUDA kernels `cuda_kernels.cu` → `libfakcuda.a`;
  the Q8 path is fak's own `fcuda_matvec_q8` GEMV). It runs the Qwen2.5-3B *weights* — there is
  **no `libllama`/`libggml`/`gguf`** in the path.
  - *Why:* the comparison chart puts fak next to `llama.cpp`; the legend ("fak — our own
    in-kernel engine" vs "llama.cpp (comparison baseline)") and footnotes remove any ambiguity
    about whose engine produced which bar.

## Cross-links (#docs)

- **What changed** — `GPU-QWEN-RESULTS.md` §7 and the `docs/cli-reference.md` "What's here" table now
  link the committed data (`experiments/gpu/` (private companion)) and the two SVG charts,
  so the figures are discoverable from the narrative docs and the knowledge base.

Data/docs only — no Go code, ABI, or behavior changed.
