summaryrefslogtreecommitdiff
path: root/tests/SurfaceComposition
diff options
context:
space:
mode:
authorYury Khmel <khmel@google.com>2015-10-05 19:15:57 +0900
committerYury Khmel <khmel@google.com>2015-10-05 19:24:56 +0900
commit9e433bba26f3520baeb9a341069a4ff34e460410 (patch)
tree991ab3279fd9147375d8366a9c1f82f6ede765f2 /tests/SurfaceComposition
parentf48e1e21241b9a24e85845fcaf6f95dcc0f01924 (diff)
Send status of Surface performance tests.
Following metrics are now available for TRANSLUCENT surfaces: surface-compoistion-peformance-sps surface-compoistion-bandwidth-gbps surface-allocation-performance-median-sps surface-allocation-performance-min-sps surface-allocation-performance-max-sps Bug: 24158847 Change-Id: I590fb6194983ce00bd5622b5a7596d05be60ebd4
Diffstat (limited to 'tests/SurfaceComposition')
-rw-r--r--tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionMeasuringActivity.java6
-rw-r--r--tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionTest.java29
2 files changed, 32 insertions, 3 deletions
diff --git a/tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionMeasuringActivity.java b/tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionMeasuringActivity.java
index e3e1d34f193e..b4e0c707d3f3 100644
--- a/tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionMeasuringActivity.java
+++ b/tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionMeasuringActivity.java
@@ -106,12 +106,12 @@ public class SurfaceCompositionMeasuringActivity extends Activity implements OnC
class CompositorScore {
double mSurfaces;
- double mBitrate;
+ double mBandwidth;
@Override
public String toString() {
return DOUBLE_FORMAT.format(mSurfaces) + " surfaces. " +
- "Bitrate: " + getReadableMemory((long)mBitrate) + "/s";
+ "Bandwidth: " + getReadableMemory((long)mBandwidth) + "/s";
}
}
@@ -131,7 +131,7 @@ public class SurfaceCompositionMeasuringActivity extends Activity implements OnC
score.mSurfaces = measureCompositionScore(new Measurement(0, 60.0),
new Measurement(mViews.size() + 1, 0.0f), pixelFormat);
// Assume 32 bits per pixel.
- score.mBitrate = score.mSurfaces * mTargetFPS * mWidth * mHeight * 4.0;
+ score.mBandwidth = score.mSurfaces * mTargetFPS * mWidth * mHeight * 4.0;
//memAccessTask.stop();
return score;
}
diff --git a/tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionTest.java b/tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionTest.java
index 6e9e7390c2c1..3f04888da637 100644
--- a/tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionTest.java
+++ b/tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionTest.java
@@ -15,7 +15,9 @@
*/
package android.surfacecomposition;
+import android.app.Activity;
import android.graphics.PixelFormat;
+import android.os.Bundle;
import android.surfacecomposition.SurfaceCompositionMeasuringActivity.AllocationScore;
import android.surfacecomposition.SurfaceCompositionMeasuringActivity.CompositorScore;
import android.test.ActivityInstrumentationTestCase2;
@@ -25,6 +27,16 @@ import android.util.Log;
public class SurfaceCompositionTest extends
ActivityInstrumentationTestCase2<SurfaceCompositionMeasuringActivity> {
private final static String TAG = "SurfaceCompositionTest";
+ private final static String KEY_SURFACE_COMPOSITION_PERFORMANCE =
+ "surface-compoistion-peformance-sps";
+ private final static String KEY_SURFACE_COMPOSITION_BANDWITH =
+ "surface-compoistion-bandwidth-gbps";
+ private final static String KEY_SURFACE_ALLOCATION_PERFORMANCE_MEDIAN =
+ "surface-allocation-performance-median-sps";
+ private final static String KEY_SURFACE_ALLOCATION_PERFORMANCE_MIN =
+ "surface-allocation-performance-min-sps";
+ private final static String KEY_SURFACE_ALLOCATION_PERFORMANCE_MAX =
+ "surface-allocation-performance-max-sps";
// Pass threshold for major pixel formats.
private final static int[] TEST_PIXEL_FORMATS = new int[] {
@@ -53,6 +65,7 @@ public class SurfaceCompositionTest extends
@SmallTest
public void testSurfaceCompositionPerformance() {
+ Bundle status = new Bundle();
for (int i = 0; i < TEST_PIXEL_FORMATS.length; ++i) {
int pixelFormat = TEST_PIXEL_FORMATS[i];
String formatName = SurfaceCompositionMeasuringActivity.getPixelFormatInfo(pixelFormat);
@@ -62,11 +75,20 @@ public class SurfaceCompositionTest extends
"performance score. " + score.mSurfaces + " < " +
MIN_ACCEPTED_COMPOSITION_SCORE[i] + ".",
score.mSurfaces >= MIN_ACCEPTED_COMPOSITION_SCORE[i]);
+ // Send status only for TRANSLUCENT format.
+ if (pixelFormat == PixelFormat.TRANSLUCENT) {
+ status.putDouble(KEY_SURFACE_COMPOSITION_PERFORMANCE, score.mSurfaces);
+ // Put bandwidth in GBPS.
+ status.putDouble(KEY_SURFACE_COMPOSITION_BANDWITH, score.mBandwidth /
+ (1024.0 * 1024.0 * 1024.0));
+ }
}
+ getInstrumentation().sendStatus(Activity.RESULT_OK, status);
}
@SmallTest
public void testSurfaceAllocationPerformance() {
+ Bundle status = new Bundle();
for (int i = 0; i < TEST_PIXEL_FORMATS.length; ++i) {
int pixelFormat = TEST_PIXEL_FORMATS[i];
String formatName = SurfaceCompositionMeasuringActivity.getPixelFormatInfo(pixelFormat);
@@ -76,6 +98,13 @@ public class SurfaceCompositionTest extends
"performance score. " + score.mMedian + " < " +
MIN_ACCEPTED_ALLOCATION_SCORE[i] + ".",
score.mMedian >= MIN_ACCEPTED_ALLOCATION_SCORE[i]);
+ // Send status only for TRANSLUCENT format.
+ if (pixelFormat == PixelFormat.TRANSLUCENT) {
+ status.putDouble(KEY_SURFACE_ALLOCATION_PERFORMANCE_MEDIAN, score.mMedian);
+ status.putDouble(KEY_SURFACE_ALLOCATION_PERFORMANCE_MIN, score.mMin);
+ status.putDouble(KEY_SURFACE_ALLOCATION_PERFORMANCE_MAX, score.mMax);
+ }
}
+ getInstrumentation().sendStatus(Activity.RESULT_OK, status);
}
}