Skip to content

[TEST ONLY] Consolidated Bolt stack for Microsoft benchmarking - #33991

Draft
Rui Ren (rui-ren) wants to merge 6 commits into
mainfrom
ruiren/bolt-ms-bench
Draft

Rui Ren (rui-ren) wants to merge 6 commits into
mainfrom
ruiren/bolt-ms-bench

Conversation

@rui-ren

Copy link
Copy Markdown
Contributor

Description

TEST / BENCHMARK ONLY — do not merge.

Standalone consolidation of all four PRs in stack #33967, targeting main from ruiren/bolt-ms-bench:

Source PR Included snapshot
#33953 — GatherPacked, MatMulPacked, MoEPacked 2d9d48d4897e3f26e3148f630e08624a19fab5f2
#33962 — Bolt projection scaling and BF16 precision ca5bf6a4c1308b4374238b37884d07edf4c3bae5
#33963 — Bolt ReLU-square MoE and routing a9bdbce374a3b2757e1fd11ef83ce6f83502b0d9
#33969 — snapshot-aware Mamba2Verify 374c7d51d93bfdd29cb0f2efbc76b88e1e812aa7

The current bottom PR contains fixes and main updates absent from the upper branches. This branch starts at its current head and applies the combined upper-three delta from their shared packed-op baseline. Consolidation conflicts are resolved only here, preserving dimension/byte-size checks, unaligned loads, compiled BF16 capability checks, bounded packed-weight prefill scratch, native projection precision/scaling, preselected/sigmoid MoE routing, and Mamba snapshot behavior.

Includes a focused FP16/BF16 NVFP4 global-scale regression crossing the 4096-column prefill tile boundary.

Motivation and Context

Provide one independent branch and PR for Microsoft-side builds, tests, and benchmarks. The original four PRs, their head branches, base targets, draft states, and native stack membership are unchanged. This PR is not appended to the stack and does not supersede or close any source PR.

Validation

  • Compiled 14 exact consolidated CUDA/host/schema/test translation units using recorded production CUDA SM90a flags and read-only dependency headers.
  • Reconciled C++/CUDA files and the added regression pass the repository's clang-format check through lintrunner.
  • git diff --check passes; inherited Mamba sources and MoE routing tests are preserved exactly.
  • Runtime regression execution was attempted in an isolated overlay, but the borrowed support runtime is incompatible with the current sources (unresolved legacy/current-base CUDA support symbols). All selected runtime tests skipped; no runtime pass, clean full-runtime build, or benchmark result is claimed.

…block-packed weights

Add com.microsoft::GatherPacked (CPU and CUDA), com.microsoft::MatMulPacked
(CUDA), and com.microsoft::MoEPacked (CUDA) contrib operators that consume
2D/3D block-packed quantized weight blobs (such as GGUF IQ1/IQ2/IQ3/IQ4/Q2_0/Q4/Q5/Q6_K/Q8_0)
directly without offline repacking or split scale tensors.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Disallow output-type split-K reductions in MatMulPacked prefill so FP32 compute cannot silently round intermediate sums to BF16 or FP16. This addresses the Windows A10 packed-operator parity failures while retaining Tensor Core execution.

Preserve the caller's cuBLAS math mode, propagate mode-update failures, and add FP16/BF16 cancellation coverage with a documented prefill numerical contract.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Validate dimensions before narrowing, support unaligned packed and activation buffers, and bound MatMulPacked prefill scratch. Check compiled BF16 capability, preserve endian-safe decoding and ggml notices, and extend CPU/CUDA regression coverage.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Resolve the generated operator documentation conflicts by retaining both MoEGroupRouter and the packed operators.

Validation: CUDA 13.0 rebuild; 22 packed-operator tests, 14 focused C++ tests, 19 documentation tests; merged registration lint.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Start from current PR #33953 (2d9d48d) and consolidate the upper
three PRs #33962, #33963, and #33969 into a standalone test branch.
Preserve the latest packed-op validation, alignment, BF16 capability,
and bounded prefill scratch fixes alongside Bolt scaling, routing,
precision, and Mamba snapshots. Cover scaled prefill across N tiles.

Only the new benchmark branch is changed; the original stack remains
untouched. CUDA/host/schema/test translation units and formatting pass.
Runtime tests are unqualified because the borrowed overlay support
runtime has incompatible symbols.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 77d657ce-b25d-4ca6-9727-5653117637e0
Signed-off-by: rui-ren <ruiren1225@gmail.com>

This branch has not been deployed

No deployments
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