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

Issue 2468913002: Add CSSTiming to collect aggregate PLT-level stats about CSS. (Closed)

Created:
4 years, 1 month ago by Charlie Harrison
Modified:
4 years, 1 month ago
CC:
darktears, apavlov+blink_chromium.org, blink-reviews, blink-reviews-api_chromium.org, blink-reviews-css, blink-reviews-style_chromium.org, chromium-reviews, csharrison+watch_chromium.org, dglazkov+blink, kinuko+watch, loading-reviews+metrics_chromium.org, rwlbuis
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add CSSTiming to collect aggregate PLT-level stats about CSS. We have histograms on micro-metrics like per stylesheet parse time. This patch adds histograms of how much aggregate time was spent parsing CSS before the first paint. This gives us a much better metric for tracking improvements to CSS related to loading, as improvements directly map to improvements to first contentful paint. BUG=642722, 666030 Committed: https://crrev.com/37627d6f7cb982de2c40de899bd18b17c6d6943d Cr-Commit-Position: refs/heads/master@{#432868}

Patch Set 1 #

Patch Set 2 : update histograms.xml #

Patch Set 3 : add test files :P #

Patch Set 4 : minor comment/naming changes #

Total comments: 10

Patch Set 5 : bmcquade review #

Patch Set 6 : more parsing #

Total comments: 2

Patch Set 7 : add html comment #

Total comments: 2

Patch Set 8 : fix tests more :/ #

Patch Set 9 : add license to css file (trybots prev) #

Patch Set 10 : fix browser test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+262 lines, -3 lines) Patch
M chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.cc View 1 2 3 4 5 6 7 8 1 chunk +8 lines, -0 lines 0 comments Download
M chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc View 1 2 3 4 5 6 7 8 9 1 chunk +17 lines, -0 lines 0 comments Download
M chrome/common/page_load_metrics/page_load_metrics_messages.h View 1 2 3 4 2 chunks +6 lines, -0 lines 0 comments Download
M chrome/common/page_load_metrics/page_load_timing.h View 1 2 3 4 2 chunks +19 lines, -0 lines 0 comments Download
M chrome/common/page_load_metrics/page_load_timing.cc View 1 2 3 4 3 chunks +19 lines, -2 lines 0 comments Download
M chrome/renderer/page_load_metrics/metrics_render_frame_observer.cc View 1 2 3 4 1 chunk +6 lines, -0 lines 0 comments Download
A chrome/test/data/page_load_metrics/page_with_css.html View 1 2 3 4 5 6 7 1 chunk +12 lines, -0 lines 0 comments Download
A chrome/test/data/page_load_metrics/simple.css View 1 2 3 4 5 6 7 8 1 chunk +33 lines, -0 lines 0 comments Download
A chrome/test/data/page_load_metrics/simple.css.mock-http-headers View 1 2 3 4 5 6 7 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/css/BUILD.gn View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/core/css/CSSTiming.h View 1 2 3 4 1 chunk +46 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/core/css/CSSTiming.cpp View 1 2 3 4 1 chunk +37 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/css/StyleSheetContents.cpp View 1 2 3 4 3 chunks +12 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/timing/PerformanceTiming.h View 3 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/timing/PerformanceTiming.cpp View 1 2 3 4 3 chunks +22 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/web/WebPerformance.cpp View 1 2 3 4 1 chunk +5 lines, -0 lines 0 comments Download
M third_party/WebKit/public/web/WebPerformance.h View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 2 3 4 5 6 7 8 9 1 chunk +9 lines, -0 lines 0 comments Download

Messages

