From 71cb0c241e439b6ed746b90294d0b6916644a644 Mon Sep 17 00:00:00 2001 From: bsalomon Date: Fri, 14 Nov 2014 12:10:14 -0800 Subject: Replace GrResourceCache with GrResourceCache2. BUG=skia:2889 Committed: https://skia.googlesource.com/skia/+/66a450f21a3da174b7eed89a1d5fc8591e8b6ee6 Committed: https://skia.googlesource.com/skia/+/407aa584d183c1bf314f5defd1cf0202e8a96c89 Review URL: https://codereview.chromium.org/716143004 --- bench/GrResourceCacheBench.cpp | 32 +++++++++++++------------------- 1 file changed, 13 insertions(+), 19 deletions(-) (limited to 'bench/GrResourceCacheBench.cpp') diff --git a/bench/GrResourceCacheBench.cpp b/bench/GrResourceCacheBench.cpp index 6d631ddb2c..ef97ed8971 100644 --- a/bench/GrResourceCacheBench.cpp +++ b/bench/GrResourceCacheBench.cpp @@ -13,7 +13,6 @@ #include "GrGpuResource.h" #include "GrContext.h" #include "GrGpu.h" -#include "GrResourceCache.h" #include "GrResourceCache2.h" #include "GrStencilBuffer.h" #include "GrTexture.h" @@ -89,22 +88,20 @@ static void get_stencil(int i, int* w, int* h, int* s) { } static void get_texture_desc(int i, GrSurfaceDesc* desc) { - desc->fFlags = kRenderTarget_GrSurfaceFlag | - kNoStencil_GrSurfaceFlag; + desc->fFlags = kRenderTarget_GrSurfaceFlag | kNoStencil_GrSurfaceFlag; desc->fWidth = i % 1024; desc->fHeight = i * 2 % 1024; desc->fConfig = static_cast(i % (kLast_GrPixelConfig + 1)); - desc->fSampleCnt = i % 1 == 0 ? 0 : 4; + desc->fSampleCnt = ((i % 2) == 0) ? 0 : 4; } -static void populate_cache(GrResourceCache* cache, GrGpu* gpu, int resourceCount) { +static void populate_cache(GrGpu* gpu, int resourceCount) { for (int i = 0; i < resourceCount; ++i) { int w, h, s; get_stencil(i, &w, &h, &s); GrResourceKey key = GrStencilBuffer::ComputeKey(w, h, s); GrGpuResource* resource = SkNEW_ARGS(StencilResource, (gpu, i)); - cache->purgeAsNeeded(1, resource->gpuMemorySize()); - cache->addResource(key, resource); + resource->cacheAccess().setContentKey(key); resource->unref(); } @@ -113,8 +110,7 @@ static void populate_cache(GrResourceCache* cache, GrGpu* gpu, int resourceCount get_texture_desc(i, &desc); GrResourceKey key = TextureResource::ComputeKey(desc); GrGpuResource* resource = SkNEW_ARGS(TextureResource, (gpu, i)); - cache->purgeAsNeeded(1, resource->gpuMemorySize()); - cache->addResource(key, resource); + resource->cacheAccess().setContentKey(key); resource->unref(); } } @@ -198,25 +194,24 @@ protected: // Set the cache budget to be very large so no purging occurs. context->setResourceCacheLimits(2 * RESOURCE_COUNT, 1 << 30); - GrResourceCache* cache = context->getResourceCache(); GrResourceCache2* cache2 = context->getResourceCache2(); // Make sure the cache is empty. - cache->purgeAllUnlocked(); - SkASSERT(0 == cache->getCachedResourceCount() && 0 == cache->getCachedResourceBytes()); + cache2->purgeAllUnlocked(); + SkASSERT(0 == cache2->getResourceCount() && 0 == cache2->getResourceBytes()); GrGpu* gpu = context->getGpu(); for (int i = 0; i < loops; ++i) { - SkASSERT(0 == cache->getCachedResourceCount() && 0 == cache->getCachedResourceBytes()); + SkASSERT(0 == cache2->getResourceCount() && 0 == cache2->getResourceBytes()); - populate_cache(cache, gpu, RESOURCE_COUNT); + populate_cache(gpu, RESOURCE_COUNT); // Check that cache works. for (int k = 0; k < RESOURCE_COUNT; k += 33) { check_cache_contents_or_die(cache2, k); } - cache->purgeAllUnlocked(); + cache2->purgeAllUnlocked(); } } @@ -247,16 +242,15 @@ protected: // Set the cache budget to be very large so no purging occurs. context->setResourceCacheLimits(2 * RESOURCE_COUNT, 1 << 30); - GrResourceCache* cache = context->getResourceCache(); GrResourceCache2* cache2 = context->getResourceCache2(); // Make sure the cache is empty. - cache->purgeAllUnlocked(); - SkASSERT(0 == cache->getCachedResourceCount() && 0 == cache->getCachedResourceBytes()); + cache2->purgeAllUnlocked(); + SkASSERT(0 == cache2->getResourceCount() && 0 == cache2->getResourceBytes()); GrGpu* gpu = context->getGpu(); - populate_cache(cache, gpu, RESOURCE_COUNT); + populate_cache(gpu, RESOURCE_COUNT); for (int i = 0; i < loops; ++i) { for (int k = 0; k < RESOURCE_COUNT; ++k) { -- cgit v1.2.3