Something went wrong. Try again.
bayes for days
Something went wrong. Try again.
sds overnight.sh
1.4 kB · 46 lines
Shell
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647#!/usr/bin/env bash# Overnight corpus: every size, smallest first. Self-recovering, load-guarded.set -uo pipefailexport PATH="$HOME/.cargo/bin:$PATH"export SDS_IMAGE=lance-blue/sds-runner-reportcd "$(dirname "$0")" || exit 1BOT=/work/target/release/sds-botLOG=overnight.logsay() { echo "[$(date +%H:%M:%S)] $*" | tee -a "$LOG"; }
# Wait until the machine can take another phase. Never proceeds blindly.settle() { for _ in $(seq 1 120); do load=$(awk '{print int($1)}' /proc/loadavg) free=$(free -g | awk '/^Mem:/{print $7}') [ "$load" -lt 8 ] && [ "$free" -ge 4 ] && return 0 say "waiting: load $load, ${free}G free" sleep 60 done say "machine never settled; going ahead at low concurrency anyway"}
phase() { size=$1; games=$2 say "=== $size: $games games ===" for attempt in 1 2 3; do settle if ./sds.sh bench --suite "suites/$size" --games "$games" --jobs 2 \ --bot "$BOT" --candidates \ --save-baseline "overnight-$size" \ --notes "generated-only, uncapped, ceiling denominator" >>"$LOG" 2>&1; then say "$size finished" return 0 fi say "$size attempt $attempt failed; retrying after a pause" sleep 120 done say "$size failed three times; moving on rather than stopping the night"}
say "start: $(uptime)"phase 1v1 180phase 2v2 180phase 4v4 150phase 8v8 120say "all phases done"