Buckets:
| # cwm3/eval/run_joint_evals_f1_kpf.sh — LANE F1 (2026-09-17; pre-registration docs/decisions.md 2026-09-17T19:33:12Z): paired evaluations of the keypoint-forecaster | |
| # distillation variant of the ECAN joint model, CPU, layout guards on. Runs I1_all_minus_road2drv_s<k>_final_ecan_kpf (ECAN main + the detached forecaster channel | |
| # through the zero-init injector) vs the FROZEN ECAN main I1_all_minus_road2drv_s<k>_final_ecan (read-only). Identical rows, driver populations from the v2 causal | |
| # kin targets; every tag idempotent. Mirrors eval/run_joint_evals_final_face.sh (pc_joint_locked.py private rows + flock append; MemAvailable wait). | |
| # finalcv_s<k>_allminusecankpf_vs_allminusecan (a-val) VALIDATION split — the ADOPTION decision (rev-2 discipline) | |
| # finalc_s<k>_allminusecankpf_vs_allminusecan (a) test split — confirmation (Δ [CI] + the acceptable-degradation margins) | |
| # finalcm_s<k>_allminusecankpf_vs_allminusecan masked protocol (human-verified driver-box mask) | |
| # finalc_s<k>_allminusecankpf_vs_k0 B1 on the variant (driver cells vs k0) | |
| # finalP_s<k>_allminusecankpf_vs_allminusecan P cells (eval/pressure_eval.py) | |
| # bash eval/run_joint_evals_f1_kpf.sh "0 1 2" | |
| set -u | |
| cd "$(dirname "$0")/.." | |
| PY=python | |
| export OMP_NUM_THREADS=4 MKL_NUM_THREADS=4 | |
| MASK=results/targets_kin_causal_routes_v2/driver_box_verified_mask.json | |
| MIN_AVAIL_GB="${MIN_AVAIL_GB:-8}" | |
| mem_wait() { while [[ $(awk '/MemAvailable/ {printf "%d", $2/1048576}' /proc/meminfo) -lt $MIN_AVAIL_GB ]]; do sleep 30; done; } | |
| have_tag() { grep -q ",$1,$2,$3," results/paired_compare.csv 2>/dev/null; } | |
| done_run() { [[ -f results/runs/$1/PRED_DONE && -f results/runs/$1/TRAIN_DONE ]]; } | |
| pc() { # split tag a b [extra args] (b = none with --b-k0) | |
| local split="$1" tag="$2" a="$3" b="$4"; shift 4 | |
| done_run "$a" || { echo "skip $tag ($a not finished)"; return; } | |
| [[ "$b" == none ]] || done_run "$b" || { echo "skip $tag ($b not finished)"; return; } | |
| for reg in manual engaged; do | |
| have_tag "$tag" "$reg" "$split" && continue | |
| mem_wait; echo "== $tag $reg ($split)" | |
| $PY eval/pc_joint_locked.py --regime "$reg" --split "$split" --a "results/runs/$a" --b "results/runs/$b" --tag "$tag" "$@" 2>&1 | grep -E "appended|Error|Traceback|File \"|LAYOUT GUARD" | cut -c1-220 | |
| done | |
| } | |
| pe() { # pressure_eval: tag a b | |
| local tag="$1" a="$2" b="$3" | |
| done_run "$a" && done_run "$b" || { echo "skip $tag"; return; } | |
| for reg in manual engaged; do | |
| have_tag "$tag" "$reg" test && continue | |
| mem_wait; echo "== $tag $reg (P cells)" | |
| $PY eval/pressure_eval.py --regime "$reg" --a "results/runs/$a" --b "results/runs/$b" --tag "$tag" 2>&1 | grep -E "appended|Error|Traceback|File \"|LAYOUT GUARD" | cut -c1-220 | |
| done | |
| } | |
| C="--kin-targets causal_routes --kin-version v2" | |
| for s in ${1:-0 1 2}; do | |
| AK=I1_all_minus_road2drv_s${s}_final_ecan_kpf; AM=I1_all_minus_road2drv_s${s}_final_ecan | |
| pc val "finalcv_s${s}_allminusecankpf_vs_allminusecan" $AK $AM $C | |
| pc test "finalc_s${s}_allminusecankpf_vs_allminusecan" $AK $AM $C | |
| pc test "finalcm_s${s}_allminusecankpf_vs_allminusecan" $AK $AM $C --mask-routes $MASK | |
| pc test "finalc_s${s}_allminusecankpf_vs_k0" $AK none $C --b-k0 | |
| pe "finalP_s${s}_allminusecankpf_vs_allminusecan" $AK $AM | |
| done | |
| echo F1_KPF_EVALS_DONE | |
Xet Storage Details
- Size:
- 3.31 kB
- Xet hash:
- e68270c8bb605c69c119f9e06df99d54b0a3e75220e5289d5e232f9919ccb8bc
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.