New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 631203 link

Starred by 5 users

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: ----

Blocked on:
issue 806327

Blocking:
issue 631010



Sign in to add a comment

Create Time to Interactive and Time to First CPU Idle UMA, UKM & Trace Event

Project Member Reported by dproy@chromium.org, Jul 25 2016

Issue description

Implement prototype Time to Interactive as an UMA. This is part of  crbug.com/631010 .

Design doc/discussions here: https://docs.google.com/document/d/11sWqwdfd3u1TwyZhsc-fB2NcqMZ_59Kz4XKiivp1cIg/edit?pref=2&pli=1#heading=h.ir858lrmrkf5

 
Cc: ksakamoto@chromium.org
Deep is going to focus on the input side of this - we'll loop in loading folks more closely once we've got a prototype.
Summary: Create time to interactive prototype UMA & Trace Event (was: Create time to interactive prototype UMA)
Might as well add the trace event at the same time.
Components: Speed>Metrics
Summary: Create time to interactive prototype UMA, UKM & Trace Event (was: Create time to interactive prototype UMA & Trace Event)
Adding UKM as a requirement here.
Blocking: 714645

Comment 6 by dproy@chromium.org, Oct 16 2017

Summary: Create TTFI and TTCI UMA, UKM & Trace Event (was: Create time to interactive prototype UMA, UKM & Trace Event)
Project Member

Comment 7 by bugdroid1@chromium.org, Oct 27 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3b4bb95c40fccb9dfe732085d736fb71201fbdba

commit 3b4bb95c40fccb9dfe732085d736fb71201fbdba
Author: Deepanjan Roy <dproy@chromium.org>
Date: Fri Oct 27 18:30:17 2017

Implement Time to Interactive Detector

This patch introduces the InteractiveDetector class, which currently detects
Time to Interactive. Time to Interactive is intended to approximate the first
point in time a page is consistently jank free for a significant time window
after load.

We currently output a trace event at the Interactive timestamp. Future patches
will report the metric as UMA/UKM, and add First Idle detection.

Design doc: https://goo.gl/SYt55W

