KhronosGroup / KhronosGroup/Vulkan-ValidationLayers
High memory usage
- Dominant language
- C++
- Stars
- 1k
- Forks
- 504
- Avg merge
- 11h 35m
- Merged PRs (30d)
- 224
Description
Forwarding an issue:
Wanted to suggest an explicit test for VVL static initializer memory usage (particularly by calls to new/malloc from statically initialized constructors) should be added. We've measured up to 12 megabytes of memory dynamically allocated (i.e., by calls to new/malloc) in constructors of statically initialized objects by VVL on our platform, and this seems to (in part) explain it. Compared to other similar layers like RenderDoc's capture layer, we would expect the amount of memory dynamically allocated by static initializes (note: this does not include the actual memory of the statically initialized objects themselves) to be on the order of several hundred kilobytes if any at all. It seems like it would be a good idea to test this in VVL to avoid future regressions.
I would also suggest a general effort to try to track down and reduce this memory usage (and ideally optimize allocation patterns to avoid many small allocations), as it significantly affects the usability of the VVL for developers on more memory constrained platforms.
Contributor guide
Assessment
This issue has not been assessed yet.