Skip to content

Interleave runtime collective startup measurements - #128

Draft
voipmonitor wants to merge 8 commits into
mainfrom
claude/runtime-collectives-hostbridge
Draft

voipmonitor wants to merge 8 commits into
mainfrom
claude/runtime-collectives-hostbridge

Conversation

@voipmonitor

@voipmonitor voipmonitor commented Oct 28, 2026 •

Copy link
Copy Markdown
Collaborator

Collective startup tuning captures each reduction group separately, so a group's samples run consecutively instead of being separated by other prepared groups. To measure candidates across that broader execution sequence, the groups must share a startup graph while retaining independent selectors and failure checks.

This branch replaces per-group startup graphs with one graph that interleaves 21 sample passes across all required groups. Ignition captures it in the package graph pool, retains each group's selector and status, and publishes an aggregate status through caller-owned storage. Native loading keeps its zero-success/nonzero-failure contract; diagnostics count selector bindings. Reduced serving capacities retain the aggregate graph and its workspace. The ladder reader also admits destination-serialized profiles subject to FlashInfer's rank and CTA constraints. These changes depend on FlashInfer #62, pinned at 729464839, for the interleaved producer and serialized writers; that dependency must be resolved before this integration can merge. No native operation contract or shutdown deadline changes.

The expected benefit is less dependence on consecutive samples of one collective group. A serving-throughput improvement is not qualified, and this PR remains research-only for performance. The companion kernel has a measured switched-fabric regression. FlashInfer #62 also displays a broader, unqualified comparison against its rewritten main history; the focused integration results below do not qualify that entire dependency diff.

Correctness qualification at Flare c2310615, incorporating 90b5c6d3, with FlashInfer 729464839: 169 focused CPU checks and six GPU cases passed. Automatic export checks startup replay and device allocations within the package address window. Native TP4 writer fixtures passed on host-bridge-connected GPUs 8/10/12/14 and switched GPUs 12–15. Protocol counters and generation-tagged queue completion verify that the selected writer executes. Checks cover bytewise arithmetic, immutable selectors, allocation stability, peer-import reachability, retained owners, and native drain.

The performance blocker is the companion payload_rsag kernel, which performs payload reduce-scatter/all-gather. On switched RTX PRO 6000 SM120 TP4, BF16 [31,5120], 512 threads and 64 active CTAs, sustained probes measured 12.244 → 14.552 µs p50 (+18.9%). The affected range is approximately 17–32 rows. Cases used at least two seconds of warmup and three seconds of timing with repeated upstream controls. The requested graphics clock was 3090 MHz; observed SM clocks were 2842–2910 MHz. The cause remains unresolved.

The following whole-model measurements are upstream controls, not before/after results for this PR. Both runtime packages used FlashInfer 0b6178857:

DeepSeek V4.1 Flash, RTX PRO 6000 SM120 TP4 C1 tok/s C8 tok/s C16 tok/s
Flare eb71702b, host bridges, GPUs 0/4/8/12 190.35 345.74 391.53
Native-static host-bridge reference 247.90 463.16 511.29
Flare eb71702b, switched, GPUs 12–15 319.29 869.97 1162.69
Flare 90b5c6d3, host bridges, GPUs 0/4/8/12 163.47 385.11 348.20
Flare 90b5c6d3, switched, GPUs 12–15 309.59 855.32 1168.18

Conditions: prepared concurrency 16, fixed verification width 8, 64G prefix cache, two 30-second cells per concurrency, and unmodified boost clocks. Every row, including the static reference, used Engram weights on disk, scales in RAM, and a 4 GiB row cache. RAM-delivery comparisons are unqualified. Packages gb202-tp4-202610290017 and gb202-tp4-202610291301 retained different complete kernel catalogs, so their difference cannot isolate one preparation change.

