| set -euo pipefail | |
| # Run on HYDE. Sequential long-run queue with resumable checkpoints. | |
| # Usage: bash scripts/vacation_preload_hyde.sh | |
| cd ~/Development/SGJM | |
| mkdir -p results/vacation-preload logs/vacation | |
| export PYTHONPATH=src | |
| stamp() { date -u +%Y-%m-%dT%H:%M:%SZ; } | |
| run_job() { | |
| local name="$1"; shift | |
| echo "[$(stamp)] START $name" | tee -a "logs/vacation/$name.log" | |
| "$@" 2>&1 | tee -a "logs/vacation/$name.log" | |
| echo "[$(stamp)] END $name" | tee -a "logs/vacation/$name.log" | |
| } | |
| # 1) Continue/launch 1B ROCm long run | |
| if [ -f runs/sgjm-1b-rocm/final.pt ]; then | |
| echo "[$(stamp)] 1B appears complete (final.pt exists), skipping long run" | tee -a logs/vacation/sgjm-1b-rocm.log | |
| else | |
| run_job sgjm-1b-rocm python3 -m sgjm.training --size 1b --backend rocm --checkpoint-dir runs/sgjm-1b-rocm --steps 30000 --data-source python_extended --seq-len 2048 --batch-size 1 --lr 6e-5 | |
| fi | |
| # 2) 250M post-run stability pass | |
| run_job sgjm-250m-rocm-refresh python3 -m sgjm.training --size 250m --backend rocm --checkpoint-dir runs/sgjm-250m-rocm-refresh --steps 12000 --data-source python_extended --seq-len 1024 --batch-size 2 --lr 8e-5 | |
| # 3) 100M sweep pair | |
| run_job sgjm-100m-rocm-jepa005 python3 -m sgjm.training --size 100m --backend rocm --checkpoint-dir runs/sgjm-100m-rocm-jepa005 --steps 16000 --data-source python_extended --seq-len 1024 --batch-size 2 --lr 1.2e-4 | |
| run_job sgjm-100m-rocm-jepa025 python3 -m sgjm.training --size 100m --backend rocm --checkpoint-dir runs/sgjm-100m-rocm-jepa025 --steps 16000 --data-source python_extended --seq-len 1024 --batch-size 2 --lr 1.2e-4 | |
| echo "[$(stamp)] VACATION_PRELOAD_DONE" | tee -a logs/vacation/ALL_DONE.log | |