wip(standalone): GPU step 12 -- far evaluator cold use 1704 -> 3 ms; near detail now the floor
Split ordinary far evaluation from near-detail evaluation; [loop] in connector refinement and skirt clipping. Cold first use: EvaluateFarField 1704 -> 3.3 ms, connector rings 775 -> 630, skirt emit 948 -> 909, near detail 1783 ms (the floor). Warm-up still ~2.2 s; whole view CPU 1.351 s vs hybrid 3.210 s. Output-slot reuse fixed: crossing probe 1/1, 2,226/2,226 tiles. Audits: 0 topology/protected/thin diffs vs CPU and WARP, hashes + walk unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MmSoF64BbRFmk9C3p1VsBJ
This commit is contained in:
1 parent
7f64e2e0aa
commit
05b1523c54
24 files changed
+1033
-66
No files matched your search
@@ -2575,6 +2575,15 @@ float3 Lit=Rock*(Ambient+0.88*Diffuse)+float3(0.50,0.69,0.82)*Head*0.75;
|
||||
Key.Coord.X,Key.Coord.Y,Key.Coord.Z,Key.Level,
|
||||
Eligible.empty()||Eligible.back()!=Key?"cpu_fallback":"gpu_eligible");
|
||||
}
|
||||
const std::unordered_set<FVoxelTileKey,FStandaloneTileKeyHash> CurrentEligible(
|
||||
Eligible.begin(),Eligible.end());
|
||||
for(auto It=GpuFarTiles.begin();It!=GpuFarTiles.end();)
|
||||
{
|
||||
if(CurrentEligible.contains(It->first)){++It;continue;}
|
||||
GpuFarFreeOutputSlots.push_back(It->second.OutputSlot);
|
||||
ReleaseGpuFarTile(It->second);
|
||||
It=GpuFarTiles.erase(It);
|
||||
}
|
||||
if(RemoteLod3CpuFallbackTiles+RemoteLod4CpuFallbackTiles>0)
|
||||
std::printf("[GpuRemoteBandFallback] lod3_cpu_tiles=%llu lod4_cpu_tiles=%llu reason=remote_capture_pixel_coverage\n",
|
||||
static_cast<unsigned long long>(RemoteLod3CpuFallbackTiles),
|
||||
|
||||
Reference in new issue
Block a user