For those two packages respectively, 81 startup groups took 6.96/6.66 s on host bridges and 4.12/3.74 s switched. Package 0017 measured host-bridge C16 GPU intervals of 50.88/52.01 ms per round versus 39.62 ms for the static reference. Preparation resource release took 30.5/15.3 s, both within the unchanged 60 s deadline; package 1301 completed one full garbage collection per rank. Those release results qualify the upstream reclamation implementation, not a lifecycle change in this PR.

Remaining gates are the companion regression, measured ladder additions, final native replay, full-model C1/C8/C16 qualification, three independent starts, and two independent exports. No throughput target is claimed as met.

Release tuning-only references before b12x performs terminal reclamation,
so one full collection reclaims both ownership layers. Preserve collection
after failed reclamation, borrowed-state restoration, and native drain order.
The supervisor's 60 s shutdown bound and process protocol remain intact.

Implemented and qualified on DeepSeek V4.1 TP4, concurrency 16, on frank2
GPUs 12-15. Paired with bounded FlashInfer candidate metadata, release took
15.8 s and export published gb202-tp4-202610281800. The 141 focused CPU tests
cover cycles, failed eviction, retry, idempotence, and restoration ordering.

Design-Signed-Off-By: Codex GPT-6; design-review=1c01
Pin FlashInfer to the bounded-metadata and destination-batched collective
implementation. Exercise static and runtime preparation in the TP4 fixture,
capture startup dependencies, and derive the oracle from device selectors.
Poison selectors before startup and retain both graph catalogs until native
replay drains; verify rank agreement and stable selections across variants.

Implemented coverage; 15 CPU checks and lock validation pass. GPU execution
of the extended native fixture and complete model performance remain unqualified.
The dependency's collective profile remains research-only pending those checks.

Design-Signed-Off-By: Codex GPT-6; design-review=1c01
@voipmonitor
voipmonitor marked this pull request as draft October 28, 2026 19:52
@voipmonitor voipmonitor changed the title Bound export shutdown by peer exit; recognize phased PCIe joint modes Reclaim preparation metadata and validate native collective startup Oct 28, 2026
@voipmonitor
voipmonitor force-pushed the claude/runtime-collectives-hostbridge branch from c6208ed to e44d424 Compare October 28, 2026 19:52
Require all joint workspace and startup imports, account for pointer tables
inside retained allocator backing, and reject unused two-shot imports. The
runtime fixture previously required every allocated import even when no
captured graph referenced its channel. Preserve exact expected/exported
equality and report missing, extra, and retained-unused allocations.

Reuse the identical seeded CPU operands across row capacities and capture
epochs without changing any replay or numerical check. Qualified: 15 CPU
checks, both runtime fixtures on host-bridge GPUs 0,4,8,12, and all four
static/runtime fixtures on switched GPUs 12-15 on frank2. Startup selection,
bytewise results, allocation stability, ownership, and native drain pass.

Design-Signed-Off-By: Codex GPT-6; design-review=1c01
Release tuning-only references before b12x performs terminal reclamation,
so one full collection reclaims both ownership layers. Preserve collection
after failed reclamation, borrowed-state restoration, and native drain order.
The supervisor's 60 s shutdown bound and process protocol remain intact.

Implemented; qualified with 97 focused CPU tests covering cycles, failed
eviction, retry, idempotence, and restoration ordering. Isolated full-model
release timing for this change on Flare eb71702 is not yet qualified.

Design-Signed-Off-By: Codex GPT-6; design-review=1c01
Capture every referenced reduction group in one startup graph, retaining its
individual selector and status buffers. Aggregate failures in caller-owned
storage while Helios keeps the existing zero/nonzero status contract. Loading
reduced serving capacities still retains this producer and its workspace.
Accept peer-write profiles with their rank and CTA constraints, and report
native diagnostic counts by binding rather than by startup graph.

