#!/usr/bin/env bash # Long-form for ONE arm, with a GPU 3 headroom guard for Scriberr (an on-demand tenant of GPU 3, ~5.5 GB # per job): a watcher kills the arm container if free memory on GPU 3 drops under 8 GiB. # usage: long_guarded.sh ARM PORT cd /tank/spikes/parakeet-ab arm=$1 port=$2 ( while docker inspect "$arm" >/dev/null 2>&1; do f=$(nvidia-smi -i 3 --query-gpu=memory.free --format=csv,noheader,nounits) if [ "$f" -lt 8192 ]; then echo "GUARD: GPU3 free ${f} MiB < 8192, stopping $arm" ; docker rm -f "$arm" >/dev/null; break; fi sleep 0.5 done ) & w=$! echo "phase start $(date +%s.%N) $arm" python3 code/run_long.py "$arm:$port" echo "phase end $(date +%s.%N) $arm" kill $w 2>/dev/null