Skip to content

data: collect DeepSeek V4.1 H100/H200/B200/GB200 operator profiles - #305

Merged
Harrilee merged 18 commits into
mainfrom
harrli/dsv41-h100-h200-b200-gb200-op
Sep 29, 2026
Merged

Harrilee merged 18 commits into
mainfrom
harrli/dsv41-h100-h200-b200-gb200-op

Conversation

@Harrilee

@Harrilee Harrilee commented Sep 21, 2026 •

Copy link
Copy Markdown
Contributor

What changes

Add measured DeepSeek-V4.1-Flash full and decoder_bounded operator profiles for H100, H200, B200 and GB200 at TP2 and TP4. The eight cells contain 10,120 physical keys in 32 parquet/provenance files (206,830 bytes). Existing tables are preserved; raw campaign archives remain outside GitHub.

Native Hopper CUTLASS W4A16, explicit Humming W4A16 and Blackwell TRTLLM W4A8 retain distinct execution identities. Humming adds a Python/Rust quantization value without changing existing Rust bincode discriminants. Strict schema-v2 readers accept the provenance fields already emitted by the collector while rejecting unknown fields and invalid types.

The isolated producers measure native linear, Engram, mHC, MoE, GEMM, NCCL and attention using declared reproducible synthetic parameters and actual tokenizer/native KV semantics. GB200 TP4 attention comes from the whole pinned checkpoint; the other attention cells use the isolated native module. All eight cells use the same isolated primitive method. Duplicate non-TP mHC/router keys retain TP2 deterministically after a shape/dtype/source/scope audit; selection never depends on latency, and TP4 raw observations are retained.

Coverage and independent accuracy

All eight primitive and formal attention collections completed. The 1,200 exact primitive queries pass through the database and Rust SILICON interface. Each full cell passes 183 strict predictions: 145 calibration geometries and 38 independent held-out geometries, 1,464 full predictions. Each bounded cell additionally passes 154 calibration and 38 held-out geometries, for 3,000 strict predictions total. All original full predictions and rows are unchanged. This is the declared case grid, not arbitrary batch/length coverage.

Independent whole-checkpoint held-out validation uses 38 geometries, five repetitions and four ranks per cell:

System / TP4 / mode Overall MAPE Prefill (28 cases) Decode (10 cases) Max APE
GB200 / full 6.96% 4.52% 13.78% 16.31%
H200, native Humming / full 12.68% 7.47% 27.27% 34.24%
GB200 / decoder_bounded 10.00% 8.15% 15.19% 18.32%
H200, native Humming / decoder_bounded 12.21% 5.50% 31.00% 36.19%
B200 / full 16.09% 12.72% 25.51% 25.88%
B200 / decoder_bounded 17.31% 13.86% 26.97% 27.71%

Predictions and table hashes were frozen before reading each system's truth. Text and tokenized corpora are separate, and calibration/held-out geometry overlap is zero. Ground truth is the median of five per-repetition rank maxima, using native synchronized wall time including prepare/forward/sample. No accuracy threshold is asserted, and the larger H200 decode error is retained without fitting to held-out data. These are OP/SILICON results, not FPM results.

decoder_bounded adds 260 non-overlapping attention keys per TP cell. Eight physical-key collision groups were reviewed against actual native layouts, integer mappings and source contracts. The explicit reducer keeps every logical owner, takes each owner's median of per-repetition rank maxima, then averages owners equally; it does not assert equal inputs or latency. Original full rows take fixed precedence at shared keys. The default collector still rejects collisions, and the joint exporter requires separately admitted rows. H200 bounded independent whole-model heldout 4449635 completed on the verified node 333, and all 760 retained rank/repetition observations reproduce the reported metrics. B200 full/bounded heldout 4448904 completed on node 018 with exit 0. All 168 archived files (8,248,737 bytes) were verified against the original remote SHA inventory; each profile retains 38 geometries × five repetitions × four ranks. Original native admission and a separate raw-rank arithmetic review reproduce the metrics above. Every B200 case underpredicts actual time; decode errors of 25.51% and 26.97% are retained without fitting. Requested isolated operator data and independent whole-model validation for all feasible TP4 cells are complete. TP2 and H100 TP4 whole-model accuracy remain outside the feasible residency scope.

