-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
x64 mode 100 times slower than ia32 mode on Map.containsValue #3009
Comments
x64 has not implemented yet the fast inlined type checking mode, which is active both in optimized and unoptimized compilers. You can probably see that ia32 is doing fewer runtime calls than x64 (--trace-runtime-calls) when running in checked mode cc @crelier. |
On x64 the performance difference (release mode) between checked and production mode is about 2x now (12.8 secs vs 27 secs). ia32 in non-optimized mode run is 16secs vs 36secs. x64 seems to be running better. Added Fixed label. |
New commits include: ``` git log --format="%C(auto) %h %s" 00c00e8adf9706bebe8f94483b7663c5f36f59d2..def32ceb1d660552eaec24839d377199aea5a569 def32ceb Revert "Revert "Use the frontend server to compile pub executables (#2968)" (#3006)" (#3008) 0dc7e50c Make `.gitignore` and `.pubignore` case-insensitive on Windows / MacOS (#3009) e89d4ab8 Generate GNU-style long file names in tar archives (#3005) d2ad13d0 Revert "Use the frontend server to compile pub executables (#2968)" (#3006) 492b15ba New binstubs for global activate using `dart pub` (#3002) e02f23bb fix grammer in .gitignore error message (#2995) e01e3a41 Use the frontend server to compile pub executables (#2968) 647989c6 Use RetryClient from package:http/retry.dart (#2980) ``` Change-Id: I9a0b5fb2b5616a5a0eaa16f3a90205bb1bb1fc8f Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/200878 Auto-Submit: Jonas Jensen <[email protected]> Commit-Queue: Alexander Thomas <[email protected]> Reviewed-by: Alexander Thomas <[email protected]>
This reverts commit 5c9e37f. Reason for revert: flutter builds on golem somehow broke. Original change's description: > Bump pub. > > New commits include: > ``` > git log --format="%C(auto) %h %s" 00c00e8adf9706bebe8f94483b7663c5f36f59d2..def32ceb1d660552eaec24839d377199aea5a569 > def32ceb Revert "Revert "Use the frontend server to compile pub executables (#2968)" (#3006)" (#3008) > 0dc7e50c Make `.gitignore` and `.pubignore` case-insensitive on Windows / MacOS (#3009) > e89d4ab8 Generate GNU-style long file names in tar archives (#3005) > d2ad13d0 Revert "Use the frontend server to compile pub executables (#2968)" (#3006) > 492b15ba New binstubs for global activate using `dart pub` (#3002) > e02f23bb fix grammer in .gitignore error message (#2995) > e01e3a41 Use the frontend server to compile pub executables (#2968) > 647989c6 Use RetryClient from package:http/retry.dart (#2980) > ``` > > Change-Id: I9a0b5fb2b5616a5a0eaa16f3a90205bb1bb1fc8f > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/200878 > Auto-Submit: Jonas Jensen <[email protected]> > Commit-Queue: Alexander Thomas <[email protected]> > Reviewed-by: Alexander Thomas <[email protected]> [email protected],[email protected] Change-Id: I635e1c2db8ae965881359d4969cbd506348b0ed0 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/201000 Reviewed-by: Jonas Jensen <[email protected]> Commit-Queue: Jonas Jensen <[email protected]>
This is a reland of 5c9e37f Following update of `DEPS` in `flutter/engine`: flutter/engine#26395 New commits include: ``` git log --format="%C(auto) %h %s" 00c00e8adf9706bebe8f94483b7663c5f36f59d2..def32ceb1d660552eaec24839d377199aea5a569 def32ceb Revert "Revert "Use the frontend server to compile pub executables (#2968)" (#3006)" (#3008) 0dc7e50c Make `.gitignore` and `.pubignore` case-insensitive on Windows / MacOS (#3009) e89d4ab8 Generate GNU-style long file names in tar archives (#3005) d2ad13d0 Revert "Use the frontend server to compile pub executables (#2968)" (#3006) 492b15ba New binstubs for global activate using `dart pub` (#3002) e02f23bb fix grammer in .gitignore error message (#2995) e01e3a41 Use the frontend server to compile pub executables (#2968) 647989c6 Use RetryClient from package:http/retry.dart (#2980) ``` Original change's description: > Change-Id: I9a0b5fb2b5616a5a0eaa16f3a90205bb1bb1fc8f > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/200878 > Auto-Submit: Jonas Jensen <[email protected]> > Commit-Queue: Alexander Thomas <[email protected]> > Reviewed-by: Alexander Thomas <[email protected]> Change-Id: I1a0570318c63ec97fd141d79b405f55105111077 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/201260 Commit-Queue: Jonas Jensen <[email protected]> Reviewed-by: Alexander Thomas <[email protected]>
…25 revisions) https://dart.googlesource.com/dartdoc/+log/334072b0cad4..cf0685a2d1ce 2022-05-19 [email protected] Create scorecards-analysis.yml (#3032) 2022-05-18 [email protected] Add the docs.dart.js.map file to published package (#3042) 2022-05-17 [email protected] Reintroduce query param search (#3026) 2022-05-17 [email protected] Include docs.dart.js in published code (#3040) 2022-05-17 [email protected] Optimize built js (#3028) 2022-05-17 [email protected] Use dart run instead of deprecated dart pub run (#3038) 2022-05-17 [email protected] fix exception for empty dartdoc_options.yaml file (#3034) 2022-05-16 [email protected] Fix build config (#3035) 2022-05-02 [email protected] Drop version back to 5.1.0 (#3031) 2022-05-02 [email protected] Fixed: YouTube directive respects width/height argument (#3030) 2022-04-19 [email protected] Update pubspec.yaml (#3025) 2022-04-12 [email protected] Remove dead field commentRefs, which is always empty (#3021) 2022-04-12 [email protected] make the converted web frontend follow Dart conventions (#3020) 2022-04-11 [email protected] convert lib/resources/script.js to Dart (#3016) 2022-04-11 49699333+dependabot[bot]@users.noreply.github.com Bump actions/cache from 3.0.1 to 3.0.2 (#3019) 2022-04-10 [email protected] rename the CI script (#3017) 2022-04-08 49699333+dependabot[bot]@users.noreply.github.com Bump actions/cache from 2 to 3.0.1 (#3014) 2022-04-08 49699333+dependabot[bot]@users.noreply.github.com Bump markdown from 4.0.1 to 5.0.0 (#3015) 2022-04-08 [email protected] Move many static declarations to top-level; avoid RegExp (#3009) 2022-04-08 49699333+dependabot[bot]@users.noreply.github.com Bump actions/checkout from 2 to 3 (#3013) 2022-04-07 [email protected] Add a web frontend (#3011) 2022-04-07 [email protected] enable dependabot deps checks (#3012) 2022-04-07 [email protected] Do not store the AstNode on ModelNode; eagerly grab the source indexes (#3008) 2022-04-07 [email protected] Create a .pubignore in order to skip testing files from publish check (#3010) 2022-03-29 [email protected] Bump to version 5.1.0 (#3006) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/dart-doc-dart-sdk Please CC [email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Dart Documentation Generator: https://github.com/dart-lang/dartdoc/issues To file a bug in Dart SDK: https://github.com/dart-lang/sdk/issues 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: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Tbr: [email protected] Change-Id: I3467a27d6947c43f7f41acbb2959d72863fd8a34 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/245483 Commit-Queue: Devon Carew <[email protected]> Reviewed-by: Devon Carew <[email protected]>
The test co19/LibTest/core/Map/Map_class_A01_04t.dart is timing out on x64 checked mode.
I tried turning off optimization on ia32 to reproduce it, using optimization_counter_threshold -1, but that just speeded ia32 up, from 2 seconds to 0.3 seconds. (x64 takes 150 seconds).
If this is to be expected, given the current x64 compiler, feel free to close the bug.
The test Map_class_A01-04 is also badly written, since it calls Map.containsValue about 20,000 times on maps containing 1,000 pairs. I am filing a separate bug for that.
The text was updated successfully, but these errors were encountered: