[Fix] Use built-in random IDs for Kimi Prefill matrix
This commit is contained in:
parent
5454fb984e
commit
daeffd147b
@ -17,8 +17,10 @@ MXFP4 MoE on NVIDIA SM120. It does not modify the existing baseline experiment.
|
|||||||
| Repeats | 3 |
|
| Repeats | 3 |
|
||||||
|
|
||||||
The eight configurations are identical except for MoE runner and chunk size.
|
The eight configurations are identical except for MoE runner and chunk size.
|
||||||
Radix cache is disabled. `OSL=1` makes TTFT, E2E latency and input TPS the
|
The client uses SGLang `random-ids`, which produces the exact synthetic token
|
||||||
primary metrics; TPOT is not meaningful for this matrix.
|
length without depending on a ShareGPT file or text truncation. Radix cache is
|
||||||
|
disabled. `OSL=1` makes TTFT, E2E latency and input TPS the primary metrics;
|
||||||
|
TPOT is not meaningful for this matrix.
|
||||||
|
|
||||||
## Unique entrypoint
|
## Unique entrypoint
|
||||||
|
|
||||||
|
|||||||
@ -17,7 +17,7 @@ FLASHINFER_TARGET="${FLASHINFER_TARGET:-/tmp/hzy-fi-situ-phase3-v3}"
|
|||||||
FLASHINFER_WHEEL="${FLASHINFER_WHEEL:-/data/hzy/artifacts/flashinfer-kimi-sm120-situ-phase3-v3/flashinfer_python-0.6.18-py3-none-any.whl}"
|
FLASHINFER_WHEEL="${FLASHINFER_WHEEL:-/data/hzy/artifacts/flashinfer-kimi-sm120-situ-phase3-v3/flashinfer_python-0.6.18-py3-none-any.whl}"
|
||||||
SGLANG_SOURCE="${SGLANG_SOURCE:-/data/hzy/src/sglang-kimi-sm120/python/sglang}"
|
SGLANG_SOURCE="${SGLANG_SOURCE:-/data/hzy/src/sglang-kimi-sm120/python/sglang}"
|
||||||
|
|
||||||
DATASET_PATH="${DATASET_PATH:-${ROOT_DIR}/dataset/ShareGPT_V3_unfiltered_cleaned_split.json}"
|
BENCH_DATASET_NAME="${BENCH_DATASET_NAME:-random-ids}"
|
||||||
BENCH_MODULE="${BENCH_MODULE:-sglang.benchmark.serving}"
|
BENCH_MODULE="${BENCH_MODULE:-sglang.benchmark.serving}"
|
||||||
RESULT_BASE="${RESULT_BASE:-${SCRIPT_DIR}/results}"
|
RESULT_BASE="${RESULT_BASE:-${SCRIPT_DIR}/results}"
|
||||||
|
|
||||||
@ -31,4 +31,3 @@ HEALTH_WAIT_S="${HEALTH_WAIT_S:-2400}"
|
|||||||
BACKENDS=(marlin flashinfer_mxfp4)
|
BACKENDS=(marlin flashinfer_mxfp4)
|
||||||
CHUNKED_PREFILL_SIZES=(8192 16384)
|
CHUNKED_PREFILL_SIZES=(8192 16384)
|
||||||
CONCURRENCIES=(8 16)
|
CONCURRENCIES=(8 16)
|
||||||
|
|
||||||
|
|||||||
@ -78,7 +78,7 @@ sudo_host() {
|
|||||||
|
|
||||||
check_inputs() {
|
check_inputs() {
|
||||||
local path
|
local path
|
||||||
for path in "$MODEL_PATH" "$DATASET_PATH" "$FLASHINFER_TARGET/flashinfer" \
|
for path in "$MODEL_PATH" "$FLASHINFER_TARGET/flashinfer" \
|
||||||
"$FLASHINFER_WHEEL" "$SGLANG_SOURCE"; do
|
"$FLASHINFER_WHEEL" "$SGLANG_SOURCE"; do
|
||||||
[[ -e "$path" ]] || { echo "ERROR: required path missing: $path" >&2; exit 2; }
|
[[ -e "$path" ]] || { echo "ERROR: required path missing: $path" >&2; exit 2; }
|
||||||
done
|
done
|
||||||
@ -254,16 +254,16 @@ run_one_bench() {
|
|||||||
local stem="${backend}_chunk${chunk}_c${concurrency}_r${repeat}"
|
local stem="${backend}_chunk${chunk}_c${concurrency}_r${repeat}"
|
||||||
local output_file="${RESULT_ROOT}/raw/${stem}.jsonl"
|
local output_file="${RESULT_ROOT}/raw/${stem}.jsonl"
|
||||||
local bench_log="${RESULT_ROOT}/bench/${stem}.log"
|
local bench_log="${RESULT_ROOT}/bench/${stem}.log"
|
||||||
|
local -a dataset_args=(--dataset-name "$BENCH_DATASET_NAME")
|
||||||
rm -f "$output_file"
|
rm -f "$output_file"
|
||||||
log "bench backend=${backend} chunk=${chunk} C=${concurrency} repeat=${repeat}/${REPEATS}"
|
log "bench backend=${backend} chunk=${chunk} C=${concurrency} repeat=${repeat}/${REPEATS}"
|
||||||
sudo_host "$HEAD_HOST" docker run --rm --network host \
|
sudo_host "$HEAD_HOST" docker run --rm --network host \
|
||||||
-v "${MODEL_PATH}:${MODEL_PATH}:ro" \
|
-v "${MODEL_PATH}:${MODEL_PATH}:ro" \
|
||||||
-v "${DATASET_PATH}:${DATASET_PATH}:ro" \
|
|
||||||
-v "${RESULT_ROOT}:${RESULT_ROOT}" \
|
-v "${RESULT_ROOT}:${RESULT_ROOT}" \
|
||||||
-e PYTHONUNBUFFERED=1 --entrypoint python3 "$CANDIDATE_IMAGE" \
|
-e PYTHONUNBUFFERED=1 --entrypoint python3 "$CANDIDATE_IMAGE" \
|
||||||
-m "$BENCH_MODULE" \
|
-m "$BENCH_MODULE" \
|
||||||
--backend sglang --host "$HEAD_HOST" --port "$PORT" \
|
--backend sglang --host "$HEAD_HOST" --port "$PORT" \
|
||||||
--dataset-name random --dataset-path "$DATASET_PATH" \
|
"${dataset_args[@]}" \
|
||||||
--random-input-len "$INPUT_LEN" --random-output-len "$OUTPUT_LEN" \
|
--random-input-len "$INPUT_LEN" --random-output-len "$OUTPUT_LEN" \
|
||||||
--random-range-ratio 1.0 --num-prompts "$NUM_PROMPTS" \
|
--random-range-ratio 1.0 --num-prompts "$NUM_PROMPTS" \
|
||||||
--max-concurrency "$concurrency" --request-rate 10000 \
|
--max-concurrency "$concurrency" --request-rate 10000 \
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user