Georgi Gerganov’s llama.cpp shipped b10326 on August 7, and the headline change is a single line buried in the release notes: “tts: account for the vocoder pass in the timings line (#26733).” The note explains that get_output runs the waveform work the pipeline defers to it, from a single trailing window to a full pass depending on the model. Measuring it, the maintainers write, “keeps the reported total and the audio to process ratio honest.”
That is the entire functional change. No new quantization, no new backend, no new model support. The release still ships the usual 27 assets across macOS, Linux, Windows, Android, and openEuler, with backends spanning CUDA 12 and 13, ROCm 7.2, Vulkan, OpenVINO, SYCL FP16 and FP32, HIP, OpenCL, and KleidiAI. But the substance of b10326 is not a feature. It is a correction to how llama.cpp reports its own performance, and that correction is more revealing than any speedup.
The vocoder is the final stage in a text-to-speech pipeline. The language model generates tokens, and the vocoder turns those tokens into an actual waveform. In llama.cpp’s TTS implementation, the pipeline defers that waveform synthesis to get_output. Depending on the model, that means either a single trailing window of audio or a full pass over the entire generated sequence. The b10326 fix makes the timing line count that work.
Why does this matter? Because before the fix, the reported timings for TTS were systematically understating the true cost of generating audio. The language-model portion got measured. The vocoder portion, the part that actually produces the sound a user hears, did not always make it into the total. The result was a benchmark that looked better than the reality. The fix does not make TTS faster. It makes the numbers honest.
That honesty is the throughline of llama.cpp as a project. The repository, now at 123,000 stars and 21,400 forks, has built its reputation on running large models on hardware that the big labs pretend does not exist. A MacBook Air running a 7B-parameter model at usable speed is the project’s founding miracle. But the project’s deeper contribution is its insistence on measurement. Every release includes timings, token-per-second figures, and memory usage. The b10326 note treats the reported total and the audio-to-process ratio as a contract with the user. Breaking that contract, even by omission, is a bug.
This is the opposite of the dynamic in commercial AI. Frontier labs report benchmarks that are carefully selected, heavily filtered, and frequently gamed. A model card from a major vendor will tell you the score on MMLU but not the variance across runs. An API provider will advertise a latency percentile that conveniently excludes the cold-start penalty. The incentives push toward presenting the best possible number. llama.cpp, by contrast, just fixed a timing bug that made its own product look slightly worse. The vocoder pass is real work. Counting it is the correct engineering choice. It is also, in the current AI economy, a mildly radical one.
The fix also signals something about where local AI is heading. TTS has become a serious workload for llama.cpp, not a toy. The project ships dedicated binaries and maintains a pipeline that defers waveform work for efficiency. That means the maintainers expect users to run text-to-speech locally at scale, on laptops and edge devices, not just in the cloud. The vocoder timing fix matters precisely because TTS is now common enough that its performance characteristics need to be accurate. A one-off experiment does not need honest timings. A production workload does.
The release list reinforces that read. The asset matrix now spans s390x mainframes, Adreno GPUs on Windows ARM, and Ascend 910b accelerators via ACL Graph on openEuler. That is not the footprint of a research toy. It is the footprint of software that has become infrastructure. The fact that b10326 disables the KleidiAI-enabled macOS build, linked to pull request #23780, is itself a sign of the project’s maturity: it would rather ship a known-good build than a broken accelerated one. The same discipline that fixes a timing line is the discipline that disables a backend rather than ship a regression.
There is a cultural dimension too. The llama.cpp release notes are terse, technical, and free of marketing. The b10326 note does not say “improved TTS performance.” It says the timings line was lying and now it is not. That register is increasingly rare in AI. The industry has learned to speak in press releases and capability demos. Gerganov and the contributors to this repository still speak in pull requests and honest measurements. The gap between those two registers is the gap between engineering and theater.
For AI builders, the lesson is concrete. If you are running local TTS with llama.cpp, your pre-b10326 benchmarks were optimistic. The audio-to-process ratio you measured was missing a component. Re-run your timing tests after this release. If you are building on top of this stack, the fix changes how you should budget CPU and memory for TTS workloads, particularly for models that require a full vocoder pass rather than a single trailing window. The distinction between those two modes is now visible in the timings, and it will show up in your profiling.
The deeper point is about the culture of measurement in AI software. The industry is drowning in benchmarks that are not comparable, not reproducible, and not honest. Every release of llama.cpp is a small counterweight: a project that measures what it actually does and reports the result without spin. The b10326 fix is a reminder that the most valuable thing an AI tool can ship is not a new capability but a correction to its own reported numbers. In a field where the numbers are the product, honesty is the feature.
The vocoder pass now shows up in the total. The reported total and the audio-to-process ratio are, as the maintainers put it, honest. That is the whole release. It is not a revolution. It is a single line of accounting, applied to a project that has spent years proving that local AI can be real. The fix does not make TTS faster. It makes the speed you measure the speed you get.