@@ -936,6 +936,7 @@ class PerfTest {
936936 this .timelineFileName, {
937937 this .measureCpuGpu = true ,
938938 this .measureMemory = true ,
939+ this .measureTotalGCTime = true ,
939940 this .saveTraceFile = false ,
940941 this .testDriver,
941942 this .needsFullTimeline = true ,
@@ -953,6 +954,7 @@ class PerfTest {
953954 this .testTarget, {
954955 this .measureCpuGpu = false ,
955956 this .measureMemory = false ,
957+ this .measureTotalGCTime = false ,
956958 this .testDriver = 'test_driver/e2e_test.dart' ,
957959 this .needsFullTimeline = false ,
958960 this .benchmarkScoreKeys = _kCommonScoreKeys,
@@ -979,6 +981,8 @@ class PerfTest {
979981 final bool measureCpuGpu;
980982 /// Whether to collect memory metrics.
981983 final bool measureMemory;
984+ /// Whether to summarize total GC time on the UI thread from the timeline.
985+ final bool measureTotalGCTime;
982986 /// Whether to collect full timeline, meaning if `--trace-startup` flag is needed.
983987 final bool needsFullTimeline;
984988 /// Whether to save the trace timeline file `*.timeline.json` .
@@ -1114,6 +1118,7 @@ class PerfTest {
11141118 if (data['90th_percentile_memory_usage' ] != null ) '90th_percentile_memory_usage' ,
11151119 if (data['99th_percentile_memory_usage' ] != null ) '99th_percentile_memory_usage' ,
11161120 ],
1121+ if (measureTotalGCTime) 'total_ui_gc_time' ,
11171122 if (data['30hz_frame_percentage' ] != null ) '30hz_frame_percentage' ,
11181123 if (data['60hz_frame_percentage' ] != null ) '60hz_frame_percentage' ,
11191124 if (data['80hz_frame_percentage' ] != null ) '80hz_frame_percentage' ,
0 commit comments