From 1912b8b67bc70959fb7a6b5122d1a2adb35581b3 Mon Sep 17 00:00:00 2001 From: "claude[bot]" <41898282+claude[bot]@users.noreply.github.com> Date: Thu, 19 Feb 2026 02:40:48 +0000 Subject: [PATCH 1/6] Add MiniMax-M2.5 FP8 vLLM benchmark for B200 - Add benchmark script benchmarks/minimaxm2.5_fp8_b200.sh - Add config entry minimaxm2.5-fp8-b200-vllm to nvidia-master.yaml - Image: vllm/vllm-openai:v0.15.1-cu130 - Model: MiniMaxAI/MiniMax-M2.5 - TP=2 and TP=4, concurrency 4-64 - Sequence lengths: 1k1k, 1k8k, 8k1k - Update perf-changelog.yaml Closes #756 Co-authored-by: functionstackx --- .github/configs/nvidia-master.yaml | 25 +++++++++++++ benchmarks/minimaxm2.5_fp8_b200.sh | 58 ++++++++++++++++++++++++++++++ perf-changelog.yaml | 9 +++++ 3 files changed, 92 insertions(+) create mode 100755 benchmarks/minimaxm2.5_fp8_b200.sh diff --git a/.github/configs/nvidia-master.yaml b/.github/configs/nvidia-master.yaml index 46112ff50..935097153 100644 --- a/.github/configs/nvidia-master.yaml +++ b/.github/configs/nvidia-master.yaml @@ -3015,6 +3015,31 @@ gptoss-fp4-b200-vllm: - { tp: 4, conc-start: 4, conc-end: 64 } - { tp: 8, conc-start: 4, conc-end: 4 } +minimaxm2.5-fp8-b200-vllm: + image: vllm/vllm-openai:v0.15.1-cu130 + model: MiniMaxAI/MiniMax-M2.5 + model-prefix: minimaxm2.5 + runner: b200 + precision: fp8 + framework: vllm + multinode: false + seq-len-configs: + - isl: 1024 + osl: 1024 + search-space: + - { tp: 2, conc-start: 4, conc-end: 64 } + - { tp: 4, conc-start: 4, conc-end: 64 } + - isl: 1024 + osl: 8192 + search-space: + - { tp: 2, conc-start: 4, conc-end: 64 } + - { tp: 4, conc-start: 4, conc-end: 64 } + - isl: 8192 + osl: 1024 + search-space: + - { tp: 2, conc-start: 4, conc-end: 64 } + - { tp: 4, conc-start: 4, conc-end: 64 } + gptoss-fp4-h100-vllm: image: vllm/vllm-openai:v0.13.0 model: openai/gpt-oss-120b diff --git a/benchmarks/minimaxm2.5_fp8_b200.sh b/benchmarks/minimaxm2.5_fp8_b200.sh new file mode 100755 index 000000000..085ecf7c8 --- /dev/null +++ b/benchmarks/minimaxm2.5_fp8_b200.sh @@ -0,0 +1,58 @@ +#!/usr/bin/env bash + +source "$(dirname "$0")/benchmark_lib.sh" + +check_env_vars \ + MODEL \ + TP \ + CONC \ + ISL \ + OSL \ + MAX_MODEL_LEN \ + RANDOM_RANGE_RATIO \ + RESULT_FILENAME + +if [[ -n "$SLURM_JOB_ID" ]]; then + echo "JOB $SLURM_JOB_ID running on $SLURMD_NODENAME" +fi + +nvidia-smi + +hf download "$MODEL" + +SERVER_LOG=/workspace/server.log +PORT=${PORT:-8888} + +set -x +vllm serve $MODEL --port $PORT \ +--tensor-parallel-size=$TP \ +--gpu-memory-utilization 0.95 \ +--max-model-len $MAX_MODEL_LEN \ +--block-size=32 \ +--disable-log-requests \ +--trust-remote-code > $SERVER_LOG 2>&1 & + +SERVER_PID=$! + +# Wait for server to be ready +wait_for_server_ready --port "$PORT" --server-log "$SERVER_LOG" --server-pid "$SERVER_PID" + +run_benchmark_serving \ + --model "$MODEL" \ + --port "$PORT" \ + --backend vllm \ + --input-len "$ISL" \ + --output-len "$OSL" \ + --random-range-ratio "$RANDOM_RANGE_RATIO" \ + --num-prompts "$((CONC * 10))" \ + --max-concurrency "$CONC" \ + --result-filename "$RESULT_FILENAME" \ + --result-dir /workspace/ \ + --trust-remote-code + +# After throughput, run evaluation only if RUN_EVAL is true +if [ "${RUN_EVAL}" = "true" ]; then + run_eval --framework lm-eval --port "$PORT" --concurrent-requests $CONC + append_lm_eval_summary +fi +set +x diff --git a/perf-changelog.yaml b/perf-changelog.yaml index e169bb419..24e5e4a46 100644 --- a/perf-changelog.yaml +++ b/perf-changelog.yaml @@ -671,3 +671,12 @@ - "Environment: VLLM_ROCM_USE_AITER=1" - "TP=2 and TP=4, concurrency 4-64 for 1k1k, 1k8k, and 8k1k sequence lengths" pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/755 + +- config-keys: + - minimaxm2.5-fp8-b200-vllm + description: + - "Add MiniMax-M2.5 FP8 vLLM benchmark for B200" + - "Model: MiniMaxAI/MiniMax-M2.5 with --trust-remote-code" + - "Image: vllm/vllm-openai:v0.15.1-cu130" + - "TP=2 and TP=4, concurrency 4-64 for 1k1k, 1k8k, and 8k1k sequence lengths" + pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/XXX From cbc5d0b0e44c14cb232efc6976192c6a3c356b24 Mon Sep 17 00:00:00 2001 From: functionstackx <47992694+functionstackx@users.noreply.github.com> Date: Thu, 19 Feb 2026 13:45:30 -0500 Subject: [PATCH 2/6] Update runner name in nvidia-master.yaml --- .github/configs/nvidia-master.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/configs/nvidia-master.yaml b/.github/configs/nvidia-master.yaml index 935097153..c1b9097dd 100644 --- a/.github/configs/nvidia-master.yaml +++ b/.github/configs/nvidia-master.yaml @@ -3019,7 +3019,7 @@ minimaxm2.5-fp8-b200-vllm: image: vllm/vllm-openai:v0.15.1-cu130 model: MiniMaxAI/MiniMax-M2.5 model-prefix: minimaxm2.5 - runner: b200 + runner: b200-nvs precision: fp8 framework: vllm multinode: false From 1d383928dcc7e58022bfd41156723eeb0515dd08 Mon Sep 17 00:00:00 2001 From: Kedar Potdar Date: Thu, 19 Feb 2026 18:02:57 -0800 Subject: [PATCH 3/6] move launch file and enable expert parallel --- benchmarks/{ => single_node}/minimaxm2.5_fp8_b200.sh | 1 + 1 file changed, 1 insertion(+) rename benchmarks/{ => single_node}/minimaxm2.5_fp8_b200.sh (97%) diff --git a/benchmarks/minimaxm2.5_fp8_b200.sh b/benchmarks/single_node/minimaxm2.5_fp8_b200.sh similarity index 97% rename from benchmarks/minimaxm2.5_fp8_b200.sh rename to benchmarks/single_node/minimaxm2.5_fp8_b200.sh index 085ecf7c8..a203c85b6 100755 --- a/benchmarks/minimaxm2.5_fp8_b200.sh +++ b/benchmarks/single_node/minimaxm2.5_fp8_b200.sh @@ -29,6 +29,7 @@ vllm serve $MODEL --port $PORT \ --gpu-memory-utilization 0.95 \ --max-model-len $MAX_MODEL_LEN \ --block-size=32 \ +--enable-expert-parallel \ --disable-log-requests \ --trust-remote-code > $SERVER_LOG 2>&1 & From 567a8402bcc1d8e8c7fc9e2b8e0ecf1533a42a72 Mon Sep 17 00:00:00 2001 From: Kedar Potdar Date: Thu, 19 Feb 2026 18:04:06 -0800 Subject: [PATCH 4/6] add PR # --- perf-changelog.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/perf-changelog.yaml b/perf-changelog.yaml index 24e5e4a46..a06a721ab 100644 --- a/perf-changelog.yaml +++ b/perf-changelog.yaml @@ -679,4 +679,4 @@ - "Model: MiniMaxAI/MiniMax-M2.5 with --trust-remote-code" - "Image: vllm/vllm-openai:v0.15.1-cu130" - "TP=2 and TP=4, concurrency 4-64 for 1k1k, 1k8k, and 8k1k sequence lengths" - pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/XXX + pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/757 From 13453b4fdc7807a2f2f691588f4c69465e216a52 Mon Sep 17 00:00:00 2001 From: Kedar Potdar Date: Thu, 19 Feb 2026 19:00:29 -0800 Subject: [PATCH 5/6] fix typo that claude made --- benchmarks/single_node/minimaxm2.5_fp8_b200.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/benchmarks/single_node/minimaxm2.5_fp8_b200.sh b/benchmarks/single_node/minimaxm2.5_fp8_b200.sh index a203c85b6..76676d9a6 100755 --- a/benchmarks/single_node/minimaxm2.5_fp8_b200.sh +++ b/benchmarks/single_node/minimaxm2.5_fp8_b200.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -source "$(dirname "$0")/benchmark_lib.sh" +source "$(dirname "$0")/../benchmark_lib.sh" check_env_vars \ MODEL \ From 33b498fddd0bb99151126124cbc3ce9848f36fe0 Mon Sep 17 00:00:00 2001 From: Kedar Potdar Date: Fri, 20 Feb 2026 10:19:35 -0800 Subject: [PATCH 6/6] newline in perf-changelog --- perf-changelog.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/perf-changelog.yaml b/perf-changelog.yaml index 15f4fae87..d88b75e3f 100644 --- a/perf-changelog.yaml +++ b/perf-changelog.yaml @@ -699,4 +699,4 @@ - "Model: MiniMaxAI/MiniMax-M2.5 with --trust-remote-code" - "Image: vllm/vllm-openai:v0.15.1-cu130" - "TP=2 and TP=4, concurrency 4-64 for 1k1k, 1k8k, and 8k1k sequence lengths" - pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/757 \ No newline at end of file + pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/757