# E21b: load-time GPU memory, stock llama.cpp vs upstream PR 29827 Credit: the fix measured here is upstream llama.cpp PR 29827, "CUDA: cap FA convert buffer for quantized KV" (unmerged at time of test). It is not our work. We only built it and measured it. - `e21b_chain.ps1`: downloads the CUDA 12.8 redistributable (no admin), builds `llama-server` from the PR 29827 branch, then loads Qwen3.5-4B Q4_K_M with each binary at each config, reading VRAM with nvidia-smi and per-process shared GPU memory from the Windows counter. - `results.jsonl`: one row per (config, binary). Columns `cuda_compute_mib`, `host_compute_mib`, `kv_mib` are null because the server was run without `-v`. - `loaded` is false in every row. That was a log-check bug (the "server is listening" text was not found in stderr). The servers did load, in about 2 s, so the memory numbers are valid. Load-only numbers. No retrieval test was run here. Rerun (Windows, PowerShell, RTX 30-series): set `$ROOT` in the script, check out the PR branch into `$ROOT\llama.cpp\fork-29827`, put a stock `llama-server.exe` and the GGUF where the script expects, then `powershell -ExecutionPolicy Bypass -File e21b_chain.ps1`.