Whole-model TP2 on all four GPUs and H100 TP4 exceed HBM under the requested checkpoint/placement. Isolated operator coverage and latency predictions do not establish whole-model fit or accuracy for those cells.

Runtime and use

Select SGLang dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc, FP8-block GEMM and FP8 FMHA. Hopper TP2 uses w4a16_mxfp4_cutlass; Hopper TP4 uses w4a16_mxfp4_humming; Blackwell uses w4a8_mxfp4_mxfp8_trtllm. MoE TP equals model TP, with EP1.

The measured NCCL provider is 2.30.7, distinct from Torch's 2.29.7 build macros. Same-rank ARM getter/library receipts and explicitly labeled AMD post-run library-identity evidence support that identity. Use the README's existing systems_paths overlay to select 2.30.7 without changing system defaults. Each collection event records its actual SquashFS identity; the source audit records the installed vision-only guard and does not describe the image as an unmodified upstream checkout.

Review and validation

Start with python/aisimulate/collector/sglang/README.dsv41.md, the three native producers (dsv41_isolated_runner.py, dsv41_attention_runner.py, dsv41_native_runner.py), their tests and the schema-v2 reader in src/aisimulate_core/sdk/perf_database.py.

  • 446 earlier collector/provenance/strict-schema tests pass; the new joint-export/reducer checks pass all 166 focused tests, including default collision rejection and the actual explicit CLI path.
  • Collector-data R1–R7, Ruff/format, legal package notices, CODEOWNERS full-tree/drift and whitespace checks pass.
  • The documented systems overlay and actual public CLI pass for GB200, H200 and B200 TP4.
  • The current release wheel preserves all 32 data/provenance hashes and packaged notices. Installed into a fresh isolated environment, outside the source tree with Python -I, it reproduces all 3,000 predictions and the three README CLI examples. Wheel SHA256: d11fc2adf6cb65210b341e1ce88860957672523fe82fd189489173b636127a40.
  • Current head 5cfe2827: Fast CI and Full CI both pass. The previous 8744b810 Fast/Full CI pass is historical evidence. Registered backend facts distinguish Humming and conservatively unresolved composite modules; table timings are unchanged by registration.

The source-audited Hopper index-score fallback now uses native BF16 tensor-core arithmetic and a two-byte query operand for the SGLang FP8/BF16 layout on SM90. Packed FP4 index-K storage remains packed; SM100 and other layouts keep their original requirements. This also permits H200 FPM SOL transfer without inventing an FP4 throughput field. The 51 architecture and 121 FPM tests pass (one existing ignored test). Source attribution and byte-identical packaged notices are retained.

Companion FPM PR: #304. Builds on merged #160/#233 and the shared V4.1 architecture contract.

Signed-off-by: Harry Lee <harrli@nvidia.com>
@coderabbitai

coderabbitai Bot commented Sep 21, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

Important

Review skipped

Review was skipped as selected files did not have any reviewable changes.

