Commit 9a64f307 by Mohan Maiya Committed by Commit Bot

Vulkan: Reserve memory for ResourceUseList::mResourceUses

ResourceUseList::add is called repeatedly when we need to track a resource's usage in a context. Instead of a potential memory operation on each add we reserve memory upfront for about 4k SharedResourceUse objects. If the vector grows larger, it will be automatically handled by std::vector's allocator. Bug: angleproject:4950 Change-Id: Ic85ed44a6662819621ee9a47f43dd2542b73114d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2375801Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarTim Van Patten <timvp@google.com> Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
parent a4f706b2
......@@ -96,7 +96,11 @@ bool SharedGarbage::destroyIfComplete(RendererVk *renderer, Serial completedSeri
}
// ResourceUseList implementation.
ResourceUseList::ResourceUseList() = default;
ResourceUseList::ResourceUseList()
{
constexpr size_t kDefaultResourceUseCount = 4096;
mResourceUses.reserve(kDefaultResourceUseCount);
}
ResourceUseList::~ResourceUseList()
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment