comparison / eval /run_generation.sh
Cccccz's picture
Add files using upload-large-folder tool
f70ac4f verified
Raw History Blame Contribute Delete
1.36 kB
#!/usr/bin/env bash
# Phase 1: generate the Extended-251 videos for every strategy, one base at a time,
# sharded by prompt across the GPUs in $GPUS (default 0-3). Generation runs in the base self_forcing env --
# the same interpreter and package set the speed study used -- so the eval videos
# are produced by exactly the model stack that was benchmarked.
set -u
C=/local/zoubin/cz/projects/comparison
PY=/local/zoubin/cz/envs/self_forcing/bin/python
LOG="$1"; shift
NSHARDS=${NSHARDS:-4}
GPUS=(${GPUS:-0 1 2 3})
export SSL_CERT_FILE=/etc/pki/tls/certs/ca-bundle.crt
export TORCH_HOME=/local/zoubin/cz/.cache/torch
export HF_HOME=/local/zoubin/cz/.cache/huggingface
export HF_HUB_CACHE=/local/zoubin/cz/.cache/huggingface/hub
export TRANSFORMERS_CACHE=/local/zoubin/cz/.cache/huggingface/hub
export XDG_CACHE_HOME=/local/zoubin/cz/.cache
cd "$C"
for BASE in ${BASES:-self_forcing causal_forcing}; do
echo "=== generation: $BASE ($(date +%H:%M:%S)) ==="
pids=()
for i in $(seq 0 $((NSHARDS-1))); do
CUDA_VISIBLE_DEVICES=${GPUS[$i]} nohup $PY eval/generate_eval.py \
--base "$BASE" --shard $i --num-shards $NSHARDS --out-root eval_out \
> "$LOG/gen_${BASE}_$i.log" 2>&1 &
pids+=($!)
done
for p in "${pids[@]}"; do wait "$p"; done
echo "=== generation done: $BASE ($(date +%H:%M:%S)) ==="
done
echo "ALL GENERATION DONE"