Correct an ngram verdict that was measured on a broken build - #49
Merged
Conversation
The runbook claimed the long-copy case was settled. It was measured on the installed engine, which pins b10628 -- 49 commits short of llama.cpp PR #27812, the Vulkan graph-optimiser fix. That bug let the target accept draft tokens it had not chosen, which made the acceptance counter meaningless, so the numbers should never have been written down as a verdict. Re-measured on b10715, which contains the fix, same Vulkan backend, seven samples per cell. The conclusion survives and the reasoning behind it does not: the bug had been *flattering* ngram, not handicapping it. Prose reads 0.87x at 47% acceptance before the fix and 0.65x at 24% after, so the recorded 0.88x was itself an over-estimate. Long copy-heavy prompts are where prompt-lookup does least badly (0.88x) rather than where it wins, and its acceptance does climb from 0% to 58% -- the objection to the original test was sound, it just did not rescue the result. MTP's figures are unchanged across the fix (1.62x -> 1.61x, acceptance identical), because short and mostly-correct drafts left no room for spurious accepts. Its copy-heavy number is restated from the good build at 1.82x. Adds the operational half of this: cli.LLAMA_BUILD still pins the pre-fix build, so anything measured on the installed engine reproduces the invalid numbers. Point SWEEP_LLAMA_DIR at a newer build until the pin moves. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Fx1NpWPBagVMvfFYp29yfj
|
Warning Review limit reachedNext included review available in 5 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What was wrong
The runbook's speculation section claimed the long copy-heavy case was settled.
It was measured on the installed engine, which pins b10628 — 49 commits
short of llama.cpp PR #27812,
the Vulkan graph-optimiser fix. That bug let the target accept draft tokens it
had not chosen, making the acceptance counter meaningless. Those numbers should
not have been written down as a verdict, and this corrects them.
Re-measured on b10715
Contains the fix (
compare b387ddfd...b10715= ahead 38, behind 0), same Vulkanbackend,
dev/spec-sweep.py, seven samples per cell plus a discarded warm-up,unique prefix and
cache_prompt=false, served model checked either side.draft-mtpngram-cachedraft-mtp,ngram-cacheWhat changed in the conclusion
The verdict survives; the reasoning behind it does not.
was that invalid acceptance numbers denied ngram a fair hearing. Prose reads
0.87× at 47% acceptance before the fix and 0.65× at 24% after — so the
recorded 0.88× was itself an over-estimate.
long-copyliftsacceptance from 0% to 58%, and is ngram's best case at 0.88× against 0.65× on
prose. Copy-heavy work is where prompt-lookup does least badly, not where it
wins.
mostly-correct drafts left no room for spurious accepts. Its copy-heavy figure
is restated from the good build at 1.82×.
The operational half
cli.LLAMA_BUILDstill pins the pre-fix build, so anything measured on theinstalled engine reproduces the invalid numbers — which is exactly how this
mistake happened. The runbook now says so and points at
SWEEP_LLAMA_DIR.Moving the pin is a separate change with its own testing and is not done here.
Docs only; no code paths touched.
Related: #48 carries the same result in
docs/explanations/going-faster.md.🤖 Generated with Claude Code
https://claude.ai/code/session_01Fx1NpWPBagVMvfFYp29yfj