Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
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
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
base:
schema: 2
name: minimaxm31flash-fp4-gb300-sglang-agentic-tp2
resources:
gpu_type: gb300
gpus_per_node: 4
frontend:
type: sglang
enable_multiple_frontends: false
observability:
enabled: false
tachometer:
enabled: false
engine: sglang
# Cold loads of the 250 GB checkpoint plus JIT MSA kernel builds and graph capture outlast the default.
health_check:
max_attempts: 1440
interval_seconds: 5
roles:
agg:
nodes: 1
workers: 1
gpus: 2
# Serve flags follow the cookbook's GB300 cells at
# https://docs.sglang.io/cookbook/autoregressive/MiniMax/MiniMax-M3.1.
args:
served-model-name: MiniMaxAI/MiniMax-M3.1-Flash
trust-remote-code: true
reasoning-parser: minimax-m3
tool-call-parser: minimax-m3
# Seven-token DSpark, the bundled draft's dspark_block_size. Throughput runs
# switch to synthetic acceptance at the golden acceptance length.
speculative-algorithm: DSPARK
speculative-dspark-block-size: 7
speculative-use-block-verification: true
cuda-graph-backend-prefill: breakable
tokenizer-worker-num: 8
watchdog-timeout: 3600
enable-metrics: true
env:
PYTHONNOUSERSITE: '1'
PYTHONUNBUFFERED: '1'
SGLANG_TIMEOUT_KEEP_ALIVE: '1800'
FMHA_SM100_ALLOW_JIT: '1'
benchmark:
env:
# Warmup can leave bytes unacknowledged past AIPerf's 30 s default.
AIPERF_HTTP_TCP_USER_TIMEOUT: '900000'
AIPERF_REQUIRED_SERVER_METRIC_PREFIX: 'sglang:'

# TP2 with L2 HiCache (write_back, 180 GB per rank). The scheduler batch is 2x CONC;
# the decode graph batch matches it.

zip_override_tp2_hicache:
roles:
agg:
args:
tensor-parallel-size: 2
moe-runner-backend: flashinfer_trtllm_routed
chunked-prefill-size: 32768
max-running-requests: [40, 48, 56, 72]
cuda-graph-max-bs-decode: [40, 48, 56, 72]
mem-fraction-static: 0.87
enable-hierarchical-cache: true
hicache-size: 180
hicache-write-policy: write_back
benchmark:
env:
CONC: ['20', '24', '28', '36']
KV_OFFLOADING: dram
16 changes: 16 additions & 0 deletions inferencex-e2e/configs/nvidia-master.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8959,6 +8959,22 @@ minimaxm31flash-fp4-gb300-sglang-agentic-dspark:
# High-Throughput with L2 HiCache: 175 GB per rank at conc 64 and 128.
- { tp: 4, ep: 4, spec-decoding: mtp, kv-offloading: dram, kv-offload-backend: { name: hicache }, conc-list: [64, 128], srt-recipe: agentic.yaml }

minimaxm31flash-fp4-gb300-sglang-agentic-dspark-tp2:
image: lmsysorg/sglang:dev-minimax-m31-flash@sha256:614b1509bcb729c653528d448bff9850f8977fcad9d12ba56bd6dbe3d7985e87
model: MiniMaxAI/MiniMax-M3.1-Flash
model-prefix: minimaxm31flash
runner: cluster:gb300-nv
precision: fp4
framework: sglang
multinode: false
srt-recipe-dir: minimaxm31flash/sglang/gb300-fp4-mtp
scenarios:
agentic-coding:
- dram-utilization: 0.80
search-space:
# TP2 with L2 HiCache: 180 GB per rank at conc 20-36.
- { tp: 2, spec-decoding: mtp, kv-offloading: dram, kv-offload-backend: { name: hicache }, conc-list: [20, 24, 28, 36], srt-recipe: agentic-tp2.yaml }

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 (optional) The new TP2 points (conc 20-36) get their own config key and changelog entry. Readers then see a separate result set, not more points on the existing GB300 SGLang TP2 curve (conc 32-44). CONTRIBUTING.md says a PR that only adds points to an existing curve should add them to the existing key and mark the changelog entry append-only: true. That route already sweeps only the new points, so a separate key is not needed to avoid re-running the old ones. Fix: add this TP2 row to minimaxm31flash-fp4-gb300-sglang-agentic-dspark (dram-utilization 0.80 scenario) and put zip_override_tp2_hicache in agentic.yaml as another override. Then list that key in the changelog block with append-only: true.

Why this was flagged

The PR description says these points sit alongside the TP2 points from #4511. Those points live under minimaxm31flash-fp4-gb300-sglang-agentic-dspark (nvidia-master.yaml:8957, conc 32/40/44, same image, same hicache 180 GB, same mem-fraction 0.87). The diff instead adds a new key, minimaxm31flash-fp4-gb300-sglang-agentic-dspark-tp2 (nvidia-master.yaml:8962), and a new non-append-only changelog block (perf-changelog.yaml:11208). The block's stated reason is to avoid re-sweeping the existing points. CONTRIBUTING.md:172-186 describes append-only: true as the mechanism for exactly this case. It runs only the generated set difference and lets InferenceX-app extend the most recent matching curve, rather than show the partial run as a separate curve. With the separate key, conc 20-36 is published as its own config and TP2 data is split across two keys. Folding the new points into the existing key would keep TP2 as one curve.

Verification: Trigger: the PR merges with the new key and a regular (not append-only) changelog block, so its sweep is ingested as its own run. The new changelog block (perf-changelog.yaml:11208-11213) has no append-only. Because the app gets no append-only metadata, it will show this partial TP2-only run as a separate curve instead of extending the existing one.


# H200 AgentX arm for DeepSeek-V4.1-Flash. Upstream marks h200 verified and says
# the GB200 NVL4 TP4 layout becomes TP8 on 8-GPU nodes, so this is TP8.
# `precision: fp4` labels the checkpoint's MXFP4 routed experts, as on the
Expand Down
7 changes: 7 additions & 0 deletions inferencex-e2e/perf-changelog.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11204,3 +11204,10 @@
- "Add TP2 points with DRAM KV offload, and adjust the memory settings on the DRAM KV offload points."
pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/XXX
scenario-type: [agentic-coding]

- config-keys:
- minimaxm31flash-fp4-gb300-sglang-agentic-dspark-tp2
description:
- "Add more TP2 points with DRAM KV offload (L2 HiCache)."
pr-link: https://github.com/SemiAnalysisAI/InferenceX/pull/XXX
scenario-type: [agentic-coding]
Loading