summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--startop/apps/test/Android.bp1
-rw-r--r--startop/apps/test/src/ApplicationBenchmarks.java39
-rw-r--r--startop/apps/test/src/InteractiveMicrobenchmarkActivity.java2
3 files changed, 42 insertions, 0 deletions
diff --git a/startop/apps/test/Android.bp b/startop/apps/test/Android.bp
index c7c70db60a72..f42c755e3efd 100644
--- a/startop/apps/test/Android.bp
+++ b/startop/apps/test/Android.bp
@@ -17,6 +17,7 @@
android_app {
name: "startop_test_app",
srcs: [
+ "src/ApplicationBenchmarks.java",
"src/ComplexLayoutInflationActivity.java",
"src/CPUIntensiveBenchmarkActivity.java",
"src/CPUIntensiveBenchmarks.java",
diff --git a/startop/apps/test/src/ApplicationBenchmarks.java b/startop/apps/test/src/ApplicationBenchmarks.java
new file mode 100644
index 000000000000..7d71916e6d8d
--- /dev/null
+++ b/startop/apps/test/src/ApplicationBenchmarks.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2019 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.startop.test;
+
+import android.app.Activity;
+import android.view.LayoutInflater;
+
+final class ApplicationBenchmarks {
+
+ public static final void initializeBenchmarks(Activity parent, BenchmarkRunner benchmarks) {
+ LayoutInflater inflater = LayoutInflater.from(parent);
+
+ benchmarks.addBenchmark("Complex Layout", () -> {
+ inflater.inflate(R.layout.activity_main, null);
+ });
+
+ benchmarks.addBenchmark("TextView List Layout", () -> {
+ inflater.inflate(R.layout.textview_list, null);
+ });
+
+ benchmarks.addBenchmark("FrameLayout List Layout", () -> {
+ inflater.inflate(R.layout.framelayout_list, null);
+ });
+ }
+}
diff --git a/startop/apps/test/src/InteractiveMicrobenchmarkActivity.java b/startop/apps/test/src/InteractiveMicrobenchmarkActivity.java
index 8ed7f6ae2109..c3839c17e4d8 100644
--- a/startop/apps/test/src/InteractiveMicrobenchmarkActivity.java
+++ b/startop/apps/test/src/InteractiveMicrobenchmarkActivity.java
@@ -36,6 +36,8 @@ public class InteractiveMicrobenchmarkActivity extends Activity implements Bench
addBenchmark("Empty", () -> {
});
addHeader("Application Benchmarks");
+ ApplicationBenchmarks.initializeBenchmarks(this, this);
+ addHeader("CPU Intensive Benchmarks");
CPUIntensiveBenchmarks.initializeBenchmarks(this, this);
addHeader("Init Check Overhead Benchmarks");
InitCheckOverheadBenchmarks.initializeBenchmarks(this, this);