Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 14 additions & 1 deletion benchmarks/single_node/agentic/minimaxm3_fp8_h100_mtp.sh
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,20 @@ else
SPEC_CONFIG="{\"method\": \"eagle3\", \"model\": \"$DRAFT_MODEL\", \"num_speculative_tokens\": $NUM_SPEC_TOKENS, \"attention_backend\": \"FLASH_ATTN\", \"rejection_sample_method\": \"synthetic\", \"synthetic_acceptance_length\": $SYNTHETIC_ACCEPT_LEN}"
fi

MAX_NUM_SEQS=$((2 * CONC))
# Eval-only runs replay GSM8K through lm_eval at CONC parallel requests
# (benchmark_lib run_eval: num_concurrent = EVAL_CONCURRENT_REQUESTS or CONC).
# At CONC 1-3 that is 1319 sequential-ish requests at ~7 s each on H100 and
# the eval overran the launcher's 180-minute allocation ("CANCELLED ... DUE TO
# TIME LIMIT" at 96-98%, run 34174431989), while the recipe's previously
# merged sweep only ever ran the eval at c8 (195 min). Accuracy does not depend
# on client concurrency, so floor it at 8 for eval-only runs and size
# --max-num-seqs to admit that many; throughput runs keep 2*CONC.
EVAL_CONC=$CONC
if [ "$EVAL_ONLY" = "true" ] && [ "$CONC" -lt 8 ]; then
EVAL_CONC=8
export EVAL_CONCURRENT_REQUESTS="${EVAL_CONCURRENT_REQUESTS:-$EVAL_CONC}"
fi
MAX_NUM_SEQS=$((2 * EVAL_CONC))
# MTP verifies four tokens per sequence, so CUDA graph capture is token-sized.
MAX_CUDAGRAPH_CAPTURE_SIZE=$((MAX_NUM_SEQS * TOKENS_PER_SEQ))

Expand Down
2 changes: 1 addition & 1 deletion configs/nvidia-master.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7514,7 +7514,7 @@ qwen3.5-fp4-b200-trt-mtp:
- { tp: 8, ep: 8, dp-attn: true, spec-decoding: "mtp", conc-list: [128, 256, 1024] }

minimaxm3-fp8-h100-vllm-agentic-mtp:
image: vllm/vllm-openai:v0.27.1
image: vllm/vllm-openai:nightly-d9105ea8001e0a6d77a96327d17515bb5791fb36
model: MiniMaxAI/MiniMax-M3-MXFP8
model-prefix: minimaxm3
runner: cluster:h100-dgxc
Expand Down
9 changes: 9 additions & 0 deletions perf-changelog.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6958,3 +6958,12 @@
- "Expand the TP8 and TP4/EP1 sweep coverage through concurrency 640."
pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/2866


- config-keys:
- minimaxm3-fp8-h100-vllm-agentic-mtp
scenario-type:
- agentic-coding
description:
- "Update vLLM image from vllm/vllm-openai:v0.27.1 (v0.27.1 release) to vllm/vllm-openai:nightly-d9105ea8001e0a6d77a96327d17515bb5791fb36 (2026-09-07 upstream nightly, digest sha256:254eebf919e8b7b0d530d97fccc606c36f380ff6724d64bc190951bec1aee838, tag commit vllm-project/vllm@d9105ea8; Docker Hub last pushed 2026-09-07T06:16:01Z), the same tag the B200 MiniMax-M3 AgentX recipe moved to in #2860 and the ROCm counterpart of the MI325X/MI300X bumps in #2872/#2873. benchmarks/single_node/agentic/minimaxm3_fp8_h100_mtp.sh is unchanged: TRITON_ATTN attention, fp8 KV, EAGLE3 with the Inferact MiniMax-M3 EAGLE3-GQA draft pinned to FLASH_ATTN and the committed golden synthetic acceptance length 2.78, Mooncake 0.3.11.post1 DRAM offload on the host-tier arm; the resident TP8 c1-c5 and Mooncake DRAM offload c6/c8 grid is unchanged."
- "Floor the eval-only client concurrency at 8 (EVAL_CONCURRENT_REQUESTS) and size --max-num-seqs to admit it: the eval matrix now runs GSM8K at every sweep concurrency, and at c1-c3 the H100 eval ran 1319 requests nearly serially at ~7 s each and overran the launcher's 180-minute Slurm allocation (run 34174431989: CANCELLED DUE TO TIME LIMIT at 96-98%; c4/c5 finished in 119-124 min). The previously merged sweep only ran the eval at c8 (195 min on v0.27.1), so this is not an image regression. Eval accuracy is independent of client concurrency; throughput runs keep max-num-seqs 2*CONC."
pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/2874
Loading