Allow cache tracking to be enabled in release
https://codereview.appspot.com/6500057/ git-svn-id: http://skia.googlecode.com/svn/trunk@5365 2bbb7eff-a529-9590-31e7-b0007b416f81
This commit is contained in:
parent
dc1a3badc7
commit
5955202c80
@ -1151,7 +1151,7 @@ int main(int argc, char * const argv[]) {
|
||||
|
||||
#if SK_SUPPORT_GPU
|
||||
|
||||
#if SK_DEBUG
|
||||
#if GR_CACHE_STATS
|
||||
for (int i = 0; i < configs.count(); i++) {
|
||||
ConfigData config = gRec[configs[i]];
|
||||
|
||||
|
@ -11,6 +11,8 @@
|
||||
#ifndef GrConfig_DEFINED
|
||||
#define GrConfig_DEFINED
|
||||
|
||||
#include "SkTypes.h"
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// preconfig section:
|
||||
//
|
||||
@ -48,6 +50,9 @@
|
||||
#if !defined(GR_QNX_BUILD)
|
||||
#define GR_QNX_BUILD 0
|
||||
#endif
|
||||
#if !defined(GR_CACHE_STATS)
|
||||
#define GR_CACHE_STATS 0
|
||||
#endif
|
||||
|
||||
/**
|
||||
* If no build target has been defined, attempt to infer.
|
||||
|
@ -10,6 +10,7 @@
|
||||
#ifndef GrContext_DEFINED
|
||||
#define GrContext_DEFINED
|
||||
|
||||
#include "GrConfig.h"
|
||||
#include "GrPaint.h"
|
||||
#include "GrAARectRenderer.h"
|
||||
#include "GrClipData.h"
|
||||
@ -775,7 +776,7 @@ public:
|
||||
bool antiAlias,
|
||||
bool allowSW);
|
||||
|
||||
#ifdef GR_DEBUG
|
||||
#if GR_CACHE_STATS
|
||||
void printCacheStats() const;
|
||||
#endif
|
||||
|
||||
|
@ -1964,7 +1964,7 @@ GrTexture* GrContext::gaussianBlur(GrTexture* srcTexture,
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
#if GR_DEBUG
|
||||
#if GR_CACHE_STATS
|
||||
void GrContext::printCacheStats() const {
|
||||
fTextureCache->printStats();
|
||||
}
|
||||
|
@ -68,7 +68,7 @@ public:
|
||||
GrResourceCache::GrResourceCache(int maxCount, size_t maxBytes) :
|
||||
fMaxCount(maxCount),
|
||||
fMaxBytes(maxBytes) {
|
||||
#if GR_DEBUG
|
||||
#if GR_CACHE_STATS
|
||||
fHighWaterEntryCount = 0;
|
||||
fHighWaterUnlockedEntryCount = 0;
|
||||
fHighWaterEntryBytes = 0;
|
||||
@ -137,7 +137,7 @@ void GrResourceCache::internalDetach(GrResourceEntry* entry,
|
||||
fClientDetachedCount += 1;
|
||||
fClientDetachedBytes += entry->resource()->sizeInBytes();
|
||||
|
||||
#if GR_DEBUG
|
||||
#if GR_CACHE_STATS
|
||||
if (fHighWaterClientDetachedCount < fClientDetachedCount) {
|
||||
fHighWaterClientDetachedCount = fClientDetachedCount;
|
||||
}
|
||||
@ -158,7 +158,7 @@ void GrResourceCache::attachToHead(GrResourceEntry* entry,
|
||||
|
||||
if (!entry->isLocked()) {
|
||||
++fUnlockedEntryCount;
|
||||
#if GR_DEBUG
|
||||
#if GR_CACHE_STATS
|
||||
if (fHighWaterUnlockedEntryCount < fUnlockedEntryCount) {
|
||||
fHighWaterUnlockedEntryCount = fUnlockedEntryCount;
|
||||
}
|
||||
@ -173,7 +173,7 @@ void GrResourceCache::attachToHead(GrResourceEntry* entry,
|
||||
fEntryCount += 1;
|
||||
fEntryBytes += entry->resource()->sizeInBytes();
|
||||
|
||||
#if GR_DEBUG
|
||||
#if GR_CACHE_STATS
|
||||
if (fHighWaterEntryCount < fEntryCount) {
|
||||
fHighWaterEntryCount = fEntryCount;
|
||||
}
|
||||
@ -308,7 +308,7 @@ void GrResourceCache::unlock(GrResourceEntry* entry) {
|
||||
entry->unlock();
|
||||
if (!entry->isLocked()) {
|
||||
++fUnlockedEntryCount;
|
||||
#if GR_DEBUG
|
||||
#if GR_CACHE_STATS
|
||||
if (fHighWaterUnlockedEntryCount < fUnlockedEntryCount) {
|
||||
fHighWaterUnlockedEntryCount = fUnlockedEntryCount;
|
||||
}
|
||||
@ -472,6 +472,9 @@ void GrResourceCache::validate() const {
|
||||
|
||||
GrAssert(fExclusiveList.countEntries() == fClientDetachedCount);
|
||||
}
|
||||
#endif // GR_DEBUG
|
||||
|
||||
#if GR_CACHE_STATS
|
||||
|
||||
void GrResourceCache::printStats() const {
|
||||
SkDebugf("Budget: %d items %d bytes\n", fMaxCount, fMaxBytes);
|
||||
|
@ -11,6 +11,7 @@
|
||||
#ifndef GrResourceCache_DEFINED
|
||||
#define GrResourceCache_DEFINED
|
||||
|
||||
#include "GrConfig.h"
|
||||
#include "GrTypes.h"
|
||||
#include "GrTHashCache.h"
|
||||
#include "SkTDLinkedList.h"
|
||||
@ -297,11 +298,14 @@ public:
|
||||
|
||||
#if GR_DEBUG
|
||||
void validate() const;
|
||||
void printStats() const;
|
||||
#else
|
||||
void validate() const {}
|
||||
#endif
|
||||
|
||||
#if GR_CACHE_STATS
|
||||
void printStats() const;
|
||||
#endif
|
||||
|
||||
private:
|
||||
void internalDetach(GrResourceEntry*, bool);
|
||||
void attachToHead(GrResourceEntry*, bool);
|
||||
@ -326,7 +330,7 @@ private:
|
||||
size_t fMaxBytes;
|
||||
|
||||
// our current stats, related to our budget
|
||||
#if GR_DEBUG
|
||||
#if GR_CACHE_STATS
|
||||
int fHighWaterEntryCount;
|
||||
int fHighWaterUnlockedEntryCount;
|
||||
size_t fHighWaterEntryBytes;
|
||||
|
Loading…
Reference in New Issue
Block a user