Total messages: 55 (36 generated)
Charlie Harrison
Bryan, could you take a first pass at this? I plan on adding a PageLoad.CSSTiming.Update.BeforeFirstContentfulPaint ...
4 years, 1 month ago (2016-11-01 15:36:26 UTC) #8
Bryan McQuade
Thanks! structurally this looks good. i have some questions about time resolution & consistency with ...
4 years, 1 month ago (2016-11-04 14:11:30 UTC) #11
Charlie Harrison
Thanks for the review. I think reporting MS makes sense, though I expect in practice ...
4 years, 1 month ago (2016-11-04 16:05:19 UTC) #12
Bryan McQuade
LGTM, thanks! Sorry for the delayed review. https://codereview.chromium.org/2468913002/diff/100001/chrome/test/data/page_load_metrics/page_with_css.html File chrome/test/data/page_load_metrics/page_with_css.html (right): https://codereview.chromium.org/2468913002/diff/100001/chrome/test/data/page_load_metrics/page_with_css.html#newcode3 chrome/test/data/page_load_metrics/page_with_css.html:3: <link rel="stylesheet" ...
4 years, 1 month ago (2016-11-09 18:56:50 UTC) #21
Charlie Harrison
Thanks! timloh: does this look okay to you? I'm hoping this infrastructure will help assess ...
4 years, 1 month ago (2016-11-10 19:39:12 UTC) #23
Timothy Loh
I skimmed it and it looks reasonable. https://codereview.chromium.org/2468913002/diff/120001/chrome/test/data/page_load_metrics/page_with_css.html File chrome/test/data/page_load_metrics/page_with_css.html (right): https://codereview.chromium.org/2468913002/diff/120001/chrome/test/data/page_load_metrics/page_with_css.html#newcode8 chrome/test/data/page_load_metrics/page_with_css.html:8: <link rel="stylesheet" ...
4 years, 1 month ago (2016-11-11 04:19:22 UTC) #24
Charlie Harrison
https://codereview.chromium.org/2468913002/diff/120001/chrome/test/data/page_load_metrics/page_with_css.html File chrome/test/data/page_load_metrics/page_with_css.html (right): https://codereview.chromium.org/2468913002/diff/120001/chrome/test/data/page_load_metrics/page_with_css.html#newcode8 chrome/test/data/page_load_metrics/page_with_css.html:8: <link rel="stylesheet" href="/dromaeo/application.css"> On 2016/11/11 04:19:22, Timothy Loh wrote: ...
4 years, 1 month ago (2016-11-11 16:27:11 UTC) #25
Charlie Harrison
Thanks. The problem was we were erroring out on parsing the css because it was ...
4 years, 1 month ago (2016-11-14 21:28:16 UTC) #30
Timothy Loh
On 2016/11/14 21:28:16, Charlie Harrison wrote: > Thanks. The problem was we were erroring out ...
4 years, 1 month ago (2016-11-16 02:25:56 UTC) #31
Charlie Harrison
Thanks! +rkaplow for histograms.xml
4 years, 1 month ago (2016-11-16 02:31:42 UTC) #33
rkaplow
lgtm
4 years, 1 month ago (2016-11-16 06:09:34 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2468913002/160001
4 years, 1 month ago (2016-11-16 12:57:59 UTC) #37
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/305537)
4 years, 1 month ago (2016-11-16 13:06:36 UTC) #39
Charlie Harrison
Mike, would you review page_load_metrics_messages?
4 years, 1 month ago (2016-11-16 18:41:36 UTC) #43
Mike West
IPC LGTM.
4 years, 1 month ago (2016-11-17 14:33:00 UTC) #47
Charlie Harrison
Thanks much!
4 years, 1 month ago (2016-11-17 14:33:40 UTC) #48
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2468913002/180001
4 years, 1 month ago (2016-11-17 14:34:17 UTC) #51
commit-bot: I haz the power
Committed patchset #10 (id:180001)
4 years, 1 month ago (2016-11-17 14:41:02 UTC) #53
commit-bot: I haz the power
4 years, 1 month ago (2016-11-17 14:43:03 UTC) #55
Message was sent while issue was closed.
Patchset 10 (id:??) landed as
https://crrev.com/37627d6f7cb982de2c40de899bd18b17c6d6943d
Cr-Commit-Position: refs/heads/master@{#432868}

Powered by Google App Engine
This is Rietveld 408576698