Download code/run_stage2_graphs.sh from LeoMaxwell/vlm-twin-spec-decoding: direct link, hf CLI and curl.
- Browser
- Download file 5.38 kB
-
https://huggingface.co/LeoMaxwell/vlm-twin-spec-decoding/resolve/main/code/run_stage2_graphs.sh
- Command line
-
hf download hf://LeoMaxwell/vlm-twin-spec-decoding/code/run_stage2_graphs.sh
-
curl -L -o run_stage2_graphs.sh https://huggingface.co/LeoMaxwell/vlm-twin-spec-decoding/resolve/main/code/run_stage2_graphs.sh
5.38 kB
| # Stage 2: engineering rung 1 = CUDA graphs + piecewise compile (drop enforce-eager) | |
| # Chain T (GPU2): 8B twin draft. smoke(gate) -> eager refs -> graph ladder | |
| # Chain F (GPU3): 4B blind draft. smoke(gate) -> graph ladder, eager fallback on gate fail | |
| S=/testessfs10/users/zeyu.zhang/wangyu_ssd | |
| ST=$S/stage0 | |
| PY=$S/vllm_env/bin/python | |
| cd $ST | |
| export PYTHONPATH=$ST PYTHONDONTWRITEBYTECODE=1 | |
| export PATH=$S/vllm_env/bin:$PATH | |
| export HF_HOME=$S/hf_cache HF_ENDPOINT=https://hf-mirror.com | |
| export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True | |
| M8=Qwen/Qwen3-VL-8B-Thinking | |
| D8=cyankiwi/Qwen3-VL-8B-Thinking-AWQ-4bit | |
| D4=cyankiwi/Qwen3-VL-4B-Thinking-AWQ-8bit | |
| COMMON="--parquet testmini.parquet --pids-from res05_qwen_thinking.jsonl --n 20 --max-tokens 1024 --gpu-mem-util 0.60 --max-model-len 3584" | |
| SMOKEC="--parquet testmini.parquet --pids-from res05_qwen_thinking.jsonl --n 4 --max-tokens 256 --gpu-mem-util 0.60 --max-model-len 3584" | |
| B=$S/stage1 | |
| rm -f $B/og8_*.jsonl $B/og4_*.jsonl $B/DONE_og8 $B/DONE_og4 $B/FAIL_og8 $B/FAIL_og4 | |
| gate() { # $1=log $2=threshold(percent) | |
| A=$(grep -o "Draft acceptance rate: [0-9.]*" "$1" | tail -1 | sed "s/.*: //") | |
| awk -v a="${A:-0}" -v t="$2" "BEGIN{exit (a>=t)?0:1}" | |
| } | |
| nohup bash -c " | |
| CUDA_VISIBLE_DEVICES=2 $PY stage1_spec_smoke.py --mode spec --model $M8 --draft $D8 --gamma 6 $SMOKEC --out $B/og8_smoke.jsonl > $B/logs/og8_smoke.log 2>&1 | |
| $(declare -f gate) | |
| if gate $B/logs/og8_smoke.log 50; then GOK=1; else GOK=0; touch $B/FAIL_og8; fi | |
| CUDA_VISIBLE_DEVICES=2 $PY stage1_spec_smoke.py --mode vanilla --model $M8 $COMMON --enforce-eager --out $B/og8_evan.jsonl > $B/logs/og8_evan.log 2>&1 | |
| CUDA_VISIBLE_DEVICES=2 $PY stage1_spec_smoke.py --mode spec --model $M8 --draft $D8 --gamma 6 $COMMON --enforce-eager --out $B/og8_estrict_g6.jsonl > $B/logs/og8_estrict_g6.log 2>&1 | |
| if [ \$GOK = 1 ]; then | |
| CUDA_VISIBLE_DEVICES=2 $PY stage1_spec_smoke.py --mode vanilla --model $M8 $COMMON --out $B/og8_van1.jsonl > $B/logs/og8_van1.log 2>&1 | |
| CUDA_VISIBLE_DEVICES=2 $PY stage1_spec_smoke.py --mode spec --model $M8 --draft $D8 --gamma 6 $COMMON --out $B/og8_strict_g6.jsonl > $B/logs/og8_strict_g6.log 2>&1 | |
| VLLM_SPEC_RELAX_LOGTAU=0.693 CUDA_VISIBLE_DEVICES=2 $PY stage1_spec_smoke.py --mode spec --model $M8 --draft $D8 --gamma 6 $COMMON --out $B/og8_relax_g6.jsonl > $B/logs/og8_relax_g6.log 2>&1 | |
| CUDA_VISIBLE_DEVICES=2 $PY stage1_spec_smoke.py --mode vanilla --model $M8 $COMMON --out $B/og8_vanm.jsonl > $B/logs/og8_vanm.log 2>&1 | |
| CUDA_VISIBLE_DEVICES=2 $PY stage1_spec_smoke.py --mode spec --model $M8 --draft $D8 --gamma 8 $COMMON --out $B/og8_strict_g8.jsonl > $B/logs/og8_strict_g8.log 2>&1 | |
| VLLM_SPEC_RELAX_LOGTAU=0.693 CUDA_VISIBLE_DEVICES=2 $PY stage1_spec_smoke.py --mode spec --model $M8 --draft $D8 --gamma 8 $COMMON --out $B/og8_relax_g8.jsonl > $B/logs/og8_relax_g8.log 2>&1 | |
| CUDA_VISIBLE_DEVICES=2 $PY stage1_spec_smoke.py --mode vanilla --model $M8 $COMMON --out $B/og8_van2.jsonl > $B/logs/og8_van2.log 2>&1 | |
| fi | |
| touch $B/DONE_og8 | |
| " > /dev/null 2>&1 & | |
| disown | |
| nohup bash -c " | |
| sleep 240 | |
| VLLM_SPEC_DRAFT_BLIND_MM=1 CUDA_VISIBLE_DEVICES=3 $PY stage1_spec_smoke.py --mode spec --model $M8 --draft $D4 --gamma 6 $SMOKEC --out $B/og4_smoke.jsonl > $B/logs/og4_smoke.log 2>&1 | |
| $(declare -f gate) | |
| if gate $B/logs/og4_smoke.log 40; then | |
| CUDA_VISIBLE_DEVICES=3 $PY stage1_spec_smoke.py --mode vanilla --model $M8 $COMMON --out $B/og4_van1.jsonl > $B/logs/og4_van1.log 2>&1 | |
| VLLM_SPEC_DRAFT_BLIND_MM=1 CUDA_VISIBLE_DEVICES=3 $PY stage1_spec_smoke.py --mode spec --model $M8 --draft $D4 --gamma 6 $COMMON --out $B/og4_strict_g6.jsonl > $B/logs/og4_strict_g6.log 2>&1 | |
| VLLM_SPEC_DRAFT_BLIND_MM=1 VLLM_SPEC_RELAX_LOGTAU=0.693 CUDA_VISIBLE_DEVICES=3 $PY stage1_spec_smoke.py --mode spec --model $M8 --draft $D4 --gamma 6 $COMMON --out $B/og4_relax_g6.jsonl > $B/logs/og4_relax_g6.log 2>&1 | |
| CUDA_VISIBLE_DEVICES=3 $PY stage1_spec_smoke.py --mode vanilla --model $M8 $COMMON --out $B/og4_vanm.jsonl > $B/logs/og4_vanm.log 2>&1 | |
| VLLM_SPEC_DRAFT_BLIND_MM=1 CUDA_VISIBLE_DEVICES=3 $PY stage1_spec_smoke.py --mode spec --model $M8 --draft $D4 --gamma 8 $COMMON --out $B/og4_strict_g8.jsonl > $B/logs/og4_strict_g8.log 2>&1 | |
| VLLM_SPEC_DRAFT_BLIND_MM=1 VLLM_SPEC_RELAX_LOGTAU=0.693 CUDA_VISIBLE_DEVICES=3 $PY stage1_spec_smoke.py --mode spec --model $M8 --draft $D4 --gamma 8 $COMMON --out $B/og4_relax_g8.jsonl > $B/logs/og4_relax_g8.log 2>&1 | |
| CUDA_VISIBLE_DEVICES=3 $PY stage1_spec_smoke.py --mode vanilla --model $M8 $COMMON --out $B/og4_van2.jsonl > $B/logs/og4_van2.log 2>&1 | |
| else | |
| touch $B/FAIL_og4 | |
| CUDA_VISIBLE_DEVICES=3 $PY stage1_spec_smoke.py --mode vanilla --model $M8 $COMMON --enforce-eager --out $B/og4_van1.jsonl > $B/logs/og4_van1.log 2>&1 | |
| VLLM_SPEC_DRAFT_BLIND_MM=1 CUDA_VISIBLE_DEVICES=3 $PY stage1_spec_smoke.py --mode spec --model $M8 --draft $D4 --gamma 6 $COMMON --enforce-eager --out $B/og4_strict_g6.jsonl > $B/logs/og4_strict_g6.log 2>&1 | |
| VLLM_SPEC_DRAFT_BLIND_MM=1 VLLM_SPEC_RELAX_LOGTAU=0.693 CUDA_VISIBLE_DEVICES=3 $PY stage1_spec_smoke.py --mode spec --model $M8 --draft $D4 --gamma 6 $COMMON --enforce-eager --out $B/og4_relax_g6.jsonl > $B/logs/og4_relax_g6.log 2>&1 | |
| CUDA_VISIBLE_DEVICES=3 $PY stage1_spec_smoke.py --mode vanilla --model $M8 $COMMON --enforce-eager --out $B/og4_van2.jsonl > $B/logs/og4_van2.log 2>&1 | |
| fi | |
| touch $B/DONE_og4 | |
| " > /dev/null 2>&1 & | |
| disown | |
| echo LAUNCHED_STAGE2 | |