⛔ Files ignored due to path filters (16)
  • python/aisimulate/src/aisimulate_core/systems/data/b200_sxm/comm/nccl/2.30.7/nccl_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/b200_sxm/dsv41/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/dsv41_module_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/b200_sxm/gemm/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/gemm_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/b200_sxm/moe/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/moe_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/gb200/comm/nccl/2.30.7/nccl_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/gb200/dsv41/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/dsv41_module_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/gb200/gemm/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/gemm_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/gb200/moe/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/moe_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h100_sxm/comm/nccl/2.30.7/nccl_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h100_sxm/dsv41/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/dsv41_module_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h100_sxm/gemm/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/gemm_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h100_sxm/moe/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/moe_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h200_sxm/comm/nccl/2.30.7/nccl_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h200_sxm/dsv41/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/dsv41_module_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h200_sxm/gemm/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/gemm_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h200_sxm/moe/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/moe_perf.parquet is excluded by !**/*.parquet and included by python/**
⚙️ Run configuration

Configuration used: Repository: ai-dynamo/aisimulate/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: c3177aeb-4412-42d4-b50b-63ee06045fd2

📥 Commits

Reviewing files that changed from the base of the PR and between 37c48c0 and 56cb881.

⛔ Files ignored due to path filters (16)
  • python/aisimulate/src/aisimulate_core/systems/data/b200_sxm/comm/nccl/2.30.7/nccl_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/b200_sxm/dsv41/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/dsv41_module_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/b200_sxm/gemm/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/gemm_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/b200_sxm/moe/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/moe_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/gb200/comm/nccl/2.30.7/nccl_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/gb200/dsv41/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/dsv41_module_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/gb200/gemm/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/gemm_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/gb200/moe/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/moe_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h100_sxm/comm/nccl/2.30.7/nccl_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h100_sxm/dsv41/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/dsv41_module_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h100_sxm/gemm/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/gemm_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h100_sxm/moe/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/moe_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h200_sxm/comm/nccl/2.30.7/nccl_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h200_sxm/dsv41/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/dsv41_module_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h200_sxm/gemm/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/gemm_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h200_sxm/moe/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/moe_perf.parquet is excluded by !**/*.parquet and included by python/**

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: ai-dynamo/aisimulate/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: 186aa42b-8e21-4817-902d-e6e769a35fb4

📥 Commits

Reviewing files that changed from the base of the PR and between 5cfe282 and 37c48c0.

⛔ Files ignored due to path filters (16)
  • python/aisimulate/src/aisimulate_core/systems/data/b200_sxm/comm/nccl/2.30.7/nccl_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/b200_sxm/dsv41/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/dsv41_module_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/b200_sxm/gemm/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/gemm_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/b200_sxm/moe/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/moe_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/gb200/comm/nccl/2.30.7/nccl_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/gb200/dsv41/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/dsv41_module_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/gb200/gemm/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/gemm_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/gb200/moe/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/moe_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h100_sxm/comm/nccl/2.30.7/nccl_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h100_sxm/dsv41/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/dsv41_module_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h100_sxm/gemm/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/gemm_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h100_sxm/moe/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/moe_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h200_sxm/comm/nccl/2.30.7/nccl_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h200_sxm/dsv41/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/dsv41_module_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h200_sxm/gemm/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/gemm_perf.parquet is excluded by !**/*.parquet and included by python/**
  • python/aisimulate/src/aisimulate_core/systems/data/h200_sxm/moe/sglang/dev-1aa0e962b206102b7c439a4a0c4981cfec6e87bc/moe_perf.parquet is excluded by !**/*.parquet and included by python/**
📒 Files selected for processing (6)
  • THIRD_PARTY_NOTICES.md
  • crates/core/src/perfmodel/config.rs
  • crates/core/src/perfmodel/perf_database/moe.rs
  • crates/core/src/perfmodel/py.rs
  • python/aisimulate/THIRD_PARTY_NOTICES.md
  • python/aisimulate/src/aisimulate_core/sdk/rust_engine_step.py
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 11 remain after this review.

📜 Recent review details
⏰ Context from checks skipped due to timeout. (21)
  • GitHub Check: Prediction Regression / Collect prediction snapshot (old)
  • GitHub Check: Prediction Regression / Collect prediction snapshot (new)
  • GitHub Check: Collector Data / Perf data sanity (informational)
  • GitHub Check: Platform Wheels / Build wheels (manylinux_2_28_aarch64)
  • GitHub Check: Platform Wheels / Build wheels (macosx_arm64)
  • GitHub Check: Platform Wheels / Build wheels (manylinux_2_28_x86_64)
  • GitHub Check: Collector Data / Check collector data
  • GitHub Check: Application Test Wheel (amd64)
  • GitHub Check: Release Artifact Contract (arm64)
  • GitHub Check: Application Test Wheel (arm64)
  • GitHub Check: Python 3.13 compatibility
  • GitHub Check: Release Artifact Contract (amd64)
  • GitHub Check: Engine Golden Regression
  • GitHub Check: Public API Rust (arm64)
  • GitHub Check: Rust feature modes
  • GitHub Check: Public API Rust (amd64)
  • GitHub Check: Python 3.11 compatibility
  • GitHub Check: Rust (amd64)
  • GitHub Check: Rust (arm64)
  • GitHub Check: Python Dependency Licenses
  • GitHub Check: Forward Prediction Performance (advisory)
🧰 Additional context used
📓 Path-based instructions (7)
Preserve the Rust single oracle: Python may describe operations, load raw data, orchestrate, and present results, but must not compute per-op performance values.

⚙️ CodeRabbit configuration file

Files:

  • python/aisimulate/src/aisimulate_core/sdk/rust_engine_step.py
Enforce the single-oracle and golden-diff rules in python/aisimulate/.claude/rules/rust-core/parity.md.

⚙️ CodeRabbit configuration file

Files:

  • crates/core/src/perfmodel/py.rs
  • crates/core/src/perfmodel/perf_database/moe.rs
  • crates/core/src/perfmodel/config.rs
Verify upstream provenance, license text, collection and overlay hashes, local modification notices, and generated derivative records remain complete and internally consistent.

⚙️ CodeRabbit configuration file

Files:

  • THIRD_PARTY_NOTICES.md
Read REVIEW.md before commenting.

⚙️ CodeRabbit configuration file

Files:

  • python/aisimulate/src/aisimulate_core/sdk/rust_engine_step.py
  • crates/core/src/perfmodel/py.rs
  • crates/core/src/perfmodel/perf_database/moe.rs
  • crates/core/src/perfmodel/config.rs
  • THIRD_PARTY_NOTICES.md
  • python/aisimulate/THIRD_PARTY_NOTICES.md
Source excerpt: Do NOT add Python-side interpolation, roofline/SOL formulas, empirical-utilization estimates, or per-call table lookups anywhere under `python/aisimulate/src/aisimulate_core/sdk/` (banned def shapes: the `_query_*` and `_loo...

📄 CodeRabbit inference engine (python/aisimulate/.claude/rules/rust-core/parity.md)

Files:

  • python/aisimulate/src/aisimulate_core/sdk/rust_engine_step.py
  • crates/core/src/perfmodel/py.rs
  • crates/core/src/perfmodel/perf_database/moe.rs
  • crates/core/src/perfmodel/config.rs
Before making any change under: `python/aisimulate/src/aisimulate/generator/**` MUST read: `python/aisimulate/.claude/rules/generator-development.md` Before making any change under `python/aisimulate/collector/**` MUST read: `python/aisimul...

📄 CodeRabbit inference engine (AGENTS.md)

Files:

  • python/aisimulate/src/aisimulate_core/sdk/rust_engine_step.py
  • crates/core/src/perfmodel/py.rs
  • crates/core/src/perfmodel/perf_database/moe.rs
  • crates/core/src/perfmodel/config.rs
  • THIRD_PARTY_NOTICES.md
  • python/aisimulate/THIRD_PARTY_NOTICES.md
Source excerpt: Only workflows under the repository-root `.github/workflows/` run for this repository.

📄 CodeRabbit inference engine (REVIEW.md)

Files:

  • python/aisimulate/src/aisimulate_core/sdk/rust_engine_step.py
  • crates/core/src/perfmodel/py.rs
  • crates/core/src/perfmodel/perf_database/moe.rs
  • crates/core/src/perfmodel/config.rs
  • THIRD_PARTY_NOTICES.md
  • python/aisimulate/THIRD_PARTY_NOTICES.md
🔀 Multi-repo context ai-dynamo/aiconfigurator, ai-dynamo/dynamo

Linked repositories findings

ai-dynamo/aiconfigurator

  • Existing V1 compatibility maps the mxfp4 preset only to w4a16_mxfp4; it has no Humming-specific mapping. [::ai-dynamo/aiconfigurator::src/aiconfigurator/sdk/task_v1_compat.py:157-163]
  • Collector/model-case contracts enumerate existing modes such as w4a16_mxfp4 and w4a8_mxfp4_mxfp8; no w4a16_mxfp4_humming support was found. [::ai-dynamo/aiconfigurator::tests/unit/collector/test_model_cases.py:563-570] [::ai-dynamo/aiconfigurator::tests/unit/collector/test_model_cases.py:1106-1116]
  • V2 coverage is keyed by the typed MoEQuantMode and queries that exact enum value. The new Humming enum/data therefore cannot be selected by this repository’s existing compatibility and coverage paths without a coordinated update. [::ai-dynamo/aiconfigurator::src/aiconfigurator/sdk/task_v2.py:618-622] [::ai-dynamo/aiconfigurator::src/aiconfigurator/sdk/task_v2.py:1397-1408]

ai-dynamo/dynamo

  • The Planner’s native AIC identity is based on model, system, backend, and version; unsupported native configurations fall back to FPM regression. No Humming-specific identity or selector was found in Dynamo. [::ai-dynamo/dynamo::components/src/dynamo/planner/config/planner_config.py:99-112]
  • The current DeepSeek-V4.1 GB200 SGLang recipe deliberately relies on automatic backend resolution and uses the dev.1 runtime image. [::ai-dynamo/dynamo::recipes/deepseek-v4.1-flash/sglang/agg-gb200/deploy.yaml:4-8] [::ai-dynamo/dynamo::recipes/deepseek-v4.1-flash/sglang/agg-gb200/deploy.yaml:45-49]
  • User-facing recipe documentation still identifies the MoE backend as flashinfer_mxfp4, and describes the targets as unbenchmarked. The new measured AISimulate profiles are not currently reflected in this deployment contract. [::ai-dynamo/dynamo::docs/fern/pages/recipes/model-recipes/deepseek-v4-1-flash.mdx:43-49] [::ai-dynamo/dynamo::docs/fern/pages/recipes/model-recipes/deepseek-v4-1-flash.mdx:160-168]
🔇 Additional comments (1)
THIRD_PARTY_NOTICES.md (1)

515-516: 🗄️ Data Integrity & Integration

No attribution change is required.

The Rust operator and storage document identify the pinned SGLang sources, revision, license, and copyright. The regression tests are inline in crates/core/src/perfmodel/operators/dsv41.rs; no separate derived Rust test file requires attribution. Both notice copies name the Rust file, tests, and documentation.


📝 Summary

Risk: High

Human attention should focus on:

  1. Native Humming W4A16 qualification and dispatch, including its separation from CUTLASS and TRTLLM execution identities.
  2. Bounded-attention aggregation, especially owner-based reduction and physical-key collision checks.
  3. Schema-v2 provenance and admission rules across collection metadata and Parquet exports.

Changed behavior and contracts

  • Adds W4a16Mxfp4Humming to Rust and Python quantization APIs while preserving existing serialized discriminants.
  • Adds Humming backend resolution, catalog entries, and native qualification checks.
  • Adds isolated and attention-only DSV4.1 collection runners.
  • Adds validation for provenance, runtime, workload, rank, owner, and physical-key identity.
  • Adds bounded-attention aggregation using per-owner medians and equal-weight owner means.
  • Adds combined full and bounded export validation.
  • Changes Hopper DSV4.1 index-score modeling to use BF16 compute and two-byte query elements for the physical SM90 layout.
  • Adds schema-v2 collection metadata for H100, H200, B200, and GB200 datasets.
  • Updates collection documentation and third-party provenance notices.

Evidence supplied

  • Unit-test change summaries cover Humming admission, native baseline dispatch, attention collection, bounded aggregation, provenance, schema validation, and Rust engine configuration.
  • The PR objectives report 3,000 strict predictions, independent TP4 checkpoint validation, 10,120 physical keys, and 32 parquet/provenance files.
  • The PR objectives report passing tests, validation checks, packaging verification, and Fast and Full CI. These results are not independently verified here.

Evidence still missing

  • No test logs or validation artifacts were supplied for independent verification.
  • Current review severity counts are unavailable.
  • TP2 and H100 TP4 whole-model validation remain outside the stated residency scope.
  • The generated datasets and provenance artifacts still need verification against the reported counts and validation claims.

Technical quality

The changes add explicit checks for execution identity, provenance, schema compatibility, and aggregation inputs. Incorrect admission or aggregation could still produce measurements that do not represent the intended native execution path.

Merge readiness

Merge readiness is not established by the supplied evidence. Verify the reported CI and validation results, and inspect the generated dataset and provenance artifacts. The reported CI status is evidence to verify, not review approval.

Walkthrough

The change adds Humming MXFP4/BF16 support, Hopper-specific DeepSeek V4.1 scoring, native SGLang attention and isolated collectors, bounded evidence aggregation, and runtime and collection metadata for multiple systems.

Changes

DeepSeek V4.1 performance modeling

Layer / File(s) Summary
Humming quantization and SM90 performance modeling
crates/core/src/perfmodel/..., docs/deepseek-v41-storage.md, python/aisimulate/src/aisimulate_core/sdk/..., python/aisimulate/src/aisimulate_core/systems/h{100,200}_sxm.yaml
Adds W4a16Mxfp4Humming mappings while preserving serialized discriminants. SM90 scoring uses BF16 throughput and two-byte queries. Tests cover hardware selection and quantization identity.
Native Humming qualification and baselines
python/aisimulate/collector/..., python/aisimulate/tests/unit/collector/test_dsv41_humming*.py, python/aisimulate/tests/unit/collector/test_dsv41_native_baselines.py
Adds Humming backend classification, native qualification checks, backend-specific baseline records, and qualification receipts.
Attention and isolated collection paths
python/aisimulate/collector/sglang/dsv41_{attention_runner,isolated_runner}.py, python/aisimulate/tests/unit/collector/test_dsv41_{attention,isolated}.py, python/aisimulate/collector/sglang/README.dsv41.md
Adds native attention-only and isolated runners with plan validation, measurement collection, rank aggregation, provenance checks, tests, and workflow documentation.
Bounded evidence and export
python/aisimulate/collector/sglang/{collect_dsv41_module,dsv41_contract}.py, python/aisimulate/tests/unit/collector/test_dsv41_{bounded_aggregation,contract}.py
Adds bounded-owner evidence aggregation and validation for combining compatible full and bounded attention tables.
Runtime and collection metadata
python/aisimulate/src/aisimulate_core/systems/data/**/collection_meta.yaml, python/aisimulate/src/aisimulate_core/sdk/perf_database.py, python/aisimulate/tests/unit/sdk/**, THIRD_PARTY_NOTICES.md, python/aisimulate/THIRD_PARTY_NOTICES.md
Adds collection manifests and runtime metadata validation, with related schema tests and expanded provenance notices.

Priority: ➖ Normal

Estimated code review effort: 5 (Critical) | ~90 minutes

Merge Risk: ⚪ Minimal · up to 37c48

No actionable merge-blocking issue is established for these changes; the PR is mergeable after normal checks.

🚥 Pre-merge checks | ✅ 8
✅ Passed checks (8 passed)
Check name Status Explanation
Title check ✅ Passed The title precisely identifies the main behavioral change: collecting DeepSeek V4.1 operator profiles for the four target GPU systems. It is specific and avoids vague wording.
Description check ✅ Passed The description is substantially complete and provides detailed scope, implementation context, review guidance, validation evidence, provenance, limitations, and related work. It does not use every te…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Cross-Layer Contract ✅ Passed No stale cross-layer contract was found. The Humming identity is present in Python and Rust enums, engine dtype conversion, memory mapping, MoE table remapping, backend catalogs, and CLI-derived enum …
Modeling And Data Evidence ✅ Passed The PR supplies reproducible evidence for the new performance data. README.dsv41.md documents the pinned SGLang commit, image manifests, source hashes, collection method, 3,000 strict prediction che…
Compatibility Boundaries ✅ Passed Python and Rust surfaces remain aligned. The new Humming identity uses the same w4a16_mxfp4_humming token and BF16 mapping in Python, Rust serde, engine conversion, and database loading. The Rust va…
Review Evidence ✅ Passed The full PR description is available and provides named validation areas with results: focused tests, collector R1–R7, Ruff/format, CODEOWNERS, the public CLI, Python -I wheel verification, 3,000 pr…

Comment @coderabbitai help to get the list of available commands.

Signed-off-by: Harry Lee <harrli@nvidia.com>
Signed-off-by: Harry Lee <harrli@nvidia.com>
Signed-off-by: Harry Lee <harrli@nvidia.com>
Signed-off-by: Harry Lee <harrli@nvidia.com>
Signed-off-by: Harry Lee <harrli@nvidia.com>
Signed-off-by: Harry Lee <harrli@nvidia.com>
Signed-off-by: Harry Lee <harrli@nvidia.com>
Signed-off-by: Harry Lee <harrli@nvidia.com>
Signed-off-by: Harry Lee <harrli@nvidia.com>
Signed-off-by: Harry Lee <harrli@nvidia.com>
Signed-off-by: Harry Lee <harrli@nvidia.com>
Signed-off-by: Harry Lee <harrli@nvidia.com>
@Harrilee
Harrilee marked this pull request as ready for review September 22, 2026 08:05
@Harrilee
Harrilee requested review from a team as code owners September 22, 2026 08:05
@Harrilee
Harrilee enabled auto-merge (squash) September 28, 2026 23:51
@Harrilee
Harrilee merged commit 05b3e0b into main Sep 29, 2026
67 checks passed
@Harrilee
Harrilee deleted the harrli/dsv41-h100-h200-b200-gb200-op branch September 29, 2026 00:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants