CausalGrok / code /scripts /check_run_status.sh
nileshsarkar-ai's picture
Upload code/scripts
42c0d23 verified
#!/usr/bin/env bash
# Check status of running Camelyon17 experiments
# Usage: bash scripts/check_run_status.sh
set -euo pipefail
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
cd "${ROOT}"
ACTIVE=$(pgrep -f "causalgrok_camelyon_v2" | wc -l)
echo "════════════════════════════════════════════════════════════"
echo " Camelyon17 Experiment Status"
echo "════════════════════════════════════════════════════════════"
echo ""
echo "Active processes: $ACTIVE / 10"
if [ "$ACTIVE" -eq 0 ]; then
echo ""
echo " ⏸ All experiments have completed!"
echo ""
echo " Next step: Run post-processing"
echo " bash scripts/post_process.sh"
echo ""
else
echo ""
echo " ⏳ Waiting for experiments to complete..."
echo ""
for run in experiments/runs/20260502-214859_grokking_n300_* experiments/runs/20260502-214859_standard_*; do
if [ -d "$run" ]; then
name=$(basename "$run")
epoch=$(tail -1 "$run/logs/train.log" 2>/dev/null | awk '{print $2}' | tr -d '|' || echo "0")
echo " $name: epoch $epoch / 3000"
fi
done
for run in experiments/runs/20260502-215247_camelyon_v2_*; do
if [ -d "$run" ]; then
name=$(basename "$run" | sed 's/20260502-215247_camelyon_v2_//')
epoch=$(tail -1 "$run/logs/train.log" 2>/dev/null | awk '{print $2}' | tr -d '|' || echo "0")
echo " $name: epoch $epoch / 700-900"
fi
done
echo ""
fi
echo "════════════════════════════════════════════════════════════"