Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(165)

Issue 1378163004: Dart: Performance improvements to Dart's handle watcher. (Closed)

Created:
5 years, 2 months ago by zra
Modified:
5 years, 2 months ago
Reviewers:
Cutch
CC:
mojo-reviews_chromium.org, gregsimon, qsr+mojo_chromium.org, viettrungluu+watch_chromium.org, yzshen+watch_chromium.org, abarth-chromium, Aaron Boodman, darin (slow to review), ben+mojo_chromium.org, Ivan Posva
Base URL:
git@github.com:domokit/mojo.git@master
Target Ref:
refs/heads/master
Project:
mojo
Visibility:
Public.

Description

Dart: Performance improvements to Dart's handle watcher. - Keeps state for the call to MojoWaitMany in external TypedData arrays to reduce copying. - Processes all ready signals to avoid repeated calls. - Puts more active handles at the front of the handles array. - Disables checked mode for the vm service and handle watcher isolates On my machine: C++ <=> C++: ~40-50us Dart <=> Dart: ~150-160us => 120-130us Dart <=> C++: ~90-100us => 60-70us So, on desktop savings of ~30us for round trips involving Dart code. BUG= R=johnmccutchan@google.com Committed: https://chromium.googlesource.com/external/mojo/+/e54a91983350239d275cc1f0b12a1bdb03946513

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Patch Set 5 : #

Total comments: 8

Patch Set 6 : Address comments #

Patch Set 7 : bugfix #

Patch Set 8 : #

Patch Set 9 : Turn off strict mode for handle watcher and vm service #

Patch Set 10 : Format #

Unified diffs Side-by-side diffs Delta from patch set Stats (+358 lines, -121 lines) Patch
M examples/dart/mojo_rtt_benchmark/lib/echo_server.dart View 1 2 3 4 5 6 7 2 chunks +11 lines, -2 lines 0 comments Download
M mojo/dart/embedder/BUILD.gn View 2 chunks +2 lines, -0 lines 0 comments Download
M mojo/dart/embedder/dart_controller.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M mojo/dart/embedder/mojo_natives.cc View 1 2 3 4 5 6 7 8 9 2 chunks +95 lines, -0 lines 0 comments Download
M mojo/public/dart/mojo/lib/src/stub.dart View 1 chunk +1 line, -1 line 0 comments Download
M mojo/public/dart/mojo/sdk_ext/internal.dart View 1 chunk +1 line, -0 lines 0 comments Download
M mojo/public/dart/mojo/sdk_ext/src/handle_watcher.dart View 1 2 3 4 5 6 7 8 9 6 chunks +67 lines, -83 lines 0 comments Download
M mojo/public/dart/mojo/sdk_ext/src/natives.dart View 1 2 3 4 5 6 7 8 9 1 chunk +42 lines, -34 lines 0 comments Download
A mojo/public/dart/mojo/sdk_ext/src/wait_many_state.dart View 1 2 3 4 5 6 7 8 9 1 chunk +138 lines, -0 lines 0 comments Download

Messages

Total messages: 11 (1 generated)
zra
5 years, 2 months ago (2015-10-05 20:58:00 UTC) #2
Cutch
General question- what was the measured improvement from this change? https://codereview.chromium.org/1378163004/diff/80001/mojo/dart/embedder/mojo_natives.cc File mojo/dart/embedder/mojo_natives.cc (right): https://codereview.chromium.org/1378163004/diff/80001/mojo/dart/embedder/mojo_natives.cc#newcode728 ...
5 years, 2 months ago (2015-10-05 21:12:26 UTC) #3
zra
https://codereview.chromium.org/1378163004/diff/80001/mojo/dart/embedder/mojo_natives.cc File mojo/dart/embedder/mojo_natives.cc (right): https://codereview.chromium.org/1378163004/diff/80001/mojo/dart/embedder/mojo_natives.cc#newcode728 mojo/dart/embedder/mojo_natives.cc:728: static std::vector<mojo::Handle> mwm_handles; On 2015/10/05 21:12:26, Cutch wrote: > ...
5 years, 2 months ago (2015-10-05 22:34:10 UTC) #4
zra
Found a bad bug in this CL. I'll ping again when it's ready for another ...
5 years, 2 months ago (2015-10-06 16:21:38 UTC) #5
zra
Bug fixed. PTAL.
5 years, 2 months ago (2015-10-06 20:31:18 UTC) #6
tonyg
On 2015/10/05 21:12:26, Cutch wrote: > General question- what was the measured improvement from this ...
5 years, 2 months ago (2015-10-06 20:55:13 UTC) #7
zra
On 2015/10/06 20:55:13, tonyg wrote: > On 2015/10/05 21:12:26, Cutch wrote: > > General question- ...
5 years, 2 months ago (2015-10-06 21:12:14 UTC) #8
zra
Disabling checked mode for the vm service and handle watcher isolates improves round trip times ...
5 years, 2 months ago (2015-10-07 04:50:36 UTC) #9
Cutch
lgtm
5 years, 2 months ago (2015-10-07 13:52:37 UTC) #10
zra
5 years, 2 months ago (2015-10-07 16:27:46 UTC) #11
Message was sent while issue was closed.
Committed patchset #10 (id:180001) manually as
e54a91983350239d275cc1f0b12a1bdb03946513 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698