From 6851940b4d323d4b9acbef7bdb35cfde243403f1 Mon Sep 17 00:00:00 2001 From: Frank Date: Sat, 12 Sep 2026 19:33:29 -0700 Subject: [PATCH] frank-large: EXPERIMENT - raise HALOGEN_MAX_TOK to 65536 Operator call, measuring what the prefill arena actually costs against upstream's do-not-raise warning. Rollback is one revert: the settled config was 16384, which made the 524288 pool fit at 26.6 GiB. --- .../frank-large/quadlet/frank-large.container | 25 +++++++++++-------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/dankclaw/frank-large/quadlet/frank-large.container b/dankclaw/frank-large/quadlet/frank-large.container index 7aed5bb..931dd29 100644 --- a/dankclaw/frank-large/quadlet/frank-large.container +++ b/dankclaw/frank-large/quadlet/frank-large.container @@ -104,17 +104,20 @@ Environment=HALOGEN_CTX=262144 # used to contend for one 262k pool. Environment=HALOGEN_KV_POOL_POSITIONS=524288 Environment=HALOGEN_KV_SLOTS=4 -# LOAD-BEARING. This line is what makes the doubling above real; do not -# "clean it up". The device budget here is 121 GiB - 67.7 resident weights -# - 24.0 reserved for the n-gram page cache and the OS = 29.5 GiB, and that -# one budget carries BOTH the KV pool and the prefill arena. At the upstream -# HALOGEN_MAX_TOK=32768 the arena is ~20.6 GiB, so 524288 positions need -# 35.0 GiB against 29.5 available and HALOGEN_KV_POOL_FIT silently lowers -# the pool back to 262144 — the deploy still reports healthy, so the -# regression is invisible unless you read the ledger. Halving the arena to -# ~10.5 GiB brings the 524288 need to ~24.9 GiB, which fits with ~3 GiB -# of margin, at about 8-9% of prefill throughput. -Environment=HALOGEN_MAX_TOK=16384 +# EXPERIMENT 2026-09-12 (operator call): raised to 65536 to measure what the +# arena actually costs, against upstream's warning that it "sizes a ~4 GB +# scratch arena, so do not raise it to the native context". +# +# Background on why this line matters at all. The device budget here is +# 121 GiB - 67.7 resident weights - 24.0 reserved for the n-gram page cache +# and the OS = 29.5 GiB, and that ONE budget carries both the KV pool and the +# prefill arena. Measured arena-side cost ("everything but the pool"): +# max_tok 16384 -> 12.2 GiB (524288 pool fits: 26.6 total) +# max_tok 32768 -> 20.6 GiB (524288 pool REFUSED at 35.0, fit lowers to 262144) +# HALOGEN_KV_POOL_FIT only ever LOWERS, never raises, and never below +# HALOGEN_CTX — and the deploy still reports healthy either way, so the pool +# you asked for is not necessarily the pool you got. Read the `kv pool:` lines. +Environment=HALOGEN_MAX_TOK=65536 # RAM left for the n-gram table the engine reads through the page cache. # Above the vendor's 20 because a dozen containers share this host; too low # and long prompts crawl with the disk busy.