Skip to content

Add awq_marlin - #826

Merged
Ying1123 merged 1 commit into
mainfrom
add-awq-marlin
Jul 30, 2024
Merged

Ying1123 merged 1 commit into
mainfrom
add-awq-marlin

Conversation

@Ying1123

Copy link
Copy Markdown
Contributor

No description provided.

@Ying1123
Ying1123 merged commit b579ecf into main Jul 30, 2024
@Ying1123
Ying1123 deleted the add-awq-marlin branch July 30, 2024 09:04
@Ying1123 Ying1123 mentioned this pull request Jul 30, 2024
timethink pushed a commit to timethink/sglang that referenced this pull request Mar 9, 2025
amote-i pushed a commit to amote-i/sglang that referenced this pull request Dec 8, 2025
…oject#826)

Co-authored-by: wangguoyan <wangguoyan6@h-partners.com>
efschu pushed a commit to efschu/htsglang that referenced this pull request Aug 23, 2026
Wave 3, stage 1 -- the first stage of the batched-window tree. Carries
WINDOW-QUEUE tickets W1 (sgl-project#825/sgl-project#827, release-walk crash guard) and W2 (sgl-project#826,
solved arming floor), which the queue requires to ship in the SAME tree: W1
lets the boot survive the flip walk and W2 lets the flip actually arm, so
validating either alone repeats boot_827's wasted window.

Four commits, base 21ff075 (the feat/822 stage):

  bb09574  [sgl-project#825] Prove the prefix trees congruent at the one aligned point
  80ca356  [sgl-project#826] Adopt the solved arming floor, or refuse the boot by name
  e0895cf  [sgl-project#825/sgl-project#827] Withdraw the tree reset: it crashed on resident lock refs
  500be7e  [W2] Pre-flight: arming reachability must include the measured seam draw

ANCESTRY COMPUTED, NOT INFERRED FROM THE BRANCH NAME. merge-base with the tip
is 21ff075, i.e. this branch does not carry fix/815-rest-stubdrift. That
matters only if the two touch the same files, and they do not: sgl-project#815 is
test-only across ten helper files, none of which are the five test files here.

CONFLICT LAGE: none, and checked rather than hoped. `git merge-tree
--write-tree` against the tip returned a single tree with no conflict block
before the merge was attempted, and the merge itself reported "Automatic merge
went well". The file surface is DISJOINT from wave 3's other stage
(fix/801-void-send-contract, which touches only scheduler_pp_mixin.py), so the
two stages cannot interact textually.

W2's ticket is preflight_pass=N and that is NOT a reason to keep it off the
line. The queue's N is CONDITIONAL: the solved arming floor is reachable only
while the seam's measured draw stays at or below the solved 218 MiB reserve,
and the measured draws on this rig are 162/387/436/907 MiB. That gates the
WINDOW, not the merge -- the actuator sits behind SGLANG_ARMING_FLOOR_SOLVED,
so merging it changes no default. Delivering one bootable tree is this
strand's job; whether the window runs is the operator's.

The branch's own pre-flight suite is worth naming because it refuses a false
green rather than manufacturing one: test_arming_reachability_preflight_w2.py
asserts `band_floor + max(reserve, measured_draw) + margin <= band_ceiling`
and records that the obvious W2 assertion -- 819 + 218 + 192 = 1229 <= 1229 --
is true and useless, because it silently assumes a measured draw of zero,
which is the case that does not occur.

SECTION 18 DUTY, DISCHARGED IN THIS MERGE. This stage adds a new reusable
module, managers/tree_congruence.py, so rule 5 applies to this merge the same
way it applied to the four modules catalogued in 9f1af20. The entry is in
this commit (docs/dev/FEATURE_CATALOG.md, section 18.5). The reusable part is
not the prefix-tree logic but the equality-by-MIN-reduce trick: a digest sent
as the pair (d, -d) makes the group agree iff group_min == -group_neg_min,
which turns "are all ranks equal?" into two MIN-reduces over a collective that
offers only min. The entry states the gate honestly: DETECTION is ungated and
always runs, while the RECOVERY is behind SGLANG_TREE_RECONCILE
(phase_flip_runtime.py:3777, unset = OFF) because the reset it performs is
what crashed on resident lock references and was withdrawn rather than
repaired in place.

GATE. Battery test/registered/unit/{managers,planner,server_args,mem_cache},
hermetic under CUDA_VISIBLE_DEVICES="", PYTHONPATH set to this worktree,
one battery at a time.

    baseline (tip 4f2072a)   7 failed, 8585 passed, 1852 skipped, 887 s
    this stage                  7 failed, 8638 passed, 1852 skipped, 868 s
    NEW failure ids             NONE (comm against the baseline list is empty)
    fixed vs baseline           0

The +53 passes are this stage's own new cases; the failure set is unchanged
and is still exactly the seven known ones.

The baseline was re-measured in this worktree rather than inherited from
strand 17c, and came out byte-identical to its list: the same seven cases, all
in test_pp_flip_slot_hold_631.py, left red on purpose (see the stub-drift
family in section 12 of the catalog).

The gate is not vacuum-green: all five suites this stage adds land INSIDE the
battery directories and are therefore actually collected --
test_arming_floor_actuator_826.py, test_arming_reachability_preflight_w2.py,
test_tree_congruence_825.py and test_tree_congruence_wiring_825.py under
managers, test_lock_release_walk_detached_827.py under mem_cache.

Section-18 pointer checker (test_building_blocks_catalog_538.py): 104 passed,
up from 101, the three new cases being the three new tree_congruence
citations.

COVERAGE CHECK, because a battery that silently fails to collect is a gate
that measures nothing. The W4/W5 strand reported that its worktree cannot
collect the managers suite at all -- 92 modules import `datasets`, which is
not installed there. That does NOT apply to this gate, and it was verified in
the positive direction rather than inferred from the absence of an error
message: the venv here has datasets 5.0.0, the battery log contains zero
collection errors and zero ModuleNotFoundError, and an explicit --collect-only
over test/registered/unit/managers reports 3436 tests collected. The numbers
above therefore cover the managers suite in full.

No boot. Serving stays down; this tree is the input to ONE batched window, not
a reason to open one.
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.

1 participant