Bug:  631203 
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Ic9f3cf8089f43d313c255c8df1aa1f311163b2e5
Reviewed-on: https://chromium-review.googlesource.com/720213
Commit-Queue: Deepanjan Roy <dproy@chromium.org>
Reviewed-by: Nate Chapin <japhet@chromium.org>
Reviewed-by: Timothy Dresser <tdresser@chromium.org>
Cr-Commit-Position: refs/heads/master@{#512247}
[modify] https://crrev.com/3b4bb95c40fccb9dfe732085d736fb71201fbdba/third_party/WebKit/Source/core/BUILD.gn
[modify] https://crrev.com/3b4bb95c40fccb9dfe732085d736fb71201fbdba/third_party/WebKit/Source/core/dom/DocumentTiming.cpp
[modify] https://crrev.com/3b4bb95c40fccb9dfe732085d736fb71201fbdba/third_party/WebKit/Source/core/loader/BUILD.gn
[modify] https://crrev.com/3b4bb95c40fccb9dfe732085d736fb71201fbdba/third_party/WebKit/Source/core/loader/DocumentLoader.cpp
[modify] https://crrev.com/3b4bb95c40fccb9dfe732085d736fb71201fbdba/third_party/WebKit/Source/core/loader/FrameFetchContext.cpp
[add] https://crrev.com/3b4bb95c40fccb9dfe732085d736fb71201fbdba/third_party/WebKit/Source/core/loader/InteractiveDetector.cpp
[add] https://crrev.com/3b4bb95c40fccb9dfe732085d736fb71201fbdba/third_party/WebKit/Source/core/loader/InteractiveDetector.h
[add] https://crrev.com/3b4bb95c40fccb9dfe732085d736fb71201fbdba/third_party/WebKit/Source/core/loader/InteractiveDetectorTest.cpp
[modify] https://crrev.com/3b4bb95c40fccb9dfe732085d736fb71201fbdba/third_party/WebKit/Source/core/paint/PaintTiming.cpp

Project Member

Comment 8 by bugdroid1@chromium.org, Oct 27 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/318723cc573ab5b141c2a40cf1874a8324f0d01e

commit 318723cc573ab5b141c2a40cf1874a8324f0d01e
Author: Hiroshige Hayashizaki <hiroshige@chromium.org>
Date: Fri Oct 27 19:27:04 2017

Revert "Implement Time to Interactive Detector"

This reverts commit 3b4bb95c40fccb9dfe732085d736fb71201fbdba.

Reason for revert: Build failure on Windows dbg builder:
https://build.chromium.org/p/chromium.webkit/builders/WebKit%20Win%20Builder%20%28dbg%29/builds/126465

Original change's description:
> Implement Time to Interactive Detector
> 
> This patch introduces the InteractiveDetector class, which currently detects
> Time to Interactive. Time to Interactive is intended to approximate the first
> point in time a page is consistently jank free for a significant time window
> after load.
> 
> We currently output a trace event at the Interactive timestamp. Future patches
> will report the metric as UMA/UKM, and add First Idle detection.
> 
> Design doc: https://goo.gl/SYt55W
> 
> Bug:  631203 
> Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
> Change-Id: Ic9f3cf8089f43d313c255c8df1aa1f311163b2e5
> Reviewed-on: https://chromium-review.googlesource.com/720213
> Commit-Queue: Deepanjan Roy <dproy@chromium.org>
> Reviewed-by: Nate Chapin <japhet@chromium.org>
> Reviewed-by: Timothy Dresser <tdresser@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#512247}

TBR=japhet@chromium.org,tdresser@chromium.org,dproy@chromium.org

Change-Id: I55b855c7a099c92437e740d310b07acf4d673071
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  631203 
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Reviewed-on: https://chromium-review.googlesource.com/742241
Reviewed-by: Hiroshige Hayashizaki <hiroshige@chromium.org>
Commit-Queue: Hiroshige Hayashizaki <hiroshige@chromium.org>
Cr-Commit-Position: refs/heads/master@{#512265}
[modify] https://crrev.com/318723cc573ab5b141c2a40cf1874a8324f0d01e/third_party/WebKit/Source/core/BUILD.gn
[modify] https://crrev.com/318723cc573ab5b141c2a40cf1874a8324f0d01e/third_party/WebKit/Source/core/dom/DocumentTiming.cpp
[modify] https://crrev.com/318723cc573ab5b141c2a40cf1874a8324f0d01e/third_party/WebKit/Source/core/loader/BUILD.gn
[modify] https://crrev.com/318723cc573ab5b141c2a40cf1874a8324f0d01e/third_party/WebKit/Source/core/loader/DocumentLoader.cpp
[modify] https://crrev.com/318723cc573ab5b141c2a40cf1874a8324f0d01e/third_party/WebKit/Source/core/loader/FrameFetchContext.cpp
[delete] https://crrev.com/7e813690449fb7265efb50b410dc271e5f63cf05/third_party/WebKit/Source/core/loader/InteractiveDetector.cpp
[delete] https://crrev.com/7e813690449fb7265efb50b410dc271e5f63cf05/third_party/WebKit/Source/core/loader/InteractiveDetector.h
[delete] https://crrev.com/7e813690449fb7265efb50b410dc271e5f63cf05/third_party/WebKit/Source/core/loader/InteractiveDetectorTest.cpp
[modify] https://crrev.com/318723cc573ab5b141c2a40cf1874a8324f0d01e/third_party/WebKit/Source/core/paint/PaintTiming.cpp

Project Member

Comment 9 by bugdroid1@chromium.org, Nov 3 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2494ceb8558c07fbc505f757868e9eea0f030246

commit 2494ceb8558c07fbc505f757868e9eea0f030246
Author: Deepanjan Roy <dproy@chromium.org>
Date: Fri Nov 03 00:27:40 2017

Implement Time to Interactive Detector

This patch introduces the InteractiveDetector class, which currently detects
Time to Interactive. Time to Interactive is intended to approximate the first
point in time a page is consistently jank free for a significant time window
after load.

We currently output a trace event at the Interactive timestamp. Future patches
will report the metric as UMA/UKM, and add First Idle detection.

Design doc: https://goo.gl/SYt55W

Bug:  631203 
Change-Id: I4ea37e50bdf7e5f332299d828f1488b544ceead8
Reviewed-on: https://chromium-review.googlesource.com/742164
Reviewed-by: Nate Chapin <japhet@chromium.org>
Commit-Queue: Deepanjan Roy <dproy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#513634}
[modify] https://crrev.com/2494ceb8558c07fbc505f757868e9eea0f030246/third_party/WebKit/Source/core/BUILD.gn
[modify] https://crrev.com/2494ceb8558c07fbc505f757868e9eea0f030246/third_party/WebKit/Source/core/dom/DocumentTiming.cpp
[modify] https://crrev.com/2494ceb8558c07fbc505f757868e9eea0f030246/third_party/WebKit/Source/core/loader/BUILD.gn
[modify] https://crrev.com/2494ceb8558c07fbc505f757868e9eea0f030246/third_party/WebKit/Source/core/loader/DocumentLoader.cpp
[modify] https://crrev.com/2494ceb8558c07fbc505f757868e9eea0f030246/third_party/WebKit/Source/core/loader/FrameFetchContext.cpp
[add] https://crrev.com/2494ceb8558c07fbc505f757868e9eea0f030246/third_party/WebKit/Source/core/loader/InteractiveDetector.cpp
[add] https://crrev.com/2494ceb8558c07fbc505f757868e9eea0f030246/third_party/WebKit/Source/core/loader/InteractiveDetector.h
[add] https://crrev.com/2494ceb8558c07fbc505f757868e9eea0f030246/third_party/WebKit/Source/core/loader/InteractiveDetectorTest.cpp
[modify] https://crrev.com/2494ceb8558c07fbc505f757868e9eea0f030246/third_party/WebKit/Source/core/paint/PaintTiming.cpp

Comment 10 by dproy@chromium.org, Nov 16 2017

Summary: Create Time to Interactive and Time to First CPU Idle UMA, UKM & Trace Event (was: Create TTFI and TTCI UMA, UKM & Trace Event)
Changing bug title to reflect renames. 
Project Member

Comment 11 by bugdroid1@chromium.org, Nov 24 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860

commit 9ccc50e7640a6d9cc675d5d94bad415cbe9dc860
Author: Deepanjan Roy <dproy@chromium.org>
Date: Fri Nov 24 18:59:45 2017

Add UMA for Time To Interactive

Adds UMA for Time To Interactive by plumbing it through the Page Load
Metrics system. The UMA is only logged if the page is never backgrouded,
or if there is a no non-mouse-move user input hitting the renderer main
thread before interactive time. A separate UMA histogram keeps track of
why TTI was not recorded.


Bug:  631203 
Change-Id: Ie48d87645e1253ad7de505721d1dbec948e71dc0
Reviewed-on: https://chromium-review.googlesource.com/742065
Reviewed-by: Mike West <mkwst@google.com>
Reviewed-by: Mike West <mkwst@chromium.org>
Reviewed-by: Nate Chapin <japhet@chromium.org>
Reviewed-by: Jesse Doherty <jwd@chromium.org>
Reviewed-by: Bryan McQuade <bmcquade@chromium.org>
Reviewed-by: Timothy Dresser <tdresser@chromium.org>
Commit-Queue: Mike West <mkwst@chromium.org>
Cr-Commit-Position: refs/heads/master@{#519150}
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.cc
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.h
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer_unittest.cc
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/chrome/browser/page_load_metrics/page_load_metrics_observer.h
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/chrome/browser/page_load_metrics/page_load_metrics_update_dispatcher.cc
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/chrome/browser/page_load_metrics/page_load_metrics_update_dispatcher.h
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/chrome/browser/page_load_metrics/page_load_tracker.cc
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/chrome/common/page_load_metrics/page_load_metrics.mojom
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/chrome/common/page_load_metrics/page_load_timing.cc
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/chrome/common/page_load_metrics/test/page_load_metrics_test_util.cc
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/chrome/renderer/page_load_metrics/metrics_render_frame_observer.cc
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/third_party/WebKit/Source/core/exported/WebPerformance.cpp
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/third_party/WebKit/Source/core/exported/WebViewImpl.cpp
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/third_party/WebKit/Source/core/loader/InteractiveDetector.cpp
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/third_party/WebKit/Source/core/loader/InteractiveDetector.h
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/third_party/WebKit/Source/core/loader/InteractiveDetectorTest.cpp
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/third_party/WebKit/Source/core/timing/PerformanceTiming.cpp
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/third_party/WebKit/Source/core/timing/PerformanceTiming.h
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/third_party/WebKit/public/web/WebPerformance.h
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/tools/metrics/histograms/enums.xml
[modify] https://crrev.com/9ccc50e7640a6d9cc675d5d94bad415cbe9dc860/tools/metrics/histograms/histograms.xml

Privacy LGTM for UKM collection.

Comment 13 by dproy@chromium.org, Jan 15 2018

Blocking: -714645

Comment 15 by dproy@chromium.org, Jan 26 2018

Blockedon: 806327
Project Member

Comment 16 by bugdroid1@chromium.org, Jan 29 2018

Labels: merge-merged-3325
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/709f8bb609e45e1a61d612e6dcd15a3768443616

commit 709f8bb609e45e1a61d612e6dcd15a3768443616
Author: Deepanjan Roy <dproy@chromium.org>
Date: Mon Jan 29 15:10:03 2018

Adds UKM for Time to Interactive

We have UMA for Time to Interactive metric already. This CL adds an UKM.
See https://goo.gl/TFw6xz for explanation of Time to Interactive.

Bug:  631203 
Change-Id: I4563602c7dddc30800dfed308682931ef8c30573
Reviewed-on: https://chromium-review.googlesource.com/881533
Reviewed-by: Bryan McQuade <bmcquade@chromium.org>
Reviewed-by: Robert Kaplow <rkaplow@chromium.org>
Commit-Queue: Deepanjan Roy <dproy@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#531952}(cherry picked from commit df898168fe3fe32293fe4551b456e1f79935869c)
Reviewed-on: https://chromium-review.googlesource.com/891279
Reviewed-by: Timothy Dresser <tdresser@chromium.org>
Cr-Commit-Position: refs/branch-heads/3325@{#135}
Cr-Branched-From: bc084a8b5afa3744a74927344e304c02ae54189f-refs/heads/master@{#530369}
[modify] https://crrev.com/709f8bb609e45e1a61d612e6dcd15a3768443616/chrome/browser/page_load_metrics/observers/ukm_page_load_metrics_observer.cc
[modify] https://crrev.com/709f8bb609e45e1a61d612e6dcd15a3768443616/chrome/browser/page_load_metrics/observers/ukm_page_load_metrics_observer.h
[modify] https://crrev.com/709f8bb609e45e1a61d612e6dcd15a3768443616/chrome/browser/page_load_metrics/observers/ukm_page_load_metrics_observer_unittest.cc
[modify] https://crrev.com/709f8bb609e45e1a61d612e6dcd15a3768443616/tools/metrics/histograms/histograms.xml
[modify] https://crrev.com/709f8bb609e45e1a61d612e6dcd15a3768443616/tools/metrics/ukm/ukm.xml

Comment 17 by dproy@chromium.org, Mar 16 2018

Labels: -progressivewebmetrics

Comment 18 by npm@chromium.org, Jun 27 2018

Is this fixed? Or what's missing?
Cc: nednguyen@chromium.org kouhei@chromium.org dproy@chromium.org kinuko@chromium.org
 Issue 631010  has been merged into this issue.

Comment 20 by dproy@chromium.org, Jun 27 2018

What's missing here is First CPU Idle. Tim is that still worth doing? 
Status: Fixed (was: Assigned)
Nope!

Marking Fixed.

Sign in to add a comment