diff --git a/startop/apps/test/Android.bp b/startop/apps/test/Android.bp
index 3f20273a8d61a..c7c70db60a721 100644
--- a/startop/apps/test/Android.bp
+++ b/startop/apps/test/Android.bp
@@ -25,8 +25,8 @@ android_app {
"src/InitCheckOverheadBenchmarkActivity.java",
"src/InitCheckOverheadBenchmarks.java",
"src/LayoutInflationActivity.java",
- "src/NonInteractiveSystemServerBenchmarkActivity.java",
- "src/SystemServerBenchmarkActivity.java",
+ "src/NonInteractiveMicrobenchmarkActivity.java",
+ "src/InteractiveMicrobenchmarkActivity.java",
"src/SystemServerBenchmarks.java",
"src/TextViewInflationActivity.java",
],
diff --git a/startop/apps/test/AndroidManifest.xml b/startop/apps/test/AndroidManifest.xml
index 235aa0d25e860..adaab61778edb 100644
--- a/startop/apps/test/AndroidManifest.xml
+++ b/startop/apps/test/AndroidManifest.xml
@@ -97,8 +97,8 @@
@@ -109,8 +109,8 @@
diff --git a/startop/apps/test/src/CPUIntensiveBenchmarkActivity.java b/startop/apps/test/src/CPUIntensiveBenchmarkActivity.java
index 2ec5308afe14a..db3234a721292 100644
--- a/startop/apps/test/src/CPUIntensiveBenchmarkActivity.java
+++ b/startop/apps/test/src/CPUIntensiveBenchmarkActivity.java
@@ -18,7 +18,7 @@ package com.android.startop.test;
import android.os.Bundle;
-public class CPUIntensiveBenchmarkActivity extends SystemServerBenchmarkActivity {
+public class CPUIntensiveBenchmarkActivity extends InteractiveMicrobenchmarkActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.system_server_benchmark_page);
diff --git a/startop/apps/test/src/InitCheckOverheadBenchmarkActivity.java b/startop/apps/test/src/InitCheckOverheadBenchmarkActivity.java
index 3e0e3b113a292..92d8638092d33 100644
--- a/startop/apps/test/src/InitCheckOverheadBenchmarkActivity.java
+++ b/startop/apps/test/src/InitCheckOverheadBenchmarkActivity.java
@@ -18,7 +18,7 @@ package com.android.startop.test;
import android.os.Bundle;
-public class InitCheckOverheadBenchmarkActivity extends SystemServerBenchmarkActivity {
+public class InitCheckOverheadBenchmarkActivity extends InteractiveMicrobenchmarkActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.system_server_benchmark_page);
diff --git a/startop/apps/test/src/SystemServerBenchmarkActivity.java b/startop/apps/test/src/InteractiveMicrobenchmarkActivity.java
similarity index 68%
rename from startop/apps/test/src/SystemServerBenchmarkActivity.java
rename to startop/apps/test/src/InteractiveMicrobenchmarkActivity.java
index 6be8df3728afe..8ed7f6ae21094 100644
--- a/startop/apps/test/src/SystemServerBenchmarkActivity.java
+++ b/startop/apps/test/src/InteractiveMicrobenchmarkActivity.java
@@ -18,12 +18,13 @@ package com.android.startop.test;
import android.app.Activity;
import android.content.Context;
+import android.graphics.Typeface;
import android.os.Bundle;
import android.widget.Button;
import android.widget.GridLayout;
import android.widget.TextView;
-public class SystemServerBenchmarkActivity extends Activity implements BenchmarkRunner {
+public class InteractiveMicrobenchmarkActivity extends Activity implements BenchmarkRunner {
protected GridLayout mBenchmarkList;
protected void onCreate(Bundle savedInstanceState) {
@@ -32,9 +33,31 @@ public class SystemServerBenchmarkActivity extends Activity implements Benchmark
mBenchmarkList = findViewById(R.id.benchmark_list);
+ addBenchmark("Empty", () -> {
+ });
+ addHeader("Application Benchmarks");
+ CPUIntensiveBenchmarks.initializeBenchmarks(this, this);
+ addHeader("Init Check Overhead Benchmarks");
+ InitCheckOverheadBenchmarks.initializeBenchmarks(this, this);
+ addHeader("System Server Benchmarks");
SystemServerBenchmarks.initializeBenchmarks(this, this);
}
+ /**
+ * Add a heading for a group of related benchmarks
+ *
+ * @param name The name of this group of benchmarks
+ */
+ public void addHeader(CharSequence name) {
+ Context context = mBenchmarkList.getContext();
+ TextView header = new TextView(context);
+ header.setText(name);
+ header.setTypeface(header.getTypeface(), Typeface.BOLD);
+ GridLayout.LayoutParams params = new GridLayout.LayoutParams();
+ params.columnSpec = GridLayout.spec(0, 3);
+ mBenchmarkList.addView(header, params);
+ }
+
/**
* Adds a benchmark to the set to run.
*
diff --git a/startop/apps/test/src/NonInteractiveSystemServerBenchmarkActivity.java b/startop/apps/test/src/NonInteractiveMicrobenchmarkActivity.java
similarity index 96%
rename from startop/apps/test/src/NonInteractiveSystemServerBenchmarkActivity.java
rename to startop/apps/test/src/NonInteractiveMicrobenchmarkActivity.java
index a2dc2cf03d690..0162ac6c5d817 100644
--- a/startop/apps/test/src/NonInteractiveSystemServerBenchmarkActivity.java
+++ b/startop/apps/test/src/NonInteractiveMicrobenchmarkActivity.java
@@ -36,7 +36,7 @@ import android.widget.Button;
import android.widget.GridLayout;
import android.widget.TextView;
-public class NonInteractiveSystemServerBenchmarkActivity extends Activity {
+public class NonInteractiveMicrobenchmarkActivity extends Activity {
ArrayList benchmarkNames = new ArrayList();
ArrayList benchmarkThunks = new ArrayList();
diff --git a/startop/apps/test/src/SystemServerBenchmarks.java b/startop/apps/test/src/SystemServerBenchmarks.java
index 25b43f4d53f60..8114bc225c23e 100644
--- a/startop/apps/test/src/SystemServerBenchmarks.java
+++ b/startop/apps/test/src/SystemServerBenchmarks.java
@@ -57,9 +57,6 @@ class SystemServerBenchmarks {
static void initializeBenchmarks(Activity parent, BenchmarkRunner benchmarks) {
final String packageName = parent.getPackageName();
- benchmarks.addBenchmark("Empty", () -> {
- });
-
PackageManager pm = parent.getPackageManager();
benchmarks.addBenchmark("getInstalledApplications", () -> {
pm.getInstalledApplications(PackageManager.MATCH_SYSTEM_ONLY);