Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[frontend_server] Include bytecode generation in the training run. #13126

Merged
merged 2 commits into from
Oct 15, 2019
Merged

[frontend_server] Include bytecode generation in the training run. #13126

merged 2 commits into from
Oct 15, 2019

Conversation

rmacnak-google
Copy link
Contributor

@rmacnak-google rmacnak-google commented Oct 14, 2019

../../bin/cache/dart-sdk/bin/dart ./bin/run.dart -t flutter_test_performance --local-engine host_debug
AST-BEFORE
"without_change_elapsed_time_ms": 2964,
"implementation_change_elapsed_time_ms": 6650,
"interface_change_elapsed_time_ms": 6449,
"with_coverage_time_ms": 3021
AST-AFTER
"without_change_elapsed_time_ms": 2785,
"implementation_change_elapsed_time_ms": 6383,
"interface_change_elapsed_time_ms": 6308,
"with_coverage_time_ms": 2884
BYTECODE-BEFORE
"without_change_elapsed_time_ms": 3982,
"implementation_change_elapsed_time_ms": 9133,
"interface_change_elapsed_time_ms": 9135,
"with_coverage_time_ms": 4065
BYTECODE-AFTER
"without_change_elapsed_time_ms": 3506,
"implementation_change_elapsed_time_ms": 8027,
"interface_change_elapsed_time_ms": 8066,
"with_coverage_time_ms": 3703

@aam
Copy link
Member

aam commented Oct 14, 2019

How does this affect existing ast-based compilation?
Should this land once flutter switches to bytecode?

@rmacnak-google
Copy link
Contributor Author

This slightly improve AST as well, since I increased the duration of the training. It should land before Flutter switches to bytecode by default.

Copy link
Contributor

@alexmarkov alexmarkov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ideally I think we should train front-end server in the mode which is currently used in Flutter. For example, we're probably missing incremental serialization code path when bytecode is enabled during training. So maybe we should still enable bytecode in the training run simultaneously with enabling bytecode by default in Flutter/debug (this could be done by flipping default value of 'gen-bytecode' option in front-end server itself).

However, as this PR improves front-end server performance including currently used mode, I think it's reasonable to land it. LGTM.

@rmacnak-google rmacnak-google merged commit 4c3e87c into flutter:master Oct 15, 2019
@rmacnak-google rmacnak-google deleted the train-bytecode branch October 15, 2019 17:44
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Oct 16, 2019
engine-flutter-autoroll added a commit to flutter/flutter that referenced this pull request Oct 16, 2019
git@github.com:flutter/engine.git/compare/540fc977bb6b...5e6c005

