From 056f11060f57969b3f963305f6013dac682ba608 Mon Sep 17 00:00:00 2001 From: Zachary Anderson Date: Fri, 26 Aug 2022 14:06:26 -0700 Subject: [PATCH] Add several new iOS/Impeller benchmarks (#110358) --- .ci.yaml | 129 +++++++++++++++++- TESTOWNERS | 26 +++- ...pacity_perf_impeller_ios__e2e_summary.dart | 14 ++ ...complex_opacity_perf_ios__e2e_summary.dart | 14 ++ ...r_perf_impeller_ios__timeline_summary.dart | 12 ++ ...d_fade_perf_impeller_ios__e2e_summary.dart | 14 ++ ...filter_and_fade_perf_ios__e2e_summary.dart | 14 ++ ...l_perf_impeller_ios__timeline_summary.dart | 12 ++ ...ry__transition_perf_e2e_impeller_ios.dart} | 2 +- ...tfield_perf_impeller_ios__e2e_summary.dart | 14 ++ ...creen_textfield_perf_ios__e2e_summary.dart | 14 ++ ...n_perf_impeller_ios__timeline_summary.dart | 12 ++ ..._animation_perf_ios__timeline_summary.dart | 12 ++ .../tasks/microbenchmarks_impeller_ios.dart | 13 ++ ...l_perf_impeller_ios__timeline_summary.dart | 12 ++ .../simple_animation_perf_impeller_ios.dart | 12 ++ ...l_perf_impeller_ios__timeline_summary.dart | 12 ++ dev/devicelab/lib/tasks/gallery.dart | 9 +- dev/devicelab/lib/tasks/microbenchmarks.dart | 3 +- dev/devicelab/lib/tasks/perf_tests.dart | 36 +++-- 20 files changed, 365 insertions(+), 21 deletions(-) create mode 100644 dev/devicelab/bin/tasks/animated_complex_opacity_perf_impeller_ios__e2e_summary.dart create mode 100644 dev/devicelab/bin/tasks/animated_complex_opacity_perf_ios__e2e_summary.dart create mode 100644 dev/devicelab/bin/tasks/backdrop_filter_perf_impeller_ios__timeline_summary.dart create mode 100644 dev/devicelab/bin/tasks/color_filter_and_fade_perf_impeller_ios__e2e_summary.dart create mode 100644 dev/devicelab/bin/tasks/color_filter_and_fade_perf_ios__e2e_summary.dart create mode 100644 dev/devicelab/bin/tasks/complex_layout_scroll_perf_impeller_ios__timeline_summary.dart rename dev/devicelab/bin/tasks/{flutter_gallery_ios__transition_perf.dart => flutter_gallery__transition_perf_e2e_impeller_ios.dart} (86%) create mode 100644 dev/devicelab/bin/tasks/fullscreen_textfield_perf_impeller_ios__e2e_summary.dart create mode 100644 dev/devicelab/bin/tasks/fullscreen_textfield_perf_ios__e2e_summary.dart create mode 100644 dev/devicelab/bin/tasks/imagefiltered_transform_animation_perf_impeller_ios__timeline_summary.dart create mode 100644 dev/devicelab/bin/tasks/imagefiltered_transform_animation_perf_ios__timeline_summary.dart create mode 100644 dev/devicelab/bin/tasks/microbenchmarks_impeller_ios.dart create mode 100644 dev/devicelab/bin/tasks/platform_views_scroll_perf_impeller_ios__timeline_summary.dart create mode 100644 dev/devicelab/bin/tasks/simple_animation_perf_impeller_ios.dart create mode 100644 dev/devicelab/bin/tasks/tiles_scroll_perf_impeller_ios__timeline_summary.dart diff --git a/.ci.yaml b/.ci.yaml index 8b5b93b448..d0d8c4b738 100644 --- a/.ci.yaml +++ b/.ci.yaml @@ -3087,6 +3087,16 @@ targets: ["devicelab", "ios", "mac"] task_name: backdrop_filter_perf_ios__timeline_summary + - name: Mac_ios backdrop_filter_perf_impeller_ios__timeline_summary + recipe: devicelab/devicelab_drone + presubmit: false + bringup: true + timeout: 60 + properties: + tags: > + ["devicelab", "ios", "mac"] + task_name: backdrop_filter_perf_impeller_ios__timeline_summary + - name: Mac_ios basic_material_app_ios__compile recipe: devicelab/devicelab_drone presubmit: false @@ -3140,7 +3150,7 @@ targets: properties: tags: > ["devicelab", "ios", "mac"] - task_name: complex_layout_scroll_perf_ios__timeline_summary + task_name: complex_layout_scroll_perf_bad_ios__timeline_summary - name: Mac_ios complex_layout_scroll_perf_bad_impeller_ios__timeline_summary recipe: devicelab/devicelab_drone @@ -3150,7 +3160,57 @@ targets: properties: tags: > ["devicelab", "ios", "mac"] - task_name: complex_layout_scroll_perf_ios__timeline_summary + task_name: complex_layout_scroll_perf_bad_impeller_ios__timeline_summary + + - name: Mac_ios complex_layout_scroll_perf_impeller_ios__timeline_summary + recipe: devicelab/devicelab_drone + presubmit: false + bringup: true + timeout: 60 + properties: + tags: > + ["devicelab", "ios", "mac"] + task_name: complex_layout_scroll_perf_impeller_ios__timeline_summary + + - name: Mac_ios color_filter_and_fade_perf_ios__e2e_summary + recipe: devicelab/devicelab_drone + presubmit: false + bringup: true + timeout: 60 + properties: + tags: > + ["devicelab", "ios", "mac"] + task_name: color_filter_and_fade_perf_ios__e2e_summary + + - name: Mac_ios color_filter_and_fade_perf_impeller_ios__e2e_summary + recipe: devicelab/devicelab_drone + presubmit: false + bringup: true + timeout: 60 + properties: + tags: > + ["devicelab", "ios", "mac"] + task_name: color_filter_and_fade_perf_impeller_ios__e2e_summary + + - name: Mac_ios imagefiltered_transform_animation_perf_ios__timeline_summary + recipe: devicelab/devicelab_drone + presubmit: false + bringup: true + timeout: 60 + properties: + tags: > + ["devicelab", "ios", "mac"] + task_name: imagefiltered_transform_animation_perf_ios__timeline_summary + + - name: Mac_ios imagefiltered_transform_animation_perf_impeller_ios__timeline_summary + recipe: devicelab/devicelab_drone + presubmit: false + bringup: true + timeout: 60 + properties: + tags: > + ["devicelab", "ios", "mac"] + task_name: imagefiltered_transform_animation_perf_impeller_ios__timeline_summary - name: Mac_ios external_ui_integration_test_ios bringup: true # Flaky https://github.com/flutter/flutter/issues/106806 @@ -3402,6 +3462,16 @@ targets: ["devicelab", "ios", "mac"] task_name: microbenchmarks_ios + - name: Mac_ios microbenchmarks_impeller_ios + recipe: devicelab/devicelab_drone + presubmit: false + bringup: true # Flaky: https://github.com/flutter/flutter/issues/106753 + timeout: 60 + properties: + tags: > + ["devicelab", "ios", "mac"] + task_name: microbenchmarks_impeller_ios + - name: Mac_ios native_platform_view_ui_tests_ios bringup: true recipe: devicelab/devicelab_drone @@ -3493,6 +3563,16 @@ targets: ["devicelab", "ios", "mac"] task_name: platform_views_scroll_perf_ios__timeline_summary + - name: Mac_ios platform_views_scroll_perf_impeller_ios__timeline_summary + recipe: devicelab/devicelab_drone + presubmit: false + bringup: true + timeout: 60 + properties: + tags: > + ["devicelab", "ios", "mac"] + task_name: platform_views_scroll_perf_impeller_ios__timeline_summary + - name: Mac_ios post_backdrop_filter_perf_ios__timeline_summary recipe: devicelab/devicelab_drone presubmit: false @@ -3511,6 +3591,16 @@ targets: ["devicelab", "ios", "mac"] task_name: simple_animation_perf_ios + - name: Mac_ios simple_animation_perf_impeller_ios + recipe: devicelab/devicelab_drone + presubmit: false + bringup: true + timeout: 60 + properties: + tags: > + ["devicelab", "ios", "mac"] + task_name: simple_animation_perf_impeller_ios + - name: Mac_ios hot_mode_dev_cycle_ios__benchmark recipe: devicelab/devicelab_drone presubmit: false @@ -3520,6 +3610,26 @@ targets: ["devicelab", "ios", "mac"] task_name: hot_mode_dev_cycle_ios__benchmark + - name: Mac_ios fullscreen_textfield_perf_ios__e2e_summary + recipe: devicelab/devicelab_drone + presubmit: false + bringup: true + timeout: 60 + properties: + tags: > + ["devicelab", "ios", "mac"] + task_name: fullscreen_textfield_perf_ios__e2e_summary + + - name: Mac_ios fullscreen_textfield_perf_impeller_ios__e2e_summary + recipe: devicelab/devicelab_drone + presubmit: false + bringup: true + timeout: 60 + properties: + tags: > + ["devicelab", "ios", "mac"] + task_name: fullscreen_textfield_perf_impeller_ios__e2e_summary + - name: Mac_ios tiles_scroll_perf_ios__timeline_summary recipe: devicelab/devicelab_drone presubmit: false @@ -3529,6 +3639,16 @@ targets: ["devicelab", "ios", "mac"] task_name: tiles_scroll_perf_ios__timeline_summary + - name: Mac_ios tiles_scroll_perf_impeller_ios__timeline_summary + recipe: devicelab/devicelab_drone + presubmit: false + bringup: true + timeout: 60 + properties: + tags: > + ["devicelab", "ios", "mac"] + task_name: tiles_scroll_perf_impeller_ios__timeline_summary + - name: Mac_ios flutter_gallery__transition_perf_e2e_ios recipe: devicelab/devicelab_drone presubmit: false @@ -3538,14 +3658,15 @@ targets: ["devicelab", "ios", "mac"] task_name: flutter_gallery__transition_perf_e2e_ios - - name: Mac_ios flutter_gallery_ios__transition_perf + - name: Mac_ios flutter_gallery__transition_perf_e2e_impeller_ios recipe: devicelab/devicelab_drone presubmit: false + bringup: true timeout: 60 properties: tags: > ["devicelab", "ios", "mac"] - task_name: flutter_gallery_ios__transition_perf + task_name: flutter_gallery__transition_perf_e2e_impeller_ios - name: Mac_ios flutter_gallery_ios_sksl_warmup__transition_perf recipe: devicelab/devicelab_drone diff --git a/TESTOWNERS b/TESTOWNERS index 17ed0c322f..4b65cffffa 100644 --- a/TESTOWNERS +++ b/TESTOWNERS @@ -142,28 +142,38 @@ /dev/devicelab/bin/tasks/tiles_scroll_perf__timeline_summary.dart @zanderso @flutter/engine ## Mac iOS DeviceLab tests +/dev/devicelab/bin/tasks/animated_complex_opacity_perf_impeller_ios__e2e_summary.dart @zanderso @flutter/engine +/dev/devicelab/bin/tasks/animated_complex_opacity_perf_ios__e2e_summary.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/animation_with_microtasks_perf_ios__timeline_summary.dart @iskakaushik @flutter/engine +/dev/devicelab/bin/tasks/backdrop_filter_perf_impeller_ios__timeline_summary.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/backdrop_filter_perf_ios__timeline_summary.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/basic_material_app_ios__compile.dart @zanderso @flutter/tool /dev/devicelab/bin/tasks/channels_integration_test_ios.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/codegen_integration_mac.dart @zanderso @flutter/tool +/dev/devicelab/bin/tasks/color_filter_and_fade_perf_impeller_ios__e2e_summary.dart @zanderso @flutter/engine +/dev/devicelab/bin/tasks/color_filter_and_fade_perf_ios__e2e_summary.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/complex_layout_ios__compile.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/complex_layout_ios__start_up.dart @zanderso @flutter/engine -/dev/devicelab/bin/tasks/complex_layout_scroll_perf_ios__timeline_summary.dart @zanderso @flutter/engine -/dev/devicelab/bin/tasks/complex_layout_scroll_perf_bad_ios__timeline_summary.dart @jonahwilliams @flutter/engine /dev/devicelab/bin/tasks/complex_layout_scroll_perf_bad_impeller_ios__timeline_summary.dart @jonahwilliams @flutter/engine +/dev/devicelab/bin/tasks/complex_layout_scroll_perf_bad_ios__timeline_summary.dart @jonahwilliams @flutter/engine +/dev/devicelab/bin/tasks/complex_layout_scroll_perf_impeller_ios__timeline_summary.dart @zanderso @flutter/engine +/dev/devicelab/bin/tasks/complex_layout_scroll_perf_ios__timeline_summary.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/cubic_bezier_perf_ios_sksl_warmup__timeline_summary.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/external_ui_integration_test_ios.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/flavors_test_ios.dart @jmagman @flutter/tool +/dev/devicelab/bin/tasks/flutter_gallery__transition_perf_e2e_impeller_ios.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/flutter_gallery__transition_perf_e2e_ios.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/flutter_gallery_ios__compile.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/flutter_gallery_ios__start_up.dart @zanderso @flutter/engine -/dev/devicelab/bin/tasks/flutter_gallery_ios__transition_perf.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/flutter_gallery_ios_sksl_warmup__transition_perf.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/flutter_view_ios__start_up.dart @zanderso @flutter/engine +/dev/devicelab/bin/tasks/fullscreen_textfield_perf_impeller_ios__e2e_summary.dart @zanderso @flutter/engine +/dev/devicelab/bin/tasks/fullscreen_textfield_perf_ios__e2e_summary.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/hello_world_ios__compile.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/hot_mode_dev_cycle_ios__benchmark.dart @zanderso @flutter/tool /dev/devicelab/bin/tasks/hot_mode_dev_cycle_macos_target__benchmark.dart @zanderso @flutter/tool +/dev/devicelab/bin/tasks/imagefiltered_transform_animation_perf_impeller_ios__timeline_summary.dart @zanderso @flutter/engine +/dev/devicelab/bin/tasks/imagefiltered_transform_animation_perf_ios__timeline_summary.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/integration_test_test_ios.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/integration_ui_ios_driver.dart @zanderso @flutter/tool /dev/devicelab/bin/tasks/integration_ui_ios_frame_number.dart @iskakaushik @flutter/engine @@ -177,20 +187,24 @@ /dev/devicelab/bin/tasks/ios_platform_view_tests.dart @stuartmorgan @flutter/plugin /dev/devicelab/bin/tasks/large_image_changer_perf_ios.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/macos_chrome_dev_mode.dart @zanderso @flutter/tool +/dev/devicelab/bin/tasks/microbenchmarks_impeller_ios.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/microbenchmarks_ios.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/native_platform_view_ui_tests_ios.dart @hellohuanlin @flutter/ios -/dev/devicelab/bin/tasks/new_gallery_ios__transition_perf.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/new_gallery_impeller_ios__transition_perf.dart @zanderso @flutter/engine +/dev/devicelab/bin/tasks/new_gallery_ios__transition_perf.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/platform_channel_sample_test_ios.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/platform_channel_sample_test_swift.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/platform_channels_benchmarks_ios.dart @gaaclarke @flutter/engine /dev/devicelab/bin/tasks/platform_interaction_test_ios.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/platform_view_ios__start_up.dart @stuartmorgan @flutter/plugin +/dev/devicelab/bin/tasks/platform_views_scroll_perf_impeller_ios__timeline_summary.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/platform_views_scroll_perf_ios__timeline_summary.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/post_backdrop_filter_perf_ios__timeline_summary.dart @zanderso @flutter/engine -/dev/devicelab/bin/tasks/simple_animation_perf_ios.dart @zanderso @flutter/engine -/dev/devicelab/bin/tasks/tiles_scroll_perf_ios__timeline_summary.dart @zanderso @flutter/engine /dev/devicelab/bin/tasks/route_test_ios.dart @jasguerrero @flutter/tool +/dev/devicelab/bin/tasks/simple_animation_perf_impeller_ios.dart @zanderso @flutter/engine +/dev/devicelab/bin/tasks/simple_animation_perf_ios.dart @zanderso @flutter/engine +/dev/devicelab/bin/tasks/tiles_scroll_perf_impeller_ios__timeline_summary.dart @zanderso @flutter/engine +/dev/devicelab/bin/tasks/tiles_scroll_perf_ios__timeline_summary.dart @zanderso @flutter/engine ## Host only DeviceLab tests /dev/devicelab/bin/tasks/build_aar_module_test.dart @zanderso @flutter/tool diff --git a/dev/devicelab/bin/tasks/animated_complex_opacity_perf_impeller_ios__e2e_summary.dart b/dev/devicelab/bin/tasks/animated_complex_opacity_perf_impeller_ios__e2e_summary.dart new file mode 100644 index 0000000000..71eacabfff --- /dev/null +++ b/dev/devicelab/bin/tasks/animated_complex_opacity_perf_impeller_ios__e2e_summary.dart @@ -0,0 +1,14 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'dart:async'; + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/perf_tests.dart'; + +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createAnimatedComplexOpacityPerfE2ETest(enableImpeller: true)); +} diff --git a/dev/devicelab/bin/tasks/animated_complex_opacity_perf_ios__e2e_summary.dart b/dev/devicelab/bin/tasks/animated_complex_opacity_perf_ios__e2e_summary.dart new file mode 100644 index 0000000000..d80f07f5f8 --- /dev/null +++ b/dev/devicelab/bin/tasks/animated_complex_opacity_perf_ios__e2e_summary.dart @@ -0,0 +1,14 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'dart:async'; + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/perf_tests.dart'; + +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createAnimatedComplexOpacityPerfE2ETest()); +} diff --git a/dev/devicelab/bin/tasks/backdrop_filter_perf_impeller_ios__timeline_summary.dart b/dev/devicelab/bin/tasks/backdrop_filter_perf_impeller_ios__timeline_summary.dart new file mode 100644 index 0000000000..52ad4ac024 --- /dev/null +++ b/dev/devicelab/bin/tasks/backdrop_filter_perf_impeller_ios__timeline_summary.dart @@ -0,0 +1,12 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/perf_tests.dart'; + +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createBackdropFilterPerfTest(enableImpeller: true)); +} diff --git a/dev/devicelab/bin/tasks/color_filter_and_fade_perf_impeller_ios__e2e_summary.dart b/dev/devicelab/bin/tasks/color_filter_and_fade_perf_impeller_ios__e2e_summary.dart new file mode 100644 index 0000000000..682b1e3bc0 --- /dev/null +++ b/dev/devicelab/bin/tasks/color_filter_and_fade_perf_impeller_ios__e2e_summary.dart @@ -0,0 +1,14 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'dart:async'; + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/perf_tests.dart'; + +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createColorFilterAndFadePerfE2ETest(enableImpeller: true)); +} diff --git a/dev/devicelab/bin/tasks/color_filter_and_fade_perf_ios__e2e_summary.dart b/dev/devicelab/bin/tasks/color_filter_and_fade_perf_ios__e2e_summary.dart new file mode 100644 index 0000000000..1316e698ae --- /dev/null +++ b/dev/devicelab/bin/tasks/color_filter_and_fade_perf_ios__e2e_summary.dart @@ -0,0 +1,14 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'dart:async'; + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/perf_tests.dart'; + +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createColorFilterAndFadePerfE2ETest()); +} diff --git a/dev/devicelab/bin/tasks/complex_layout_scroll_perf_impeller_ios__timeline_summary.dart b/dev/devicelab/bin/tasks/complex_layout_scroll_perf_impeller_ios__timeline_summary.dart new file mode 100644 index 0000000000..53578a3df0 --- /dev/null +++ b/dev/devicelab/bin/tasks/complex_layout_scroll_perf_impeller_ios__timeline_summary.dart @@ -0,0 +1,12 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/perf_tests.dart'; + +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createComplexLayoutScrollPerfTest(enableImpeller: true)); +} diff --git a/dev/devicelab/bin/tasks/flutter_gallery_ios__transition_perf.dart b/dev/devicelab/bin/tasks/flutter_gallery__transition_perf_e2e_impeller_ios.dart similarity index 86% rename from dev/devicelab/bin/tasks/flutter_gallery_ios__transition_perf.dart rename to dev/devicelab/bin/tasks/flutter_gallery__transition_perf_e2e_impeller_ios.dart index 4b16f5dd21..859025ea6e 100644 --- a/dev/devicelab/bin/tasks/flutter_gallery_ios__transition_perf.dart +++ b/dev/devicelab/bin/tasks/flutter_gallery__transition_perf_e2e_impeller_ios.dart @@ -8,5 +8,5 @@ import 'package:flutter_devicelab/tasks/gallery.dart'; Future main() async { deviceOperatingSystem = DeviceOperatingSystem.ios; - await task(createGalleryTransitionTest()); + await task(createGalleryTransitionE2ETest(enableImpeller: true)); } diff --git a/dev/devicelab/bin/tasks/fullscreen_textfield_perf_impeller_ios__e2e_summary.dart b/dev/devicelab/bin/tasks/fullscreen_textfield_perf_impeller_ios__e2e_summary.dart new file mode 100644 index 0000000000..5972a38f77 --- /dev/null +++ b/dev/devicelab/bin/tasks/fullscreen_textfield_perf_impeller_ios__e2e_summary.dart @@ -0,0 +1,14 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'dart:async'; + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/perf_tests.dart'; + +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createFullscreenTextfieldPerfE2ETest(enableImpeller: true)); +} diff --git a/dev/devicelab/bin/tasks/fullscreen_textfield_perf_ios__e2e_summary.dart b/dev/devicelab/bin/tasks/fullscreen_textfield_perf_ios__e2e_summary.dart new file mode 100644 index 0000000000..c3316d1d7b --- /dev/null +++ b/dev/devicelab/bin/tasks/fullscreen_textfield_perf_ios__e2e_summary.dart @@ -0,0 +1,14 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'dart:async'; + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/perf_tests.dart'; + +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createFullscreenTextfieldPerfE2ETest()); +} diff --git a/dev/devicelab/bin/tasks/imagefiltered_transform_animation_perf_impeller_ios__timeline_summary.dart b/dev/devicelab/bin/tasks/imagefiltered_transform_animation_perf_impeller_ios__timeline_summary.dart new file mode 100644 index 0000000000..51586c08dc --- /dev/null +++ b/dev/devicelab/bin/tasks/imagefiltered_transform_animation_perf_impeller_ios__timeline_summary.dart @@ -0,0 +1,12 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/perf_tests.dart'; + +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createImageFilteredTransformAnimationPerfTest(enableImpeller: true)); +} diff --git a/dev/devicelab/bin/tasks/imagefiltered_transform_animation_perf_ios__timeline_summary.dart b/dev/devicelab/bin/tasks/imagefiltered_transform_animation_perf_ios__timeline_summary.dart new file mode 100644 index 0000000000..c78cfe77fb --- /dev/null +++ b/dev/devicelab/bin/tasks/imagefiltered_transform_animation_perf_ios__timeline_summary.dart @@ -0,0 +1,12 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/perf_tests.dart'; + +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createImageFilteredTransformAnimationPerfTest()); +} diff --git a/dev/devicelab/bin/tasks/microbenchmarks_impeller_ios.dart b/dev/devicelab/bin/tasks/microbenchmarks_impeller_ios.dart new file mode 100644 index 0000000000..3daa6d791f --- /dev/null +++ b/dev/devicelab/bin/tasks/microbenchmarks_impeller_ios.dart @@ -0,0 +1,13 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/microbenchmarks.dart'; + +/// Runs microbenchmarks on iOS. +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createMicrobenchmarkTask(enableImpeller: true)); +} diff --git a/dev/devicelab/bin/tasks/platform_views_scroll_perf_impeller_ios__timeline_summary.dart b/dev/devicelab/bin/tasks/platform_views_scroll_perf_impeller_ios__timeline_summary.dart new file mode 100644 index 0000000000..2b8106f001 --- /dev/null +++ b/dev/devicelab/bin/tasks/platform_views_scroll_perf_impeller_ios__timeline_summary.dart @@ -0,0 +1,12 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/perf_tests.dart'; + +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createUiKitViewScrollPerfTest(enableImpeller: true)); +} diff --git a/dev/devicelab/bin/tasks/simple_animation_perf_impeller_ios.dart b/dev/devicelab/bin/tasks/simple_animation_perf_impeller_ios.dart new file mode 100644 index 0000000000..9f6a37929f --- /dev/null +++ b/dev/devicelab/bin/tasks/simple_animation_perf_impeller_ios.dart @@ -0,0 +1,12 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/perf_tests.dart'; + +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createSimpleAnimationPerfTest(enableImpeller: true)); +} diff --git a/dev/devicelab/bin/tasks/tiles_scroll_perf_impeller_ios__timeline_summary.dart b/dev/devicelab/bin/tasks/tiles_scroll_perf_impeller_ios__timeline_summary.dart new file mode 100644 index 0000000000..361df86db5 --- /dev/null +++ b/dev/devicelab/bin/tasks/tiles_scroll_perf_impeller_ios__timeline_summary.dart @@ -0,0 +1,12 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'package:flutter_devicelab/framework/devices.dart'; +import 'package:flutter_devicelab/framework/framework.dart'; +import 'package:flutter_devicelab/tasks/perf_tests.dart'; + +Future main() async { + deviceOperatingSystem = DeviceOperatingSystem.ios; + await task(createTilesScrollPerfTest(enableImpeller: true)); +} diff --git a/dev/devicelab/lib/tasks/gallery.dart b/dev/devicelab/lib/tasks/gallery.dart index 4ded70b98b..4ce08ab82e 100644 --- a/dev/devicelab/lib/tasks/gallery.dart +++ b/dev/devicelab/lib/tasks/gallery.dart @@ -25,7 +25,10 @@ TaskFunction createGalleryTransitionTest({bool semanticsEnabled = false}) { return GalleryTransitionTest(semanticsEnabled: semanticsEnabled); } -TaskFunction createGalleryTransitionE2ETest({bool semanticsEnabled = false}) { +TaskFunction createGalleryTransitionE2ETest({ + bool semanticsEnabled = false, + bool enableImpeller = false, +}) { return GalleryTransitionTest( testFile: semanticsEnabled ? 'transitions_perf_e2e_with_semantics' @@ -35,6 +38,7 @@ TaskFunction createGalleryTransitionE2ETest({bool semanticsEnabled = false}) { transitionDurationFile: null, timelineTraceFile: null, driverFile: 'transitions_perf_e2e_test', + enableImpeller: enableImpeller, ); } @@ -59,12 +63,14 @@ class GalleryTransitionTest { this.driverFile, this.measureCpuGpu = true, this.measureMemory = true, + this.enableImpeller = false, }); final bool semanticsEnabled; final bool needFullTimeline; final bool measureCpuGpu; final bool measureMemory; + final bool enableImpeller; final String testFile; final String timelineSummaryFile; final String? timelineTraceFile; @@ -102,6 +108,7 @@ class GalleryTransitionTest { await flutter('drive', options: [ '--no-dds', '--profile', + if (enableImpeller) '--enable-impeller', if (needFullTimeline) '--trace-startup', if (applicationBinaryPath != null) diff --git a/dev/devicelab/lib/tasks/microbenchmarks.dart b/dev/devicelab/lib/tasks/microbenchmarks.dart index c707919a94..41e99d3cc3 100644 --- a/dev/devicelab/lib/tasks/microbenchmarks.dart +++ b/dev/devicelab/lib/tasks/microbenchmarks.dart @@ -15,7 +15,7 @@ import '../microbenchmarks.dart'; /// Creates a device lab task that runs benchmarks in /// `dev/benchmarks/microbenchmarks` reports results to the dashboard. -TaskFunction createMicrobenchmarkTask() { +TaskFunction createMicrobenchmarkTask({bool enableImpeller = false}) { return () async { final Device device = await devices.workingDevice; await device.unlock(); @@ -33,6 +33,7 @@ TaskFunction createMicrobenchmarkTask() { '--profile', '--no-publish-port', '-d', + if (enableImpeller) '--enable-impeller', device.deviceId, ]; options.add(benchmarkPath); diff --git a/dev/devicelab/lib/tasks/perf_tests.dart b/dev/devicelab/lib/tasks/perf_tests.dart index 88d84e0e72..50777b5ead 100644 --- a/dev/devicelab/lib/tasks/perf_tests.dart +++ b/dev/devicelab/lib/tasks/perf_tests.dart @@ -39,21 +39,23 @@ TaskFunction createComplexLayoutScrollPerfTest({ ).run; } -TaskFunction createTilesScrollPerfTest() { +TaskFunction createTilesScrollPerfTest({bool enableImpeller = false}) { return PerfTest( '${flutterDirectory.path}/dev/benchmarks/complex_layout', 'test_driver/scroll_perf.dart', 'tiles_scroll_perf', + enableImpeller: enableImpeller, ).run; } -TaskFunction createUiKitViewScrollPerfTest() { +TaskFunction createUiKitViewScrollPerfTest({bool enableImpeller = false}) { return PerfTest( '${flutterDirectory.path}/dev/benchmarks/platform_views_layout', 'test_driver/uikit_view_scroll_perf.dart', 'platform_views_scroll_perf', testDriver: 'test_driver/scroll_perf_test.dart', needsFullTimeline: false, + enableImpeller: enableImpeller, ).run; } @@ -123,7 +125,10 @@ TaskFunction createFlutterGalleryTransitionsPerfSkSLWarmupTest() { ).run; } -TaskFunction createBackdropFilterPerfTest({bool measureCpuGpu = true}) { +TaskFunction createBackdropFilterPerfTest({ + bool measureCpuGpu = true, + bool enableImpeller = false, +}) { return PerfTest( '${flutterDirectory.path}/dev/benchmarks/macrobenchmarks', 'test_driver/run_app.dart', @@ -131,6 +136,7 @@ TaskFunction createBackdropFilterPerfTest({bool measureCpuGpu = true}) { measureCpuGpu: measureCpuGpu, testDriver: 'test_driver/backdrop_filter_perf_test.dart', saveTraceFile: true, + enableImpeller: enableImpeller, ).run; } @@ -163,7 +169,10 @@ TaskFunction createPostBackdropFilterPerfTest({bool measureCpuGpu = true}) { ).run; } -TaskFunction createSimpleAnimationPerfTest({bool measureCpuGpu = true}) { +TaskFunction createSimpleAnimationPerfTest({ + bool measureCpuGpu = true, + bool enableImpeller = false, +}) { return PerfTest( '${flutterDirectory.path}/dev/benchmarks/macrobenchmarks', 'test_driver/run_app.dart', @@ -171,6 +180,7 @@ TaskFunction createSimpleAnimationPerfTest({bool measureCpuGpu = true}) { measureCpuGpu: measureCpuGpu, testDriver: 'test_driver/simple_animation_perf_test.dart', saveTraceFile: true, + enableImpeller: enableImpeller, ).run; } @@ -341,10 +351,13 @@ TaskFunction createFullscreenTextfieldPerfTest() { ).run; } -TaskFunction createFullscreenTextfieldPerfE2ETest() { +TaskFunction createFullscreenTextfieldPerfE2ETest({ + bool enableImpeller = false, +}) { return PerfTest.e2e( '${flutterDirectory.path}/dev/benchmarks/macrobenchmarks', 'test/fullscreen_textfield_perf_e2e.dart', + enableImpeller: enableImpeller, ).run; } @@ -365,10 +378,11 @@ TaskFunction createColorFilterAndFadePerfTest() { ).run; } -TaskFunction createColorFilterAndFadePerfE2ETest() { +TaskFunction createColorFilterAndFadePerfE2ETest({bool enableImpeller = false}) { return PerfTest.e2e( '${flutterDirectory.path}/dev/benchmarks/macrobenchmarks', 'test/color_filter_and_fade_perf_e2e.dart', + enableImpeller: enableImpeller, ).run; } @@ -410,13 +424,16 @@ TaskFunction createFadingChildAnimationPerfTest() { ).run; } -TaskFunction createImageFilteredTransformAnimationPerfTest() { +TaskFunction createImageFilteredTransformAnimationPerfTest({ + bool enableImpeller = false, +}) { return PerfTest( '${flutterDirectory.path}/dev/benchmarks/macrobenchmarks', 'test_driver/run_app.dart', 'imagefiltered_transform_animation_perf', testDriver: 'test_driver/imagefiltered_transform_animation_perf_test.dart', saveTraceFile: true, + enableImpeller: enableImpeller, ).run; } @@ -600,10 +617,13 @@ TaskFunction createGradientStaticPerfE2ETest() { ).run; } -TaskFunction createAnimatedComplexOpacityPerfE2ETest() { +TaskFunction createAnimatedComplexOpacityPerfE2ETest({ + bool enableImpeller = false, +}) { return PerfTest.e2e( '${flutterDirectory.path}/dev/benchmarks/macrobenchmarks', 'test/animated_complex_opacity_perf_e2e.dart', + enableImpeller: enableImpeller, ).run; }