CLAUDE: fix rectilinear inter-scene corr buffer sizing (JNA) — num_pairs=3
Second JNA-mode failure after the Phase-1 NPE fix: cudaErrorIllegalAddress at
tp_utils.cu:142 (image upload), actually a DEFERRED fault from the inter-scene
correlate2D_inter kernel writing out of bounds.
Root cause: GpuQuadJna.ensureRbgCorr sized the native correlation buffers via
Correlation2d.getNumPairs(num_cams). For the rectilinear single-camera config
num_cams=1 -> getNumPairs(1)=0 -> tp_proc_setup_rbg_corr allocates zero-size
gpu_corrs_td / gpu_corrs / gpu_corr_indices, so the inter-scene correlation
wrote past them -> illegal address, surfacing (sticky) at the next CUDA call.
Fix: mirror the JCuda oracle, whose rectilinear ctor hardcodes num_pairs=3
(GpuQuad.java:732) for exactly the inter-scene case ->
int num_pairs = rectilinear ? 3 : Correlation2d.getNumPairs(num_cams);
Java-only; libtileproc.so untouched. mvn compile clean.
Co-Authored-By:
Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Showing
Please register or sign in to comment