-
Andrey Filippov authored
Design 3-A4i rung C3 (Andrey 07/17: weights and their normalization once per scene, not every cycle - re-normalizing on each cycle's re-measurement makes the solver conditioning wobble with measurement noise while the information is a per-scene property): - pose_lma_assemble/pose_lma_prepare_finish gain a 'light' mode: cycle-1 conditioning (weights/eigen/selection/pull/reg/pure_weight) is FROZEN; light cycles write only the fresh measured offsets into the frozen structure and add fx (a frozen-selected tile with no fresh valid peak abstains: y=fx, zero residual, normalization untouched). - tp_proc_exec_pose_lma_prepare_resident(int light): guarded by pose_prep_frozen_tiles (a full prepare at this tile count must precede); light memsets only the measured y region, skips group/pull/reg uploads, skips the norm tail and diag/reg/normalize, skips the compact-result D2H. - Direct test: new LIGHT case (fresh peaks incl. abstains + moved fx) - y bit-exact vs serial float oracle, weights/eigen bit-identical frozen. Gates: direct full+LIGHT bit-exact, NVRTC resident + 19-float, pose_corr @tol 0, sanitizer 0 errors. Co-Authored-By:Claude Fable 5 <noreply@anthropic.com>
a13d1661