Add support_lazy_serialization to mus window service mojom targets |
|||
Issue descriptionFor mushrome (chrome --mus) the UI window service will run in-process in the browser. To avoid adding latency for event processing mojo calls, add support_lazy_serialization to the window service mojo build targets. This should make mojo method calls equivalent in performance to a PostTask, at the cost of some code size.
,
Jan 4 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/2b7e85eb251dc791c80a6c2d71871a1c87b3597b commit 2b7e85eb251dc791c80a6c2d71871a1c87b3597b Author: James Cook <jamescook@chromium.org> Date: Thu Jan 04 16:17:27 2018 cros: Use lazy serialization for window service mojo methods The window service runs in the browser process for --mus and in the ash_and_ui process for --mash. Use the support_lazy_serialization build flag for the window service mojom targets so that in-process mojo method calls avoid doing serialization for IPC. This should improve event dispatch performance, as the mojo call becomes equivalent to a PostTask. This causes a known 130KB code size increase on 64-bit Intel builds, so the feature is enabled on Chrome OS only. Bug: 798800 Test: bots Change-Id: Ia488f95e6dd35ce1947df7117e623cd222786fb0 Reviewed-on: https://chromium-review.googlesource.com/849657 Reviewed-by: Scott Violet <sky@chromium.org> Commit-Queue: James Cook <jamescook@chromium.org> Cr-Commit-Position: refs/heads/master@{#526999} [modify] https://crrev.com/2b7e85eb251dc791c80a6c2d71871a1c87b3597b/services/ui/public/interfaces/BUILD.gn [modify] https://crrev.com/2b7e85eb251dc791c80a6c2d71871a1c87b3597b/services/ui/public/interfaces/ime/BUILD.gn
,
Jan 4 2018
I filed a separate bug to double-check before we ship whether this actually speeds things up in the final state.
,
Feb 26 2018
,
May 25 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7855923f7dd1510813a39fafbf299a9488f2c68e commit 7855923f7dd1510813a39fafbf299a9488f2c68e Author: James Cook <jamescook@chromium.org> Date: Fri May 25 22:32:51 2018 chromeos: Remove lazy serialization from window service mojo methods This saves 140 KB of chrome binary size on 64-bit Intel. Previously for --enable-features=Mus we were running the window service on a background thread in the browser process, so it was slightly more efficient to use lazy serialization for mojo calls. We have eliminated the "Mus" config and with ws2 the window service mojo implementations will be directly implemented in the "ash" service/process. All mojo calls will be cross-process, so there's no advantage to using lazy serialization. This is a revert of: https://chromium-review.googlesource.com/c/chromium/src/+/849657 Bug: 798800 , 799072 Test: bots Change-Id: I3f1ffe0e598e6bee7d3a54f41ffbbce23fd592e6 Reviewed-on: https://chromium-review.googlesource.com/1072460 Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org> Commit-Queue: James Cook <jamescook@chromium.org> Cr-Commit-Position: refs/heads/master@{#562040} [modify] https://crrev.com/7855923f7dd1510813a39fafbf299a9488f2c68e/services/ui/public/interfaces/BUILD.gn [modify] https://crrev.com/7855923f7dd1510813a39fafbf299a9488f2c68e/services/ui/public/interfaces/ime/BUILD.gn |
|||
►
Sign in to add a comment |
|||
Comment 1 by jamescook@chromium.org
, Jan 4 2018