38eb40ace4
One arm is not a comparison. On the Brontë corpus Base won held-out loss (2.814 against the instruct arm's 2.908) while instruct won instruction-following, and that trade is the open question for Skaldsong. It has to be re-measured on this corpus rather than carried over: BabyYarros is 12% larger and contemporary. Two entry points because the right one depends on a measurement rather than an argument. The box has 98 GiB free against an 18.4 GiB training footprint, so VRAM is not the constraint -- but VRAM was never the binding constraint on a GB10 that onboarding measured at 6x slower than ana-ml2 where compute predicts 2.7x, and where batching was not a throughput lever. If the box is already at its bandwidth roofline, a second job splits the same bandwidth and buys nothing. So: launch-yarros-4b-base.sh takes an explicit --allow-shared-gpu that bypasses the GPU-clear guard, and chain-yarros-4b-base.sh waits on the instruct run and refuses if it produced no adapter. The bypass is an argument and never a default, because the guard's normal job -- stopping a chain from firing into a live run -- is what keeps one lost run from becoming two. A shared-GPU launch stamps its own log with a warning that its s/it is not comparable to a solo run, since the harness is part of the number. Both carry the same gate guard as the instruct arm: refuse to start unless the leak gate report on disk says PASSED.
19 lines
845 B
Bash
Executable File
19 lines
845 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Chain the Qwen3-4B-Base arm behind the instruct arm.
|
|
#
|
|
# ⚠ Gated on the instruct run having actually produced an adapter. If that run died,
|
|
# this must not quietly start and consume the box: a chain that fires on failure turns
|
|
# one lost run into two.
|
|
set -uo pipefail
|
|
PREV=/home/infra-ops/r49-runs/yarros-4b-instruct-1ep
|
|
CHAINLOG=/home/infra-ops/r49-runs/chain-yarros-4b-base.log
|
|
exec >> "$CHAINLOG" 2>&1
|
|
echo "=== $(date -Is) chain armed, waiting on $PREV"
|
|
while [ -f "$PREV/run.pid" ] && kill -0 "$(cat "$PREV/run.pid")" 2>/dev/null; do sleep 60; done
|
|
echo "=== $(date -Is) instruct run finished"
|
|
if [ ! -f "$PREV/adapter/adapter_model.safetensors" ]; then
|
|
echo "=== REFUSING to chain: $PREV produced no adapter -- the instruct run did not succeed"
|
|
exit 1
|
|
fi
|
|
exec /home/infra-ops/r49-prep/launch-yarros-4b-base.sh
|