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

Issue 780223002: ChannelProxy: Send() from UI thread when ChannelMojo is used. (Closed)

Created:
6 years ago by Hajime Morrita
Modified:
6 years ago
Reviewers:
agl, viettrungluu
CC:
chromium-reviews, qsr+mojo_chromium.org, viettrungluu+watch_chromium.org, jam, yzshen+watch_chromium.org, abarth-chromium, Aaron Boodman, darin-cc_chromium.org, darin (slow to review), ben+mojo_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

ChannelProxy: Send() from UI thread when ChannelMojo is used. This change introduce the notion of thread-safe send to ChannelProxy. It calls Channel::Send() from UI thread instead of posting a task to the IO thread, elimating the overhead. This is possible as Mojo API is thread safe. Some local test shows that this (and coming Mojo-side change) offsets the overhead of extra copying incurred by Mojo-IPC integration in some benchmark. R=viettrungluu@chromium.org, agl@chromium.org BUG=377980

Patch Set 1 #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+151 lines, -31 lines) Patch
M ipc/ipc_channel.h View 1 chunk +4 lines, -0 lines 0 comments Download
M ipc/ipc_channel_common.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M ipc/ipc_channel_proxy.h View 4 chunks +23 lines, -0 lines 0 comments Download
M ipc/ipc_channel_proxy.cc View 5 chunks +28 lines, -5 lines 0 comments Download
M ipc/mojo/ipc_channel_mojo.h View 3 chunks +10 lines, -1 line 0 comments Download
M ipc/mojo/ipc_channel_mojo.cc View 5 chunks +74 lines, -17 lines 1 comment Download
M ipc/mojo/ipc_message_pipe_reader.h View 2 chunks +5 lines, -1 line 0 comments Download
M ipc/mojo/ipc_message_pipe_reader.cc View 2 chunks +3 lines, -7 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Hajime Morrita
6 years ago (2014-12-05 02:52:48 UTC) #1
Hajime Morrita
Trung: PTAL for ipc/mojo Adam: For ipc/ https://codereview.chromium.org/780223002/diff/1/ipc/mojo/ipc_channel_mojo.cc File ipc/mojo/ipc_channel_mojo.cc (left): https://codereview.chromium.org/780223002/diff/1/ipc/mojo/ipc_channel_mojo.cc#oldcode178 ipc/mojo/ipc_channel_mojo.cc:178: return false; ...
6 years ago (2014-12-05 02:54:09 UTC) #2
Hajime Morrita
6 years ago (2014-12-05 22:30:11 UTC) #3
Hmm. Apparently my measurement was wrong. The impact of this change isn't clear
as I thought. I'll do more test.
Closing for now. I'm sorry for the noise.

Powered by Google App Engine
This is Rietveld 408576698