git log 540fc97..5e6c005 --no-merges --oneline
2019-10-16 skia-flutter-autoroll@skia.org Roll src/third_party/skia 083a75d6762c..59e72b71b5cf (1 commits) (flutter/engine#13169)
2019-10-16 a-siva@users.noreply.github.com Roll src/third_party/dart 4131d3d7c4...41b65b27c2 (28 commits) (flutter/engine#13163)
2019-10-16 skia-flutter-autoroll@skia.org Roll src/third_party/skia 7274850f96f2..083a75d6762c (1 commits) (flutter/engine#13168)
2019-10-16 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from 5I4Iw... to oTVah... (flutter/engine#13167)
2019-10-16 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from qpzUe... to KVDL4... (flutter/engine#13166)
2019-10-16 skia-flutter-autoroll@skia.org Roll src/third_party/skia 634d15032d37..7274850f96f2 (3 commits) (flutter/engine#13165)
2019-10-16 yjbanov@google.com Move surface-based SceneBuilder implementation under surface/ (flutter/engine#13159)
2019-10-16 skia-flutter-autoroll@skia.org Roll src/third_party/skia ba8752f37dab..634d15032d37 (2 commits) (flutter/engine#13164)
2019-10-16 chinmaygarde@gmail.com Revert "Issue 13238: on iOS, force an orientation change when the current orientation is not allowed" (flutter/engine#13160)
2019-10-15 chinmaygarde@google.com Roll buildroot to pull in static thread safety analysis options. (flutter/engine#13155)
2019-10-15 skia-flutter-autoroll@skia.org Roll src/third_party/skia fb6a1abe4567..ba8752f37dab (8 commits) (flutter/engine#13156)
2019-10-15 chinmaygarde@google.com Make the Dart isolate constructor private. (flutter/engine#13153)
2019-10-15 iska.kaushik@gmail.com Revert "Upgrades the ICU version to 64.2 (#13123)" (flutter/engine#13146)
2019-10-15 1541038+josh-ksr@users.noreply.github.com Issue 13238: on iOS, force an orientation change when the current orientation is not allowed (flutter/engine#12295)
2019-10-15 chinmaygarde@google.com Allow embedders to specify a render task runner description. (flutter/engine#13124)
2019-10-15 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from Jv4XM... to 5I4Iw... (flutter/engine#13150)
2019-10-15 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from i5xD1... to qpzUe... (flutter/engine#13149)
2019-10-15 bkonyi@google.com Roll src/third_party/dart fc933312f7..4131d3d7c4 (3 commits)
2019-10-15 chinmaygarde@google.com Document //flutter/runtime/dart_vm (flutter/engine#13144)
2019-10-15 iska.kaushik@gmail.com Revert "Enable/tweak web sdk source maps (#13141)" (flutter/engine#13148)
2019-10-15 jason-simmons@users.noreply.github.com Merge the Fuchsia frontend_server build script into the new flutter_frontend_server target (flutter/engine#13145)
2019-10-15 iska.kaushik@gmail.com Add `flutter_tester` binary to the CIPD package (flutter/engine#13143)
2019-10-15 skia-flutter-autoroll@skia.org Roll src/third_party/skia f22c57ddcc8c..fb6a1abe4567 (2 commits) (flutter/engine#13142)
2019-10-15 vsm@google.com Enable/tweak web sdk source maps (flutter/engine#13141)
2019-10-15 filmil@gmail.com Upgrades the ICU version to 64.2 (flutter/engine#13123)
2019-10-15 rmacnak@google.com [frontend_server] Include bytecode generation in the training run. (flutter/engine#13126)
2019-10-15 wvvwwvw@gmail.com Support empty strings and vectors in standard codec (flutter/engine#12974)
2019-10-15 bkonyi@google.com Roll src/third_party/dart 50f7ae9c5d..fc933312f7 (2 commits)
2019-10-15 skia-flutter-autoroll@skia.org Roll src/third_party/skia 55f9cba6e2e7..f22c57ddcc8c (1 commits) (flutter/engine#13136)
2019-10-15 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from xRgq0... to Jv4XM... (flutter/engine#13135)
2019-10-15 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from Lk7iT... to i5xD1... (flutter/engine#13134)
2019-10-15 skia-flutter-autoroll@skia.org Roll src/third_party/skia 858cf233ef71..55f9cba6e2e7 (3 commits) (flutter/engine#13133)
2019-10-15 bkonyi@google.com Roll src/third_party/dart 70a7ef3f58..50f7ae9c5d (18 commits)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC franciscojma@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
...
Inconnu08 pushed a commit to Inconnu08/flutter that referenced this pull request Nov 26, 2019
git@github.com:flutter/engine.git/compare/540fc977bb6b...5e6c005

git log 540fc97..5e6c005 --no-merges --oneline
2019-10-16 skia-flutter-autoroll@skia.org Roll src/third_party/skia 083a75d6762c..59e72b71b5cf (1 commits) (flutter/engine#13169)
2019-10-16 a-siva@users.noreply.github.com Roll src/third_party/dart 4131d3d7c4...41b65b27c2 (28 commits) (flutter/engine#13163)
2019-10-16 skia-flutter-autoroll@skia.org Roll src/third_party/skia 7274850f96f2..083a75d6762c (1 commits) (flutter/engine#13168)
2019-10-16 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from 5I4Iw... to oTVah... (flutter/engine#13167)
2019-10-16 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from qpzUe... to KVDL4... (flutter/engine#13166)
2019-10-16 skia-flutter-autoroll@skia.org Roll src/third_party/skia 634d15032d37..7274850f96f2 (3 commits) (flutter/engine#13165)
2019-10-16 yjbanov@google.com Move surface-based SceneBuilder implementation under surface/ (flutter/engine#13159)
2019-10-16 skia-flutter-autoroll@skia.org Roll src/third_party/skia ba8752f37dab..634d15032d37 (2 commits) (flutter/engine#13164)
2019-10-16 chinmaygarde@gmail.com Revert "Issue 13238: on iOS, force an orientation change when the current orientation is not allowed" (flutter/engine#13160)
2019-10-15 chinmaygarde@google.com Roll buildroot to pull in static thread safety analysis options. (flutter/engine#13155)
2019-10-15 skia-flutter-autoroll@skia.org Roll src/third_party/skia fb6a1abe4567..ba8752f37dab (8 commits) (flutter/engine#13156)
2019-10-15 chinmaygarde@google.com Make the Dart isolate constructor private. (flutter/engine#13153)
2019-10-15 iska.kaushik@gmail.com Revert "Upgrades the ICU version to 64.2 (flutter#13123)" (flutter/engine#13146)
2019-10-15 1541038+josh-ksr@users.noreply.github.com Issue 13238: on iOS, force an orientation change when the current orientation is not allowed (flutter/engine#12295)
2019-10-15 chinmaygarde@google.com Allow embedders to specify a render task runner description. (flutter/engine#13124)
2019-10-15 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from Jv4XM... to 5I4Iw... (flutter/engine#13150)
2019-10-15 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from i5xD1... to qpzUe... (flutter/engine#13149)
2019-10-15 bkonyi@google.com Roll src/third_party/dart fc933312f7..4131d3d7c4 (3 commits)
2019-10-15 chinmaygarde@google.com Document //flutter/runtime/dart_vm (flutter/engine#13144)
2019-10-15 iska.kaushik@gmail.com Revert "Enable/tweak web sdk source maps (flutter#13141)" (flutter/engine#13148)
2019-10-15 jason-simmons@users.noreply.github.com Merge the Fuchsia frontend_server build script into the new flutter_frontend_server target (flutter/engine#13145)
2019-10-15 iska.kaushik@gmail.com Add `flutter_tester` binary to the CIPD package (flutter/engine#13143)
2019-10-15 skia-flutter-autoroll@skia.org Roll src/third_party/skia f22c57ddcc8c..fb6a1abe4567 (2 commits) (flutter/engine#13142)
2019-10-15 vsm@google.com Enable/tweak web sdk source maps (flutter/engine#13141)
2019-10-15 filmil@gmail.com Upgrades the ICU version to 64.2 (flutter/engine#13123)
2019-10-15 rmacnak@google.com [frontend_server] Include bytecode generation in the training run. (flutter/engine#13126)
2019-10-15 wvvwwvw@gmail.com Support empty strings and vectors in standard codec (flutter/engine#12974)
2019-10-15 bkonyi@google.com Roll src/third_party/dart 50f7ae9c5d..fc933312f7 (2 commits)
2019-10-15 skia-flutter-autoroll@skia.org Roll src/third_party/skia 55f9cba6e2e7..f22c57ddcc8c (1 commits) (flutter/engine#13136)
2019-10-15 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from xRgq0... to Jv4XM... (flutter/engine#13135)
2019-10-15 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from Lk7iT... to i5xD1... (flutter/engine#13134)
2019-10-15 skia-flutter-autoroll@skia.org Roll src/third_party/skia 858cf233ef71..55f9cba6e2e7 (3 commits) (flutter/engine#13133)
2019-10-15 bkonyi@google.com Roll src/third_party/dart 70a7ef3f58..50f7ae9c5d (18 commits)


If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC franciscojma@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
4 participants