Merge "[ui] Rename form label to "Track name" in debug tracks menu"
diff --git a/src/trace_processor/metrics/sql/android/startup/thread_state_breakdown.sql b/src/trace_processor/metrics/sql/android/startup/thread_state_breakdown.sql
index b3939bb..4ef1fc4 100644
--- a/src/trace_processor/metrics/sql/android/startup/thread_state_breakdown.sql
+++ b/src/trace_processor/metrics/sql/android/startup/thread_state_breakdown.sql
@@ -38,8 +38,10 @@
CREATE TABLE launch_thread_state_io_wait_dur_sum AS
SELECT startup_id, state, is_main_thread, thread_name, io_wait, SUM(dur) AS dur
FROM launch_threads_by_thread_state l
+JOIN android_startup_processes p USING (startup_id)
WHERE
- is_main_thread
+ -- If it is a main thread, only add it if it is the lauching thread.
+ (is_main_thread AND p.startup_type NOT NULL)
-- Allowlist specific threads which need this. Do not add to this list
-- without careful consideration as every thread added here can cause
-- memory usage to balloon.
diff --git a/ui/src/controller/track_decider.ts b/ui/src/controller/track_decider.ts
index 4882400..aadb889 100644
--- a/ui/src/controller/track_decider.ts
+++ b/ui/src/controller/track_decider.ts
@@ -198,14 +198,39 @@
return 'Unknown';
}
+ async guessCpuSizes(): Promise<Map<number, string>> {
+ const cpuToSize = new Map<number, string>();
+ await this.engine.query(`
+ SELECT IMPORT('common.cpus');
+ `);
+ const result = await this.engine.query(`
+ SELECT cpu, GUESS_CPU_SIZE(cpu) as size FROM cpu_counter_track;
+ `);
+
+ const it = result.iter({
+ cpu: NUM,
+ size: STR,
+ });
+
+ for (; it.valid(); it.next()) {
+ cpuToSize.set(it.cpu, it.size);
+ }
+
+ return cpuToSize;
+ }
+
async addCpuSchedulingTracks(): Promise<void> {
const cpus = await this.engine.getCpus();
+ const cpuToSize = await this.guessCpuSizes();
+
for (const cpu of cpus) {
+ const size = cpuToSize.get(cpu);
+ const name = size === undefined ? `Cpu ${cpu}` : `Cpu ${cpu} (${size})`;
this.tracksToAdd.push({
engineId: this.engineId,
kind: CPU_SLICE_TRACK_KIND,
trackSortKey: PrimaryTrackSortKey.ORDINARY_TRACK,
- name: `Cpu ${cpu}`,
+ name,
trackGroup: SCROLLING_TRACK_GROUP,
config: {
cpu,