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

Issue 661883002: Sync: Optimize FavIcon callbacks from bookmark model. (Closed)

Created:
6 years, 2 months ago by stanisc
Modified:
6 years, 1 month ago
Reviewers:
Nicolas Zea
CC:
chromium-reviews, tim+watch_chromium.org, pvalenzuela+watch_chromium.org, zea+watch_chromium.org, maniscalco+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

Sync: Perf: Optimize handing FavIcon callbacks in BookmarkChangeProcessor This change improves responsiveness of chrome UI thread by eliminating wasted work that BookmarkChangeProcessor does in BookmarkNodeFaviconChanged in a scenario when user initially connects sync to an account with a large number of bookmarks. This is achieved by ignoring the notification earlier when there is no FavIcon image, before doing any expensive work. Please note that the notification is called twice for each bookmark - first when a change in FavIcon is detected and then when the icon is uploaded to the bookmark model. The change cuts the work associated with the first call on the sync side. Estimated saving on the UI thread is about 10-12% (as measured by reduction of samples in sampling profile). BUG=239621 Committed: https://crrev.com/d38ccdc3e21501cc81753431ececd0856df87f7c Cr-Commit-Position: refs/heads/master@{#302685}

Patch Set 1 : #

Total comments: 8

Patch Set 2 : Limit the change to the FavIcon check in BookmarkChangeProcessor::BookmarkNodeFaviconChanged #

Unified diffs Side-by-side diffs Delta from patch set Stats (+17 lines, -0 lines) Patch
M chrome/browser/sync/glue/bookmark_change_processor.cc View 1 1 chunk +17 lines, -0 lines 0 comments Download

Messages

Total messages: 12 (3 generated)
stanisc
Please review this change.
6 years, 2 months ago (2014-10-17 18:05:10 UTC) #3
Nicolas Zea
https://codereview.chromium.org/661883002/diff/20001/chrome/browser/sync/glue/bookmark_change_processor.cc File chrome/browser/sync/glue/bookmark_change_processor.cc (right): https://codereview.chromium.org/661883002/diff/20001/chrome/browser/sync/glue/bookmark_change_processor.cc#newcode424 chrome/browser/sync/glue/bookmark_change_processor.cc:424: const gfx::Image& favicon = model->GetFavicon(node); it seems like all ...
6 years, 2 months ago (2014-10-20 18:04:46 UTC) #4
stanisc
I'll do some further experiments when I have time to see if I can come ...
6 years, 2 months ago (2014-10-20 18:39:21 UTC) #5
stanisc
I went back to a much smaller change for now to keep this simple. I ...
6 years, 1 month ago (2014-11-03 23:35:35 UTC) #6
Nicolas Zea
lgtm
6 years, 1 month ago (2014-11-04 18:51:53 UTC) #7
Nicolas Zea
Although probably need to update the commit message.
6 years, 1 month ago (2014-11-04 18:52:09 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/661883002/40001
6 years, 1 month ago (2014-11-04 21:31:34 UTC) #10
commit-bot: I haz the power
Committed patchset #2 (id:40001)
6 years, 1 month ago (2014-11-04 22:29:19 UTC) #11
commit-bot: I haz the power
6 years, 1 month ago (2014-11-04 22:30:31 UTC) #12
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/d38ccdc3e21501cc81753431ececd0856df87f7c
Cr-Commit-Position: refs/heads/master@{#302685}

Powered by Google App Engine
This is Rietveld 408576698