File size: 1,900 Bytes
42c0d23
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/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 "════════════════════════════════════════════════════════════"