profile: per-LOD whole-view breakdown for the four-strate owner world (L73, no world change)

FI/TN/VS (legacy compiled-analytic) skip ZERO tiles at every LOD and evaluate ~44k density
points per LOD0/1 tile; SW skips 359/512 at LOD0. The whole-tile skip requires a native
tile with a uniform verdict, and the legacy paths return Mixed/unknown (R39 notes attached).
Opt-in stage timers, sampled field timer, per-LOD classification and composer counters.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016dhxM43dnWvUu2B5Ph1iG1
This commit is contained in:
Fr0zkaandClaude Opus 5.5 committed 2026-10-27 08:48:57 +01:00
1 parent d970d75be8
commit bd1b2a8f1d
10 files changed
+702 -5

No files matched your search

@@ -5052,6 +5052,13 @@ namespace StandaloneStreamBenchmark
std::array<std::uint64_t,9> DensitySamplesByLOD{};
std::array<std::uint64_t,9> SkirtTrianglesByLOD{};
std::array<std::uint64_t,9> TileCountByLOD{};
std::array<std::uint64_t,9> ClassifiedAirTilesByLOD{},ClassifiedSolidTilesByLOD{};
std::array<std::uint64_t,9> ClassifiedMixedTilesByLOD{},UnclassifiedTilesByLOD{};
std::array<std::uint64_t,9> MeshingSkippedTilesByLOD{},DensityGridTilesByLOD{};
std::array<std::uint64_t,9> DensityPointCallsByLOD{},DensityFieldEvalNanosecondsByLOD{};
std::array<std::uint64_t,9> DensityFieldEvalSamplePointsByLOD{};
std::array<std::uint64_t,9> ProofAirCellsByLOD{},ProofSolidCellsByLOD{};
std::array<double,9> PayloadBuildMsByLOD{};
std::array<std::uint64_t,9> BaseRouteTilesByLOD{},PageRouteTilesByLOD{};
for(const FVoxelTileKey& Tile:Desired.Tiles)
if(Tile.Level>=0&&Tile.Level<static_cast<int32>(ExpectedTilesByLOD.size()))
@@ -5101,6 +5108,28 @@ namespace StandaloneStreamBenchmark
{
const std::size_t LOD=static_cast<std::size_t>(Tile.Key.Level);
++TileCountByLOD[LOD];
const auto& TileDiagnostics=Tile.CoreDiagnostics;
if(TileDiagnostics.tileWasClassified)
{
switch(TileDiagnostics.tileClass)
{
case VoxelForgeCore::TileClass::allAir:++ClassifiedAirTilesByLOD[LOD];break;
case VoxelForgeCore::TileClass::allSolid:++ClassifiedSolidTilesByLOD[LOD];break;
case VoxelForgeCore::TileClass::mixed:++ClassifiedMixedTilesByLOD[LOD];break;
case VoxelForgeCore::TileClass::unknown:++UnclassifiedTilesByLOD[LOD];break;
}
}
else ++UnclassifiedTilesByLOD[LOD];
if(TileDiagnostics.meshingSkipped)++MeshingSkippedTilesByLOD[LOD];
if(Tile.DensitySamples>0)++DensityGridTilesByLOD[LOD];
DensityPointCallsByLOD[LOD]+=TileDiagnostics.densityPointCalls;
DensityFieldEvalNanosecondsByLOD[LOD]+=
TileDiagnostics.densityFieldEvalNanoseconds;
DensityFieldEvalSamplePointsByLOD[LOD]+=
TileDiagnostics.densityFieldEvalSamplePoints;
ProofAirCellsByLOD[LOD]+=TileDiagnostics.marchingCubesProofSkippedAirCells;
ProofSolidCellsByLOD[LOD]+=TileDiagnostics.marchingCubesProofSkippedSolidCells;
PayloadBuildMsByLOD[LOD]+=Tile.PayloadBuildMilliseconds;
WorkerSecondsByLOD[LOD]+=Tile.WorkerSeconds;
if(bReportLodWorkProfile)
{
@@ -5549,6 +5578,31 @@ namespace StandaloneStreamBenchmark
GroundRefineExclusiveMsByLOD[LOD],CapRefineExclusiveMsByLOD[LOD],
SkirtMsByLOD[LOD],static_cast<unsigned long long>(SkirtTrianglesByLOD[LOD]),
MeshAssemblyMsByLOD[LOD]);
if(bInstrumentTileDrain)
{
const double FieldEvalEstimateMs=DensityFieldEvalSamplePointsByLOD[LOD]
?static_cast<double>(DensityFieldEvalNanosecondsByLOD[LOD])
*static_cast<double>(DensityPointCallsByLOD[LOD])
/static_cast<double>(DensityFieldEvalSamplePointsByLOD[LOD])/1.0e6
:0.0;
const double TileDivisor=TileCountByLOD[LOD]
?static_cast<double>(TileCountByLOD[LOD]):1.0;
std::printf("[WorldAssemblerLODClassification] lod=%zu tiles=%llu all_air=%llu all_solid=%llu mixed=%llu unclassified=%llu tile_skips=%llu density_grid_tiles=%llu density_point_calls=%llu density_points_per_tile=%.1f field_eval_ms_est=%.3f field_eval_sample_points=%llu proof_air_cells=%llu proof_solid_cells=%llu payload_build_ms=%.3f\n",
LOD,static_cast<unsigned long long>(TileCountByLOD[LOD]),
static_cast<unsigned long long>(ClassifiedAirTilesByLOD[LOD]),
static_cast<unsigned long long>(ClassifiedSolidTilesByLOD[LOD]),
static_cast<unsigned long long>(ClassifiedMixedTilesByLOD[LOD]),
static_cast<unsigned long long>(UnclassifiedTilesByLOD[LOD]),
static_cast<unsigned long long>(MeshingSkippedTilesByLOD[LOD]),
static_cast<unsigned long long>(DensityGridTilesByLOD[LOD]),
static_cast<unsigned long long>(DensityPointCallsByLOD[LOD]),
static_cast<double>(DensityPointCallsByLOD[LOD])/TileDivisor,
FieldEvalEstimateMs,
static_cast<unsigned long long>(DensityFieldEvalSamplePointsByLOD[LOD]),
static_cast<unsigned long long>(ProofAirCellsByLOD[LOD]),
static_cast<unsigned long long>(ProofSolidCellsByLOD[LOD]),
PayloadBuildMsByLOD[LOD]);
}
if(bReportLodWorkProfile)
{
const auto& Detail=*FarLODProfile;