Grow descriptor pools by 1.5

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2121243002

Review-Url: https://codereview.chromium.org/2121243002
This commit is contained in:
egdaniel 2016-07-06 12:00:12 -07:00 committed by Commit bot
parent ca9eeab0ea
commit 5c4a381b31
2 changed files with 6 additions and 4 deletions

View File

@ -398,8 +398,9 @@ void GrVkPipelineState::addUniformResources(GrVkCommandBuffer& commandBuffer) {
void GrVkPipelineState::DescriptorPoolManager::getNewPool(GrVkGpu* gpu) {
if (fPool) {
fPool->unref(gpu);
if (fMaxDescriptors < kMaxDescLimit >> 1) {
fMaxDescriptors = fMaxDescriptors << 1;
uint32_t newPoolSize = fMaxDescriptors + ((fMaxDescriptors + 1) >> 1);
if (newPoolSize < kMaxDescLimit) {
fMaxDescriptors = newPoolSize;
} else {
fMaxDescriptors = kMaxDescLimit;
}

View File

@ -196,8 +196,9 @@ void GrVkResourceProvider::getUniformDescriptorSet(VkDescriptorSet* ds,
fCurrentUniformDescCount += kNumUniformDescPerSet;
if (fCurrentUniformDescCount > fCurrMaxUniDescriptors) {
fUniformDescPool->unref(fGpu);
if (fCurrMaxUniDescriptors < kMaxUniformDescriptors >> 1) {
fCurrMaxUniDescriptors = fCurrMaxUniDescriptors << 1;
uint32_t newPoolSize = fCurrMaxUniDescriptors + ((fCurrMaxUniDescriptors + 1) >> 1);
if (newPoolSize < kMaxUniformDescriptors) {
fCurrMaxUniDescriptors = newPoolSize;
} else {
fCurrMaxUniDescriptors = kMaxUniformDescriptors;
}