evalstone/scripts/run_multi_machine.sh

59 lines
2.3 KiB
Bash
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
# ============================================================
# 多机器 benchmark 分发脚本
# 根据当前进度把 official suite 拆到 3 台机器跑
# 用法: bash scripts/run_multi_machine.sh
# ============================================================
set -euo pipefail
PASS="${SSHPASS:-sskj2025}"
SSH="sshpass -p $PASS ssh -o StrictHostKeyChecking=no -o ConnectTimeout=10"
# 机器配置
MACHINES=(
"174.1.51.1:/data1/sora" # gpu048 / P800-01
"174.1.51.2:/data1/sora" # gpu049 / P800-02
"174.1.51.4:/data1/sora" # gpu051 / P800-04
)
COMMON_ARGS="--model DeepSeek-V4-Flash-Int8 --api-url http://localhost:30000/v1 --dataset-dir /data1/sora/evalscope --output-dir /data1/sora/evalscope/output --batch-size 4 --thinking --limit none --seed 42"
# 分发方案:尽量让 3 台机器同时跑完
# 估算aime25/aime26 12 runlive_code_bench 5 run其余 1 run
# 注意gpu051 已经在跑 official suite 的 aime25/aime26/live_code_bench不要中断它。
# 它跑完后继续跑 hle。
# Machine 1 (gpu048): SWE + Agent约 30-50h取决于 SWE 镜像)
M1_BENCHES="swe_bench_verified,tau2_bench"
M1_FOLDER="DP4-flash-int8-thinking-gpu048"
# Machine 2 (gpu049): 知识与长上下文(约 12-18h
M2_BENCHES="mmlu_pro,gpqa_diamond,longbench_v2"
M2_FOLDER="DP4-flash-int8-thinking-gpu049"
# Machine 3 (gpu051): 数学/代码 multi-run + hle约 30hhle 在 multi-run 跑完后启动)
M3_BENCHES="aime25,aime26,live_code_bench,hle"
M3_FOLDER="DP4-flash-int8-thinking-gpu051"
run_on_machine() {
local ip_base="$1"
local ip="${ip_base%%:*}"
local base_dir="${ip_base##*:}"
local datasets="$2"
local folder="$3"
local cmd="cd $base_dir/evalscope && nohup python bash/run.py --datasets $datasets --folder-name $folder $COMMON_ARGS > $base_dir/evalscope/logs/run_${folder}.log 2>&1 &"
echo "==> 在 $ip 启动: $folder ($datasets)"
$SSH root@$ip "$cmd"
}
run_on_machine "${MACHINES[0]}" "$M1_BENCHES" "$M1_FOLDER"
run_on_machine "${MACHINES[1]}" "$M2_BENCHES" "$M2_FOLDER"
run_on_machine "${MACHINES[2]}" "$M3_BENCHES" "$M3_FOLDER"
echo ""
echo "==================================================="
echo "已分发到 3 台机器,各自日志在 logs/run_*.log"
echo "==================================================="