Merge branch 'main' of https://gitee.com/yy-fighting/sskj
This commit is contained in:
commit
8f89cf6dc2
@ -15,6 +15,12 @@ NUM_PROMPTS_MULTIPLIER="${NUM_PROMPTS_MULTIPLIER:-5}"
|
|||||||
TPS_MIN_GAIN_PCT="${TPS_MIN_GAIN_PCT:-2.0}"
|
TPS_MIN_GAIN_PCT="${TPS_MIN_GAIN_PCT:-2.0}"
|
||||||
PLATEAU_PATIENCE="${PLATEAU_PATIENCE:-2}"
|
PLATEAU_PATIENCE="${PLATEAU_PATIENCE:-2}"
|
||||||
|
|
||||||
|
# TTFT SLO early-stop settings.
|
||||||
|
# When ttft_p95_ms exceeds TTFT_SLO_MS, stop searching the current (ISL, OSL)
|
||||||
|
# shape and move on to the next scenario.
|
||||||
|
TTFT_SLO_MS="${TTFT_SLO_MS:-4000}"
|
||||||
|
ENABLE_TTFT_SLO_STOP="${ENABLE_TTFT_SLO_STOP:-1}"
|
||||||
|
|
||||||
# Keep the same random workload semantics as the fixed matrix baseline.
|
# Keep the same random workload semantics as the fixed matrix baseline.
|
||||||
# DATASET_PATH must contain at least SEARCH_MAX_CONCURRENCY times
|
# DATASET_PATH must contain at least SEARCH_MAX_CONCURRENCY times
|
||||||
# NUM_PROMPTS_MULTIPLIER valid two-turn conversations. Set this explicitly to
|
# NUM_PROMPTS_MULTIPLIER valid two-turn conversations. Set this explicitly to
|
||||||
@ -6,15 +6,15 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|||||||
EXPERIMENT_NAME="$(basename "$SCRIPT_DIR")"
|
EXPERIMENT_NAME="$(basename "$SCRIPT_DIR")"
|
||||||
|
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/lib.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/lib.sh"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/platform.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/platform.sh"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/config.env"
|
source "${SCRIPT_DIR}/config.env"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/adaptive_config.env"
|
source "${SCRIPT_DIR}/adaptive_config.env"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/adaptive_bench_lib.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/adaptive_bench_lib.sh"
|
||||||
|
|
||||||
ENGINE="sglang"
|
ENGINE="sglang"
|
||||||
ENGINE_PORT="$SGLANG_PORT"
|
ENGINE_PORT="$SGLANG_PORT"
|
||||||
@ -6,15 +6,15 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|||||||
EXPERIMENT_NAME="$(basename "$SCRIPT_DIR")"
|
EXPERIMENT_NAME="$(basename "$SCRIPT_DIR")"
|
||||||
|
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/lib.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/lib.sh"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/platform.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/platform.sh"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/config.env"
|
source "${SCRIPT_DIR}/config.env"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/adaptive_config.env"
|
source "${SCRIPT_DIR}/adaptive_config.env"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/adaptive_bench_lib.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/adaptive_bench_lib.sh"
|
||||||
|
|
||||||
ENGINE="sglang"
|
ENGINE="sglang"
|
||||||
ENGINE_PORT="$SGLANG_PORT"
|
ENGINE_PORT="$SGLANG_PORT"
|
||||||
@ -6,9 +6,9 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|||||||
EXPERIMENT_NAME="$(basename "$SCRIPT_DIR")"
|
EXPERIMENT_NAME="$(basename "$SCRIPT_DIR")"
|
||||||
|
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/lib.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/lib.sh"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/platform.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/platform.sh"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/config.env"
|
source "${SCRIPT_DIR}/config.env"
|
||||||
|
|
||||||
@ -522,7 +522,7 @@ run_parallel_config() {
|
|||||||
|
|
||||||
# Parse results.
|
# Parse results.
|
||||||
log "parsing ${config_label} results"
|
log "parsing ${config_label} results"
|
||||||
"$PYTHON" "${SCRIPT_DIR}/../../scripts/common/parse_backend.py" "$result_root" --backend sglang \
|
"$PYTHON" "${SCRIPT_DIR}/../../../scripts/common/parse_backend.py" "$result_root" --backend sglang \
|
||||||
>> "${phase_log_dir}/parse.log" 2>&1 || {
|
>> "${phase_log_dir}/parse.log" 2>&1 || {
|
||||||
log "WARNING: parser failed for ${config_label}; see ${phase_log_dir}/parse.log"
|
log "WARNING: parser failed for ${config_label}; see ${phase_log_dir}/parse.log"
|
||||||
}
|
}
|
||||||
@ -15,6 +15,12 @@ NUM_PROMPTS_MULTIPLIER="${NUM_PROMPTS_MULTIPLIER:-5}"
|
|||||||
TPS_MIN_GAIN_PCT="${TPS_MIN_GAIN_PCT:-2.0}"
|
TPS_MIN_GAIN_PCT="${TPS_MIN_GAIN_PCT:-2.0}"
|
||||||
PLATEAU_PATIENCE="${PLATEAU_PATIENCE:-2}"
|
PLATEAU_PATIENCE="${PLATEAU_PATIENCE:-2}"
|
||||||
|
|
||||||
|
# TTFT SLO early-stop settings.
|
||||||
|
# When ttft_p95_ms exceeds TTFT_SLO_MS, stop searching the current (ISL, OSL)
|
||||||
|
# shape and move on to the next scenario.
|
||||||
|
TTFT_SLO_MS="${TTFT_SLO_MS:-4000}"
|
||||||
|
ENABLE_TTFT_SLO_STOP="${ENABLE_TTFT_SLO_STOP:-1}"
|
||||||
|
|
||||||
# Keep the same random workload semantics as the fixed matrix baseline.
|
# Keep the same random workload semantics as the fixed matrix baseline.
|
||||||
# DATASET_PATH must contain at least SEARCH_MAX_CONCURRENCY times
|
# DATASET_PATH must contain at least SEARCH_MAX_CONCURRENCY times
|
||||||
# NUM_PROMPTS_MULTIPLIER valid two-turn conversations. Set this explicitly to
|
# NUM_PROMPTS_MULTIPLIER valid two-turn conversations. Set this explicitly to
|
||||||
@ -18,7 +18,7 @@ def load_result(result_root: Path) -> dict:
|
|||||||
|
|
||||||
|
|
||||||
def slo_status(ttft_p95_ms: float, tpot_mean_ms: float,
|
def slo_status(ttft_p95_ms: float, tpot_mean_ms: float,
|
||||||
ttft_limit_ms: float = 3000.0, tpot_limit_ms: float = 50.0) -> str:
|
ttft_limit_ms: float = 4000.0, tpot_limit_ms: float = 50.0) -> str:
|
||||||
ttft_ok = ttft_p95_ms < ttft_limit_ms
|
ttft_ok = ttft_p95_ms < ttft_limit_ms
|
||||||
tpot_ok = tpot_mean_ms < tpot_limit_ms
|
tpot_ok = tpot_mean_ms < tpot_limit_ms
|
||||||
if ttft_ok and tpot_ok:
|
if ttft_ok and tpot_ok:
|
||||||
@ -42,7 +42,7 @@ def main():
|
|||||||
parser = argparse.ArgumentParser()
|
parser = argparse.ArgumentParser()
|
||||||
parser.add_argument("--run-root", type=Path, required=True)
|
parser.add_argument("--run-root", type=Path, required=True)
|
||||||
parser.add_argument("-o", "--output", type=Path, default=Path("comparison.md"))
|
parser.add_argument("-o", "--output", type=Path, default=Path("comparison.md"))
|
||||||
parser.add_argument("--ttft-limit", type=float, default=3000.0)
|
parser.add_argument("--ttft-limit", type=float, default=4000.0)
|
||||||
parser.add_argument("--tpot-limit", type=float, default=50.0)
|
parser.add_argument("--tpot-limit", type=float, default=50.0)
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
|
||||||
@ -6,15 +6,15 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|||||||
EXPERIMENT_NAME="$(basename "$SCRIPT_DIR")"
|
EXPERIMENT_NAME="$(basename "$SCRIPT_DIR")"
|
||||||
|
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/lib.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/lib.sh"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/platform.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/platform.sh"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/config.env"
|
source "${SCRIPT_DIR}/config.env"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/adaptive_config.env"
|
source "${SCRIPT_DIR}/adaptive_config.env"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/adaptive_bench_lib.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/adaptive_bench_lib.sh"
|
||||||
|
|
||||||
ENGINE="vllm"
|
ENGINE="vllm"
|
||||||
ENGINE_PORT="$VLLM_PORT"
|
ENGINE_PORT="$VLLM_PORT"
|
||||||
@ -6,15 +6,15 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|||||||
EXPERIMENT_NAME="$(basename "$SCRIPT_DIR")"
|
EXPERIMENT_NAME="$(basename "$SCRIPT_DIR")"
|
||||||
|
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/lib.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/lib.sh"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/platform.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/platform.sh"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/config.env"
|
source "${SCRIPT_DIR}/config.env"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/adaptive_config.env"
|
source "${SCRIPT_DIR}/adaptive_config.env"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/adaptive_bench_lib.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/adaptive_bench_lib.sh"
|
||||||
|
|
||||||
ENGINE="vllm"
|
ENGINE="vllm"
|
||||||
ENGINE_PORT="$VLLM_PORT"
|
ENGINE_PORT="$VLLM_PORT"
|
||||||
@ -6,9 +6,9 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|||||||
EXPERIMENT_NAME="$(basename "$SCRIPT_DIR")"
|
EXPERIMENT_NAME="$(basename "$SCRIPT_DIR")"
|
||||||
|
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/lib.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/lib.sh"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/../../scripts/common/platform.sh"
|
source "${SCRIPT_DIR}/../../../scripts/common/platform.sh"
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${SCRIPT_DIR}/config.env"
|
source "${SCRIPT_DIR}/config.env"
|
||||||
|
|
||||||
@ -512,7 +512,7 @@ run_parallel_config() {
|
|||||||
|
|
||||||
# Parse results.
|
# Parse results.
|
||||||
log "parsing ${config_label} results"
|
log "parsing ${config_label} results"
|
||||||
"$PYTHON" "${SCRIPT_DIR}/../../scripts/common/parse_backend.py" "$result_root" --backend vllm \
|
"$PYTHON" "${SCRIPT_DIR}/../../../scripts/common/parse_backend.py" "$result_root" --backend vllm \
|
||||||
>> "${phase_log_dir}/parse.log" 2>&1 || {
|
>> "${phase_log_dir}/parse.log" 2>&1 || {
|
||||||
log "WARNING: parser failed for ${config_label}; see ${phase_log_dir}/parse.log"
|
log "WARNING: parser failed for ${config_label}; see ${phase_log_dir}/parse.log"
|
||||||
}
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user