Repository navigation
Bump Lemonade: 1bit-MONSTER/lemonade 64eb505cc62a - #1175
Conversation
PR Reviewer Guide 🔍(Review updated until commit a2597ff)Here are some key observations to aid the review process:
|
bong-water-water-bong
left a comment
There was a problem hiding this comment.
VERDICT: READY — the pin delta is #37 and only #37, the shipped default is still 2 s (measured), and the knob does what the body says when it is set.
Re-derived on this box at 7e0e9ba (merge-base 14bda3c):
- Own diff is the submodule only:
git diff 14bda3c..7e0e9ba=third_party/lemonade | 2 +-,f44ff953->64eb505cc.scripts/lemond-onebit.shis untouched, as the body claims. - The pin's content delta is exactly #37, nothing else:
git diff f44ff953 64eb505ccin the fork = 2 files, +52/-2 —src/cpp/server/utils/platform/process_linux.cpp(the env-var reader and the twosleep_forcall sites) andtest/cpp/test_process_manager.cpp(the two new arms). - Nothing in this repository sets
LEMONADE_GPU_CLEANUP_WAIT_MS:git grep LEMONADE_GPU_CLEANUP_WAIT_MS pr-1175 -- ':!third_party'-> 0 lines. So the appliance at this pin behaves as it does atf44ff953. - The default is unchanged, measured rather than read: a built tree at
64eb505cc,./build/test_process_manager-> 14/14 PASS. Its two terminate log lines are18:03:37.952->18:03:40.052, i.e. 2.100 s for the default arm, while the whole binary including theLEMONADE_GPU_CLEANUP_WAIT_MS=0arm ran in 2.284 s. ctest -L cpp-cion that tree: 111/111 passed,cpp-ci = 85.44 sec*proc(the body says 85.81 s — same suite, ordinary run-to-run spread).- CI at this head:
build,CodeQLand all fiveAnalyzelegs SUCCESS,hw_gateSKIPPED,pr_agentpass.
Two notes, neither blocking:
- The pin is one commit behind fork main:
refs/heads/mainis now31f7814b(#38, docs, merged in the lemonade repo). Docs-only, so no build difference, but "the fork's main" in the body is no longer literally true — repin if the intent is main. - The bump table's HRX suite row is not in the PR yet ("running — this PR's comment will carry"). The
cpp-ciline above is the Lemonade-side half; post the onebit-recipe suite line before merge, or say it runs post-merge.
Release gate: Lemonade's LLM suite through the onebit recipe on HRX — green on this pin
The binary under test is the pin's own: The two skips are the ones every onebit run has had, both declared by the recipe itself, not failures:
Box conditions, because they move these numbers: load 17.88 at start (two foreign The single One scope note, so the pin does not look stale by accidentFork |
Moves third_party/lemonade from f44ff953bcd8 to the fork's main 64eb505cc62a.
7e0e9ba to
fbdba1d
Compare
|
Persistent review updated to latest commit fbdba1d |
bong-water-water-bong
left a comment
There was a problem hiding this comment.
Re-verdict at fbdba1d: READY, unchanged from my review at 7e0e9ba. The head moved, the content did not — third_party/lemonade is 64eb505cc62a at both heads (git ls-tree fbdba1d third_party/lemonade), and the PR's own diff against its merge-base is still third_party/lemonade | 2 +-, nothing else.
Everything in my earlier comment still stands (pin delta = #37 only; LEMONADE_GPU_CLEANUP_WAIT_MS appears nowhere in this repo; default 2 s measured at 2.100 s with 14/14 test_process_manager PASS; ctest -L cpp-ci 111/111).
The one nit is still open and now slightly older: fork main is 31f7814b (#38, docs — merged in the lemonade repo), so this pin is one commit behind it. Docs only, so no build difference; repin if "the fork's main" is what you want to say.
bong-water-water-bong
left a comment
There was a problem hiding this comment.
VERDICT: READY at fbdba1d1 — content-identical to my review at 7e0e9ba (third_party/lemonade is 64eb505cc62a at both heads, own diff still third_party/lemonade | 2 +-). Detail and evidence in the re-verdict above.
|
Persistent review updated to latest commit a2597ff |
…e server this pin ships" (#1212) docs/lemonade.md's HRX row said the ported `lemond` `f44ff953` is "the server this pin ships". True when written, false now: #1175 bumped third_party/lemonade to `64eb505cc62a`, so the row names a build the pin no longer carries — and this is the second time that sentence expired, which is why #1141 was closed unmerged (it said the pin was `ef0f3b49`, then #1126 landed and made the original text true again). The durable wording states the sha that was measured and points at `git ls-tree third_party/lemonade` for which one ships today, so the next bump cannot invalidate it. docs/releases.md's v2026.43 candidate table gets the same treatment in one word: "the sha `bump-lemonade`'s PR #1126 pins" -> "pinned", because that table is a dated record and the tip has moved since. Verified: site renders 57 pages rc 0 against this tree, the new sentence is in lemonade.html, one <h1> per page, no bare closing tag added (diff grep: 0), copyright rc 0. Co-authored-by: agent <agent@local>
Moves
third_party/lemonadefromf44ff953bcd8to the fork's main64eb505cc62a.Fork commits (last 30):
What this pin changes for the appliance: nothing, by construction
The one commit makes the fixed
sleep_for(seconds(2))that follows every backend child's termination (platform/process_linux.cpp, upstream #514) settable throughLEMONADE_GPU_CLEANUP_WAIT_MS. The default is still 2000 ms and nothing in this repository sets the variable —scripts/lemond-onebit.shis unchanged in this PR — so the board behaves exactly as it does atf44ff953, and the knob is opt-in for a deployment that has measured its own backends.Why it exists (measured on Strix Halo, onebit/HRX path,
max_loaded_models: 1so every load evicts): the exit-and-respawn the wait covers is 0.115 s median / 0.197 s max over 19 switches, while the wait itself is 2.055 s; 100 evict+load cycles at a shortened wait were clean (no failed load, no child exiting non-zero, no router retry, no leftover child). The NPU path pays the same constant (2.003 s of a 5.657 s median NPU switch) and is not covered by that measurement, which is why nothing sets it yet.Evidence (Strix Halo, this pin)
lemondbuilt from this shalemond version 2026.47.0~1760.64eb505c(cmake + Ninja,BUILD_WEB_APP=OFF)ctest -L cpp-cion this contentQwen3-0.6B/1.7B/4B-NPU-1bit,Qwen3.6-35B-A3B-NPU-1bit) —tools/model_sizes.py --all→ Errors: 0docs/tools/gen_api_boilerplate.py --check→ "API reference docs are up to date."docs/releases.md, "Bumps")1BIT SMOKE OKat 293.82 tok/s, load 200 in 2.974 s, 13 switches with 0 child failures and 0 retries (comment below)CI here has no GPU. The suite row is the one the bump table requires; the branch is
bump-lemonade/<sha>soscripts/weekly.sh's bumps stage picks it up.