• Andrey Filippov's avatar
    CLAUDE: Add TpProc texture path (oracle): textures_nonoverlap + readback · 2aa4e6e0
    Andrey Filippov authored
    Oracle (clt_aberrations_quad_corr_GPU) needs the texture path that RT did not:
    execTextures (calc_extra -> diff_rgb_combo, calc_textures -> textures),
    getTextureIndices, getExtra, getFlatTextures.
    
    Adds to TpProc:
    - texture buffers (lazy-allocated in tp_proc_ensure_textures; sizes match
      GpuQuad: max_texture_size=(num_colors+1+(num_cams+num_colors+1))*256)
    - tp_proc_exec_textures: textures_nonoverlap<<<1,1>>> mirroring
      GpuQuad.execTextures_DP. The kernel CDP-builds the index list internally
      (create_nonoverlap_list) so we do NOT host pre-fill it, and CDP-launches
      textures_accumulate (dyn-shared attr set on the accumulate fn). linescan_order
      is taken from the caller (0 in production -> diff_rgb_combo in texture_indices
      order). This matches PRODUCTION, not the Stage-5 harness convention (linescan=1
      + host-prefilled indices + stale golden) that produced the documented
      diff_rgb_combo mismatch.
    - tp_proc_get_texture_indices / get_diff_rgb_combo / get_textures readback.
    
    Native compiles clean (4 new symbols exported). Not yet deployed: live .so
    left untouched (run was active); rebuild via jna/build_lib.sh when free.
    Co-Authored-By: 's avatarClaude Opus 4.8 (1M context) <noreply@anthropic.com>
    2aa4e6e0
tp_jna.cpp 68.7 KB