Index: bench/GrResourceCacheBench.cpp |
diff --git a/bench/GrResourceCacheBench.cpp b/bench/GrResourceCacheBench.cpp |
index 6d631ddb2c4b62f74420a8c32f5c9816f7012403..ef97ed89711c9472c2c06b9cec5dfb4f47ad8224 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<GrPixelConfig>(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) { |