-
Andrey Filippov authored
Self-chaining launcher pose_lma_dp_cycles: each cycle's launcher reads the LIVE current_set (tail-enqueued behind the previous reduce_rms, so it sees the accept flip a single unrolled parent could not), resolves cur/cand from both physical sets in the PoseDpCycles descriptor, tail-enqueues the exact host per-cycle sequence (clear-y = light memset, assemble(light), fx_jacobian(current), prepare_finish(light), the six spike step stages), then pose_lma_dp_commit - the device-side anchor update on accept that the spike flagged as the multi-step gap - plus a minimal per-cycle 25-float trace (ruling b), and finally the next launcher. Fixed-K, no device early exit (ruling a). Interior cycles cross NOTHING host-side. Wrapper tp_proc_exec_pose_lma_dp_cycles: entry H2D = pose vectors + anchor + descriptor; one launch; D2H once = trace + final result + final anchor + set mirror. Preconditions: frozen conditioning (C3) + resident corr/peaks. Gate: test_pose_lma_dp_cycles_jna (new, in cases.list as dp_cycles) seeds resident measurement through the production chain (set_corr_indices_td -> normalize -> corr2D_peak_eig_f), freezes conditioning, then compares three chains (K=3 accept, K=2 reject, K=2 post-reject) against host-driven light-prepare+step cycles: per-cycle traces, final packed, final anchor, set index ALL BIT-IDENTICAL. run_cases.sh ALL PASS (pose_corr @tol 0, peak, peak_recenter, avg_td, avg_td_oob, bayer_staged, dp_cycles); DP spike test still PASS. Co-Authored-By:Claude Fable 5 <noreply@anthropic.com>
66fc53a1
| Name |
Last commit
|
Last update |
|---|---|---|
| eclipse_setup | ||
| jna | ||
| src | ||
| .gitignore | ||
| LICENSE | ||
| README.md | ||
| cases.list.tmpl | ||
| run_cases.sh |