FLowLevelMemTracker::TickInternal() the ELLMTag::Total (and therefore ELLMTag::Untracked) memory amounts are calculated based only on the result of FPlatformMemory::GetStats(), which on the Windows platform calls ::GetProcessMemoryInfo that doesn't include video memory usage on the GPU.
However at least of some the memory usage of RHI resources like textures is included in the Tracked memory amount. This means the calculation of Untracked = Total(RAM) - Tracked(RAM + VRAM) leads to misleading result.
We should query the amount of VRAM used, which on Windows using DirectX can be queried by IDXGIAdapter3::QueryVideoMemoryInfo.
A likely fix for this is shelved in CL 27066730.
Run Lyra with -llm -trace=default,memory
LyraGame -llm -trace=default,memory
View the trace in UnrealInsights.
TODO: What are the actuals and expected for ELLMTag::Total and ELLMTag::Untracked
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-196837 in the post.
0 |
Component | UE - Foundation |
---|---|
Target Fix | 5.6 |
Created | Sep 29, 2023 |
---|---|
Updated | Oct 18, 2024 |