Implemented; qualified with 166 focused CPU tests, the native diagnostic
formatter test, captured aggregate-status replay, and both automatic-export
GPU cases on SM120. Pin the validated FlashInfer tree published as 729464839;
uv lock --check passes. Measured ladder additions, full-model throughput, and
startup selection stability remain research-only.

Design-Signed-Off-By: Codex GPT-6; design-review=1c01
Retain the native collective validation branch ancestry after integration
against Flare eb71702. The staged source tree was verified equal to the
reviewed c42d53f tree, including its qualified tests and locked FI dependency.

Design-Signed-Off-By: Codex GPT-6; design-review=1c01
@voipmonitor voipmonitor changed the title Reclaim preparation metadata and validate native collective startup Interleave runtime collective startup measurements Oct 29, 2026
Use a writer-only test ladder with the packaged geometries, then check the
selected protocol's epoch and barrier/completion state after native replay.
This distinguishes serial and queued execution from a base transport with
the same arithmetic. Retain bytewise output, allocation, exact peer-import,
owner-lifetime, and drain checks.

Implemented and qualified with 20 CPU checks and four GPU cases against
FI 729464839: frank1 host bridges 8/10/12/14 and frank2 switched 12-15.
These are correctness checks; serving performance remains unqualified.

Design-Signed-Off-By: Codex GPT-6; design-review=1c01
Capture the aggregate startup graph in the package graph pool and reject
capture without package storage, preserving main's allocation ownership fix.
Use main's terminal tuning-owner reclamation implementation and retain its
restoration-failure coverage. Native tests check startup replay, package
address bounds, and the executed peer-write protocols.

Implemented and qualified with 169 focused CPU tests and six GPU cases
against FI 729464839: automatic export and native writers on frank2 12-15,
plus native writers on frank1 host bridges 8/10/12/14. Full-model performance
and independent-start qualification remain pending.

Design-Signed-Off-By: Codex GPT-6; design-review=1c01
@original-el8 original-el8 added area:preparation Ignition checkpoint loading, tuning, compilation, capture, and export. performance Performance, latency, throughput, or memory-efficiency investigation or improvement. triage:design-review Needs a maintainer scope, architecture, or contract decision before implementation or integration. labels Nov 5, 2026
@original-el8

Copy link
Copy Markdown
Collaborator

Marked triage:design-review: the remaining proposal is interleaved collective startup sampling and PCIe profile selection. The PR itself confirms that tuning-owner reclamation is already on main, so that resolved lifecycle problem should not justify merging the remaining changes.

The proposed FlashInfer dependency PR #62 is still open. Resolve the startup-selection design and dependency together, then remeasure against main's startup-storage changes from #197. This is not a closure candidate solely because the reclamation work is complete.

@original-el8

Copy link
Copy Markdown
Collaborator

@voipmonitor GitHub reports that this PR has merge conflicts with main. A local git merge-tree check also confirms conflicts for PR head c231061573e6 against main at c65024dba32b (2026-11-05).

Conflicting files:

  • helios/src/execution/tests.rs
  • helios/src/execution/transport.rs
  • ignition/preparation/collective_ladder.py
  • ignition/preparation/ladders/README.md
  • ignition/preparation/startup_tuning.py
  • pyproject.toml
  • tests/preparation/test_collective_ladder.py
  • tests/preparation/test_startup_tuning.py
  • uv.lock

Please update the branch against main (rebase or merge), resolve these conflicts, and rerun the affected checks.

@original-el8 original-el8 added the model:deepseek-v4.1 Affected recipe or documented reproducer: deepseek-v4.1. Impact may be broader. label Nov 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:preparation Ignition checkpoint loading, tuning, compilation, capture, and export. model:deepseek-v4.1 Affected recipe or documented reproducer: deepseek-v4.1. Impact may be broader. performance Performance, latency, throughput, or memory-efficiency investigation or improvement. triage:design-review Needs a maintainer scope, architecture, or contract decision before implementation or integration.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants