feat(runtime): trace material validation requests
This commit is contained in:
@@ -125,6 +125,8 @@ pub enum MissionLoadPhase {
|
||||
GraphVisualWears,
|
||||
/// Resolve MAT0 documents while expanding visual dependencies.
|
||||
GraphVisualMaterials,
|
||||
/// Progress marker emitted after each 64 MAT0 validation requests.
|
||||
GraphVisualMaterialRequests(usize),
|
||||
/// Validate TEXM documents while expanding visual dependencies.
|
||||
GraphVisualTextures,
|
||||
/// Progress marker emitted after each 64 TEXM validation requests.
|
||||
@@ -723,12 +725,19 @@ fn load_mission_with_options_and_progress(
|
||||
record_load_phase(&mut trace, &mut on_phase, runtime_phase);
|
||||
last_graph_visual_phase = Some(runtime_phase);
|
||||
}
|
||||
if progress.phase == VisualDependencyPhase::Texture && progress.request_count > 1 {
|
||||
record_load_phase(
|
||||
&mut trace,
|
||||
&mut on_phase,
|
||||
MissionLoadPhase::GraphVisualTextureRequests(progress.request_count),
|
||||
);
|
||||
if progress.request_count > 1 {
|
||||
let request_phase = match progress.phase {
|
||||
VisualDependencyPhase::Wear => None,
|
||||
VisualDependencyPhase::Material => Some(
|
||||
MissionLoadPhase::GraphVisualMaterialRequests(progress.request_count),
|
||||
),
|
||||
VisualDependencyPhase::Texture => Some(
|
||||
MissionLoadPhase::GraphVisualTextureRequests(progress.request_count),
|
||||
),
|
||||
};
|
||||
if let Some(request_phase) = request_phase {
|
||||
record_load_phase(&mut trace, &mut on_phase, request_phase);
|
||||
}
|
||||
}
|
||||
},
|
||||
);
|
||||
|
||||
+10
-2
@@ -1103,8 +1103,9 @@ is only the last phase reached in one run: it is not proof of a single global
|
||||
bottleneck or of Vulkan involvement.
|
||||
|
||||
Visual expansion now reports each dependency-class entrance, its first request
|
||||
and every 64th later request; this is diagnostic-only and does not alter
|
||||
traversal, edges or validation. A
|
||||
and every 64th later request; runtime progress persists MAT0/TEXM counts at
|
||||
those boundaries. This is diagnostic-only and does not alter traversal, edges
|
||||
or validation. A
|
||||
later controlled 180-second Part 2 probe ended at `GraphVisualMaterials`,
|
||||
before the first TEXM progress marker. The differing checkpoints rule out the
|
||||
previous overly narrow claim that TEXM is the sole remaining target. Profiling
|
||||
@@ -1118,6 +1119,13 @@ unchanged. The same controlled 180-second Part 2 probe still ended at
|
||||
`GraphVisualMaterials`, so this is a complexity/correctness improvement rather
|
||||
than measured evidence of a startup checkpoint advance.
|
||||
|
||||
The MAT0 counter now records `GraphVisualMaterialRequests(N)` with the same
|
||||
64-request throttle. A fresh controlled Part 2 probe ended at
|
||||
`GraphVisualMaterialRequests(71)`: at least 71 MAT0 requests had begun before
|
||||
termination. It does not preserve the simultaneous TEXM count, so it neither
|
||||
identifies a slow individual material nor attributes time to MAT0 parsing; the
|
||||
next profiler revision needs one cumulative snapshot of all classes.
|
||||
|
||||
Mission loading now raises the decoded-payload cache entry budget from 64 to
|
||||
256 while retaining its 64 MiB byte budget. This avoids premature entry-count
|
||||
eviction during resource-rich loads without making memory unbounded. The same
|
||||
|
||||
Reference in New Issue
Block a user