• Andrey Filippov's avatar
    CLAUDE: 3-C rung 2 - corr2D_peak_eig (frozen 15-arg getMaxXYCmEig contract) +... · 7ecab008
    Andrey Filippov authored
    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: 's avatarClaude Fable 5 <noreply@anthropic.com>
    7ecab008
tp_jna.cpp 81.1 KB