mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-07-22 12:49:18 +02:00
Add EU7 PACK v11 UTEX, section unload, and LRU streaming caches
Bake deduplicated section texture lists (UTEX) and read them at runtime so texture warm/prefetch no longer scans every instance. Evict PACK sections outside a 16 km keep ring and cap mesh/nodedata/texture warm caches to stop RAM and apply cost from growing without bound during long fast camera flight. - Bake v11 (format=4): UMES + UTEX + CHNK; mesh/texture ordering by frequency - Runtime: incremental UTEX warm, adaptive apply slices, preempt/catchup tuning - Unload: track instances per section, Region erase, pack pool release - LRU: mesh/nodedata (2000, ref-counted), warmed textures (2048) - Bench/diagnostics: unload and cache eviction counters - Fix pack instance erase in Region; resolve duplicate helper symbols
This commit is contained in:
@@ -72,7 +72,14 @@ struct Eu7PackBench {
|
||||
std::uint64_t stream_dequeue_wait_near { 0 };
|
||||
std::uint64_t stream_jobs_blocked_far { 0 };
|
||||
std::uint64_t stream_apply_stuck_skip { 0 };
|
||||
std::uint64_t stream_sections_unloaded { 0 };
|
||||
std::uint64_t stream_unload_instances { 0 };
|
||||
std::uint64_t stream_mesh_cache_evictions { 0 };
|
||||
std::uint64_t stream_nodedata_cache_evictions { 0 };
|
||||
std::uint64_t stream_texture_cache_evictions { 0 };
|
||||
double stream_prefetch_ready_tex_ms { 0.0 };
|
||||
double stream_prefetch_ready_umes_ms { 0.0 };
|
||||
std::uint64_t stream_prefetch_ready_umes_loads { 0 };
|
||||
std::uint64_t peak_pending_total { 0 };
|
||||
std::uint64_t stream_inst_planned { 0 };
|
||||
std::uint64_t stream_inst_after_cold { 0 };
|
||||
@@ -92,6 +99,7 @@ struct Eu7PackBench {
|
||||
std::uint64_t peak_chunk_instances { 0 };
|
||||
std::uint64_t peak_chunk_cold { 0 };
|
||||
double last_chunk_ms { 0.0 };
|
||||
double last_apply_ms { 0.0 };
|
||||
std::uint64_t last_chunk_instances { 0 };
|
||||
std::uint64_t last_chunk_cold { 0 };
|
||||
|
||||
|
||||
Reference in New Issue
Block a user