| #!/usr/bin/env bash |
| |
| set -uo pipefail |
| cd /egr/research-slim/ghoshavr/reasoning-by-superposition-main |
| export WANDB_MODE=offline |
| TORCH=/egr/research-slim/ghoshavr/conda-envs/superposition/bin/torchrun |
| PY=/egr/research-slim/ghoshavr/conda-envs/superposition/bin/python |
| mkdir -p logs figs/diag_L15 |
|
|
| echo "=== killing old diag_L15 runs ===" |
| pkill -9 -f 'run.py args/diag_L15_' 2>/dev/null || true |
| pkill -9 -f 'plot_diag_L15.py' 2>/dev/null || true |
| sleep 3 |
|
|
| "$PY" scripts/make_diag_split_configs.py |
|
|
| ARMS=( |
| diag_L15_promF095_btCE050 |
| diag_L15_promF095_btCE090 |
| diag_L15_promF095_btCE095 |
| diag_L15_promF099_btCE090 |
| diag_L15_promF095_btF095 |
| diag_L15_promCE090_btCE090 |
| diag_L15_promF095_btNONE |
| diag_L15_promF099_btCE050 |
| ) |
|
|
| for i in "${!ARMS[@]}"; do |
| name="${ARMS[$i]}" |
| port=$((29900 + i)) |
| CUDA_VISIBLE_DEVICES="$i" setsid nohup "$TORCH" \ |
| --standalone --nnodes 1 --nproc_per_node 1 --master_port "$port" \ |
| run.py "args/${name}.yaml" > "logs/${name}.log" 2>&1 < /dev/null & |
| echo "gpu$i port$port $name" |
| done |
|
|
| setsid nohup "$PY" scripts/plot_diag_L15.py --watch 120 \ |
| > logs/plot_diag_L15.log 2>&1 < /dev/null & |
| echo "plot watcher $!" |
|
|
| sleep 150 |
| echo '=== status ===' |
| for name in "${ARMS[@]}"; do |
| echo "--- $name" |
| grep -E 'acc-stage|train epoch|Traceback|Error|nohup' "logs/${name}.log" | tail -4 || true |
| done |
| nvidia-smi --query-gpu=index,memory.used,utilization.gpu --format=csv,noheader || true |
|
|