summaryrefslogtreecommitdiff
path: root/research/flossing/run_trm_chaos_onset_diag.sh
blob: b50d221a54fb8efbf862ceec5015dcde97f0c89e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/bin/bash
# Diagnose TRM joint Lyapunov on all saved single-GPU checkpoints.
# Plots Δλ (succ-fail) trajectory to find chaos onset.
set -e
cd /home/yurenh2/rrm/research/flossing
source /home/yurenh2/miniconda3/etc/profile.d/conda.sh
conda activate rrm
export CUDA_VISIBLE_DEVICES=2

CKPT_ROOT="/home/yurenh2/rrm/trm/checkpoints/Sudoku-extreme-1k-aug-1000-ACT-torch/pretrain_mlp_t_sudoku_singleGPU"

# Diagnose each saved ckpt (skip if output exists)
for STEP in 26041 52082 78123 104164 130205; do
  OUT=diag_trm_singleGPU_step${STEP}_512.npz
  LOG=diag_trm_singleGPU_step${STEP}.log
  if [ -f "$OUT" ]; then
    echo "[$(date '+%H:%M:%S')] step_${STEP} already diagnosed, skipping" | tee -a trm_chaos_diag.log
    continue
  fi
  echo "[$(date '+%H:%M:%S')] diagnose step_${STEP}..." | tee -a trm_chaos_diag.log
  python diagnose_trm_joint.py \
    --ckpt-root "$CKPT_ROOT" \
    --ckpt-name step_${STEP} \
    --n-samples 512 \
    --batch-size 16 --k-lyap 8 --t-ons 1 --seed 0 \
    --out $OUT \
    > $LOG 2>&1
  echo "[$(date '+%H:%M:%S')] step_${STEP} done" | tee -a trm_chaos_diag.log
done

echo "[$(date '+%H:%M:%S')] All TRM chaos onset diagnostics complete" | tee -a trm_chaos_diag.log