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

Issue 179069: Improve New Tab Page load performance (Closed)

Created:
11 years, 3 months ago by Mark Mentovai
Modified:
9 years, 7 months ago
CC:
chromium-reviews_googlegroups.com, Ben Goodger (Google)
Visibility:
Public.

Description

Improve New Tab Page load performance. This change nets another 65ms (20%) improvement in the duration between the renderer requesting the NTP and it having all of the resources for the NTP available and being completely done with layout on my Mac laptop in release mode. Move the handling of important resource requests needed for NTP layout from the UI thread onto the IO thread. This is handled by caching the necessary data on the UI thread when possible, so that no profile or theme access is needed to service the request. There is often a lot of contention for the UI thread when a new tab is created, and allowing these requests to be handled more directly by the IO thread allows the renderer to lay the page out while the browser is still busy doing UI work. http://groups.google.com/group/chromium-dev/browse_thread/thread/7148074f807dc5f7 TEST=Do the new tab page and new incognito tab page still work? Are they faster? BUG=13337 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=25232

Patch Set 1 #

Total comments: 1

Patch Set 2 : '' #

Total comments: 1

Patch Set 3 : '' #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+166 lines, -66 lines) Patch
M chrome/browser/dom_ui/chrome_url_data_manager.h View 1 2 1 chunk +12 lines, -1 line 0 comments Download
M chrome/browser/dom_ui/chrome_url_data_manager.cc View 1 2 3 chunks +20 lines, -4 lines 1 comment Download
M chrome/browser/dom_ui/dom_ui_theme_source.h View 1 2 2 chunks +17 lines, -4 lines 0 comments Download
M chrome/browser/dom_ui/dom_ui_theme_source.cc View 1 2 6 chunks +34 lines, -18 lines 0 comments Download
M chrome/browser/dom_ui/new_tab_ui.cc View 1 2 8 chunks +83 lines, -39 lines 0 comments Download

Messages

Total messages: 9 (0 generated)
Mark Mentovai
Brett, I think you were involved with a lot of this stuff initially. Miranda, I ...
11 years, 3 months ago (2009-09-01 18:59:48 UTC) #1
Miranda Callahan
Wow, this is great! LGTM with nitlet, but wait for brettw, as he has much ...
11 years, 3 months ago (2009-09-01 19:52:38 UTC) #2
Mark Mentovai
I'm positive there's something wrong with my laptp's "o" key.
11 years, 3 months ago (2009-09-01 22:55:03 UTC) #3
Mark Mentovai
Brett, want to have a look?
11 years, 3 months ago (2009-09-02 03:17:09 UTC) #4
brettw
http://codereview.chromium.org/179069/diff/1005/2009 File chrome/browser/browser_process_impl.h (right): http://codereview.chromium.org/179069/diff/1005/2009#newcode56 Line 56: // It's safe to get the IO thread ...
11 years, 3 months ago (2009-09-02 17:10:58 UTC) #5
brettw
> ChromeURLDataManager::DataSource::SendResponse uses it to post > DataAvailable onto the IO thread. My change allows ...
11 years, 3 months ago (2009-09-02 18:30:12 UTC) #6
Mark Mentovai
brettw@chromium.org wrote: > http://codereview.chromium.org/179069/diff/1005/2009#newcode56 > Line 56: // It's safe to get the IO thread ...
11 years, 3 months ago (2009-09-02 18:52:59 UTC) #7
Mark Mentovai
Thanks, that was kind of obscure. New version up. http://codereview.chromium.org/179069/diff/8001/8006 File chrome/browser/dom_ui/chrome_url_data_manager.cc (right): http://codereview.chromium.org/179069/diff/8001/8006#newcode275 Line ...
11 years, 3 months ago (2009-09-02 19:49:36 UTC) #8
brettw
11 years, 3 months ago (2009-09-02 20:28:28 UTC) #9
LGTM

Powered by Google App Engine
This is Rietveld 408576698