unparallelled commited on
Commit
275cf6f
·
verified ·
1 Parent(s): 6f54ee3

Upload scripts/cut400.sh with huggingface_hub

Browse files
Files changed (1) hide show
  1. scripts/cut400.sh +32 -0
scripts/cut400.sh ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env bash
2
+ # Stop the AdamW control arm cleanly once step 400 is checkpointed.
3
+ set -uo pipefail; cd "$(dirname "$0")"
4
+ say(){ echo "[$(date -u +%H:%M:%S)] $*"; }
5
+ LOG=p1_const_adamw_logs/train.log
6
+ CK=checkpoints_const_adamw/rank_0/blumodelcp_run2_step_400.ckpt
7
+ SCRIPT_PID=30792
8
+
9
+ say "waiting for step 400 checkpoint to be written safely..."
10
+ for i in $(seq 1 360); do
11
+ grep -qa 'Saved: .*step_400\.ckpt (safely)' "$LOG" && { say "step 400 checkpoint confirmed safe"; break; }
12
+ kill -0 "$SCRIPT_PID" 2>/dev/null || { say "chain already exited"; break; }
13
+ sleep 10
14
+ done
15
+ grep -qa 'Saved: .*step_400\.ckpt (safely)' "$LOG" || { say "ABORT: no safe step-400 ckpt, leaving run alone"; exit 1; }
16
+
17
+ sleep 5 # let the .zero_g1 shard flush
18
+ say "sizes: $(stat -Lc%s "$CK" 2>/dev/null) + $(stat -Lc%s "${CK%.ckpt}.zero_g1" 2>/dev/null)"
19
+
20
+ # parent script first so it cannot advance to the next stage, then the trainer
21
+ kill "$SCRIPT_PID" 2>/dev/null && say "stopped abl_phase1.sh ($SCRIPT_PID)"
22
+ for p in $(nvidia-smi --query-compute-apps=pid --format=csv,noheader); do
23
+ kill "$p" 2>/dev/null && say "TERM trainer $p"
24
+ done
25
+ for i in $(seq 1 30); do
26
+ [ -z "$(nvidia-smi --query-compute-apps=pid --format=csv,noheader)" ] && break; sleep 2; done
27
+ for p in $(nvidia-smi --query-compute-apps=pid --format=csv,noheader); do
28
+ kill -9 "$p" 2>/dev/null && say "KILL -9 $p"; done
29
+ sleep 3
30
+ say "GPU now: $(nvidia-smi --query-gpu=memory.used --format=csv,noheader)"
31
+ say "last step: $(grep '^step' "$LOG" | tail -1)"
32
+ say "CUT_DONE"