New issue
Advanced search Search tips

Issue 675060 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Expected Queueing Time Metric behaves badly with nested message loops

Project Member Reported by tdres...@chromium.org, Dec 16 2016

Issue description

EQT behaves as though a modal dialog is an extremely long task.

We should exclude time spent in modal dialogs from EQT.
 
Sami, any thoughts on the best way to do this?
Modal dialogs are implemented with nested run loops. One fix would be to reset our estimates during and/or after nested run loops.
That sounds reasonable to me, but I don't have a good sense of how often nested run loops are used.

They're pretty rare, and tend to run fairly long, correct? If there were lots of short nested run loops, I'd say it wouldn't make sense to completely reset - we'd just want to exclude the nested run loops from the reported estimate.
Yeah, they're (thankfully) extremely rare. If there's a neat way to exclude them that would work too.
Components: Speed>Metrics
Components: -Internals>Metrics
Status: Started (was: Assigned)
Summary: Expected Queueing Time Metric behaves badly with nested message loops (was: Expected Queueing Time Metric behaves badly with modal dialogs)
Project Member

Comment 8 by bugdroid1@chromium.org, Mar 31 2017

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

commit c4067e72471b45ccb8d775189e53c6bcd3cb2c91
Author: tdresser <tdresser@chromium.org>
Date: Fri Mar 31 20:34:59 2017

Expected Queueing Time Metric ignores tasks with nested message loops.

We're seeing cases where the Expected Queueing Time metric is reporting
values which are far too high. We hypothesize that this is due to
nested message loops, which currently cause us to report a task with
length equal to the duration of the nested message loop.

Exclude tasks containing nested message loops from this metric.

BUG= 675060 

Review-Url: https://codereview.chromium.org/2788013003
Cr-Commit-Position: refs/heads/master@{#461210}

[modify] https://crrev.com/c4067e72471b45ccb8d775189e53c6bcd3cb2c91/third_party/WebKit/Source/core/frame/PerformanceMonitor.h
[modify] https://crrev.com/c4067e72471b45ccb8d775189e53c6bcd3cb2c91/third_party/WebKit/Source/platform/scheduler/base/queueing_time_estimator.cc
[modify] https://crrev.com/c4067e72471b45ccb8d775189e53c6bcd3cb2c91/third_party/WebKit/Source/platform/scheduler/base/queueing_time_estimator.h
[modify] https://crrev.com/c4067e72471b45ccb8d775189e53c6bcd3cb2c91/third_party/WebKit/Source/platform/scheduler/base/queueing_time_estimator_unittest.cc
[modify] https://crrev.com/c4067e72471b45ccb8d775189e53c6bcd3cb2c91/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.cc
[modify] https://crrev.com/c4067e72471b45ccb8d775189e53c6bcd3cb2c91/third_party/WebKit/Source/platform/scheduler/base/test_task_time_observer.h
[modify] https://crrev.com/c4067e72471b45ccb8d775189e53c6bcd3cb2c91/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc
[modify] https://crrev.com/c4067e72471b45ccb8d775189e53c6bcd3cb2c91/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.h
[modify] https://crrev.com/c4067e72471b45ccb8d775189e53c6bcd3cb2c91/third_party/WebKit/public/platform/scheduler/base/task_time_observer.h

Status: Fixed (was: Started)
With these changes, the data we're getting now makes sense.

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

Labels: -progressivewebmetrics

Sign in to add a comment