Download scripts/eval_t128d.sh from unparallelled/BluScriptCP: direct link, hf CLI and curl.
- Browser
- Download file 2.64 kB
-
https://huggingface.co/unparallelled/BluScriptCP/resolve/main/scripts/eval_t128d.sh
- Command line
-
hf download hf://unparallelled/BluScriptCP/scripts/eval_t128d.sh
-
curl -L -o eval_t128d.sh https://huggingface.co/unparallelled/BluScriptCP/resolve/main/scripts/eval_t128d.sh
2.64 kB
| # t128d curve: 5 checkpoints x 2 lengths @x32, N=100. | |
| # Uses the harness's own fan-out (run_longeval.sh:163) instead of one job per | |
| # GPU: generation is LATENCY-bound (one full forward per token, no KV cache, | |
| # batch hardcoded to 1), so at ~5.6 GB/job on a 143 GB card the GPUs sit at | |
| # 4-25% util. Oversubscribe. Two invocations run in parallel, JOBS_PER_GPU=2 | |
| # each -> 8 slots each, 5 jobs each, all 10 concurrent, ~14 GB/GPU. | |
| set -uo pipefail | |
| cd "$(dirname "$0")" | |
| export LD_LIBRARY_PATH="$(cd ../.. && pwd)/Tensor-Implementations/lib:$(cd ../.. && pwd)/Profiler/lib:${LD_LIBRARY_PATH:-}" | |
| export PATH=/usr/local/cuda/bin:$PATH | |
| export PY=/root/Adhi/BluTrain/envv/bin/python | |
| L=eval_t128d_logs; mkdir -p "$L"; M="$L/master.log" | |
| HAY=data/mix128_b6_60/val_shard_00000.bin | |
| A680="CP_N_EMBD=1536 CP_N_LAYER=24 CP_N_HEAD=12 CP_N_KVHEAD=4 CP_FFN=4096 CP_WEIGHT_TYING=1" | |
| STEPS="100 200 300 350 360" | |
| say(){ echo "[$(date -u +%H:%M:%S)] $*" | tee -a "$M" >&2; } | |
| [ "$(stat -c%s "$HAY")" = 199754694 ] || { say "FATAL haystack differs"; exit 1; } | |
| $PY -c "import tiktoken,numpy" || { say "FATAL venv lacks tiktoken"; exit 1; } | |
| EXTRA=""; NAMES="" | |
| for s in $STEPS; do EXTRA="$EXTRA s${s}=t128d_s${s}.ckpt"; NAMES="$NAMES s${s}"; done | |
| blk(){ # prompt_len | |
| local PL="$1"; local O="ed_${PL}" | |
| A1B="$A680" HAY="$HAY" GEN_DATA_ROOT="data/mix128_b6_60" \ | |
| CKPT_EXTRA="${EXTRA# }" CKPTS="${NAMES# }" TASKS="niah_single" N=100 \ | |
| T=131072 YARN=32 YARN_ORIG=4096 PROMPT_LEN="$PL" \ | |
| GPUS="0,1,2,3" NP=1 JOBS_PER_GPU=2 OUT="$O" \ | |
| ./run_longeval.sh > "$L/len_${PL}.log" 2>&1 | |
| say " len $PL done: $(head -1 $O/summary.csv 2>/dev/null) | $(grep -h '^niah_single,' $O/summary.csv 2>/dev/null | tr -d '\r')" | |
| } | |
| say "=== t128d curve, 10 jobs, JOBS_PER_GPU=2 on 4 GPUs ===" | |
| blk 4096 & blk 32744 & | |
| wait | |
| say "=== RESULTS niah_single T=131072 x32 ORIG=4096 N=100 ===" | |
| hdr=$(head -1 ed_4096/summary.csv 2>/dev/null | tr -d '\r') | |
| say " column order: $hdr" | |
| printf " %-6s %8s %8s\n" step 4096 32744 | tee -a "$M" | |
| for s in $STEPS; do | |
| i=$(head -1 ed_4096/summary.csv 2>/dev/null | tr -d '\r' | tr ',' '\n' | grep -n "^s${s}$" | cut -d: -f1) | |
| j=$(head -1 ed_32744/summary.csv 2>/dev/null | tr -d '\r' | tr ',' '\n' | grep -n "^s${s}$" | cut -d: -f1) | |
| a=$(grep -h '^niah_single,' ed_4096/summary.csv 2>/dev/null | tr -d '\r' | cut -d, -f"${i:-99}") | |
| b=$(grep -h '^niah_single,' ed_32744/summary.csv 2>/dev/null | tr -d '\r' | cut -d, -f"${j:-99}") | |
| printf " %-6s %8s %8s\n" "$s" "${a:-.}" "${b:-.}" | tee -a "$M" | |
| done | |
| say "ref t128c: s300 99/92 s400 97/75 s450 93/69 s500 94/76 | t64 100/93 | old-t128 98/69" | |
| say "EVAL_T128D_DONE" | |