Files
foxhunt/docs
jgrusewski 8df28b81c8 merge: SP6 Pearl 5 — IQN τ per-branch (replaces SP5 broken upload pattern)
Brings in worktree-agent-acd65ada (commit 89fadec24): per-branch IQN
τ schedules via 4 forward passes per step, each with one branch's τ
slab swapped in via mem::swap. ÷4 budget normalization at every
per-branch IQN call preserves total gradient magnitude.

CRITICAL FIX: this merge replaces the SP5 Layer B Pearl 5 implementation
that violated feedback_no_cpu_compute_strict. The old refresh_taus_from_isv
called upload_f32_via_pinned every step inside the CUDA Graph capture
region, triggering CUDA_ERROR_STREAM_CAPTURE_UNSUPPORTED and the
'parent graph capture failed (continuing ungraphed)' fallback observed
in smoke-test-qtn7c at SP5 HEAD.

SP6 Pearl 5 uses pre-uploaded τ slabs + mem::swap pointer arithmetic.

Conflict resolution in fused_training.rs:
- Pearl 5 worktree branched from pre-Pearl-2 HEAD; renamed
  iqn_budget → iqn_trunk in 2 sites (parallel + sequential paths) to
  match Pearl 2's compute_adaptive_budgets() new return signature.
- Removed redundant single-call apply_iqn_trunk_gradient(iqn_trunk)
  from post-join block — Pearl 5's per-branch loop above already
  applies iqn_budget_per_branch = iqn_trunk/4 to the IQN trunk gradient
  4 times, achieving the same total magnitude with per-branch τ.

cargo check + cargo test --lib (sp4 sp5 state_reset_registry: 13/13)
both clean.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-02 09:14:52 +02:00
..