| Index: tools/PictureBenchmark.cpp
|
| ===================================================================
|
| --- tools/PictureBenchmark.cpp (revision 14079)
|
| +++ tools/PictureBenchmark.cpp (working copy)
|
| @@ -22,7 +22,8 @@
|
| , fTimerResult(TimerData::kAvg_Result)
|
| , fTimerTypes(0)
|
| , fTimeIndividualTiles(false)
|
| -, fPurgeDecodedTex(false)
|
| +, fPurgeDecodedTex1(false)
|
| +, fPreprocess(false)
|
| {}
|
|
|
| PictureBenchmark::~PictureBenchmark() {
|
| @@ -76,11 +77,25 @@
|
| fRenderer->init(pict, NULL, NULL, false);
|
|
|
| // We throw this away to remove first time effects (such as paging in this program)
|
| - fRenderer->setup();
|
| + fRenderer->setup1();
|
| +
|
| + if (fPreprocess) {
|
| + if (NULL != fRenderer->getCanvas()) {
|
| + fRenderer->getCanvas()->EXPERIMENTAL_optimize(pict);
|
| + }
|
| + }
|
| +
|
| fRenderer->render(NULL);
|
| fRenderer->resetState(true); // flush, swapBuffers and Finish
|
|
|
| - if (fPurgeDecodedTex) {
|
| + if (fPreprocess) {
|
| +// pict->needsNewGenID();
|
| + if (NULL != fRenderer->getCanvas()) {
|
| + fRenderer->getCanvas()->EXPERIMENTAL_purge();
|
| + }
|
| + }
|
| +
|
| + if (fPurgeDecodedTex1) {
|
| fRenderer->purgeTextures();
|
| }
|
|
|
| @@ -160,7 +175,7 @@
|
| perTileTimer->end();
|
| SkAssertResult(perTileTimerData.appendTimes(perTileTimer.get()));
|
|
|
| - if (fPurgeDecodedTex) {
|
| + if (fPurgeDecodedTex1) {
|
| fRenderer->purgeTextures();
|
| }
|
| }
|
| @@ -185,7 +200,7 @@
|
| this->logProgress(result.c_str());
|
| #endif
|
|
|
| - if (fPurgeDecodedTex) {
|
| + if (fPurgeDecodedTex1) {
|
| configName.append(" <withPurging>");
|
| }
|
| configName.append(" <averaged>");
|
| @@ -206,7 +221,7 @@
|
|
|
| longRunningTimer->start();
|
| for (int inner = 0; inner < numInnerLoops; ++inner) {
|
| - fRenderer->setup();
|
| + fRenderer->setup1();
|
|
|
| perRunTimer->start();
|
| fRenderer->render(NULL);
|
| @@ -216,9 +231,17 @@
|
|
|
| SkAssertResult(perRunTimerData.appendTimes(perRunTimer.get()));
|
|
|
| - if (fPurgeDecodedTex) {
|
| + if (fPreprocess) {
|
| +// pict->needsNewGenID();
|
| + if (NULL != fRenderer->getCanvas()) {
|
| + fRenderer->getCanvas()->EXPERIMENTAL_purge();
|
| + }
|
| + }
|
| +
|
| + if (fPurgeDecodedTex1) {
|
| fRenderer->purgeTextures();
|
| }
|
| +
|
| }
|
| longRunningTimer->truncatedEnd();
|
| fRenderer->resetState(true); // flush, swapBuffers and Finish
|
| @@ -227,7 +250,7 @@
|
| }
|
|
|
| SkString configName = fRenderer->getConfigName();
|
| - if (fPurgeDecodedTex) {
|
| + if (fPurgeDecodedTex1) {
|
| configName.append(" <withPurging>");
|
| }
|
|
|
|
|