CLAUDE: 3-C rung 2 - corr2D_peak_eig (frozen 15-arg getMaxXYCmEig contract) +...
CLAUDE: 3-C rung 2 - corr2D_peak_eig (frozen 15-arg getMaxXYCmEig contract) + checkpoint-2 replay + synthetic numpy gate
Andrey's ruling 07/13/2026: the GPU peak contract = the 15-arg superset -
closed-form 2x2 eigen, recentering as a runtime param, envelope de-bias as
an optional array pointer (NULL = off).
- src/tp_peak.{h,cu}: corr2D_peak_eig, one block/tile - parallel load/NaN/
argmax(first-occurrence)/8-connected grow, thread-0 serial DOUBLE centroid/
covariance/eigen/recentering in the Java oracle's exact summation order.
- jna/tp_jna.cpp: kernel in the NVRTC module (24 kernels) +
tp_proc_exec_corr2d_peak / tp_proc_get_peaks / tp_proc_set_peak_debias.
- test_pose_corr + test_pose_corr_jna: checkpoint-2 replay (in-place
corr2D_normalize -> corr_pd tol tier, peaks vs the double Java oracle at
--peak-tol) when the case carries it; pre-rung-2 cases skip with a note.
- make_peak_case.py + test_peak: synthetic gate vs an INDEPENDENT numpy
float64 port (8 adversarial tiles + refine/debias case) - PASS at
max|diff| 0 / 9.6e-17.
- Regressions: test_pose_corr_jna bit-exact @tol 0 on the existing v013 case,
avg_td / avg_td_oob / convert_direct PASS.
Co-Authored-By:
Claude Fable 5 <noreply@anthropic.com>
Showing
src/tests/make_peak_case.py
0 → 100644
src/tests/test_peak.cu
0 → 100644
src/tp_peak.cu
0 → 100644
src/tp_peak.h
0 → 100644
Please register or sign in to comment