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

Issue 674963 link

Starred by 1 user

Issue metadata

Status: Untriaged
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Create pseudo-idle wakeups TBMv2 metric.

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

Issue description

Let's just order all non-async task, and define a pseudo-idle wakeup to be a task that has no preceding tasks in the last 0.5 ms. 

This should make it easier for us to measure issues like:
https://bugs.chromium.org/p/chromium/issues/detail?id=673021 or
https://bugs.chromium.org/p/chromium/issues/detail?id=650433

nednguyen, benjhayden: Thoughts?
 
Cc: charliea@chromium.org tdres...@chromium.org
Cc: skyos...@chromium.org panicker@chromium.org
+Shubhie, as I think figuring out an idle wakeups measure web perf API is somewhere on her backlog.

+Sami to comment from a scheduling perspective.

This seems like a reasonable idea to me. How would we aggregate this data? Is it just number of wakeups per pageview?

Ideally we'd come up with something here that could be extended to UMA, where the aggregation problem is a bit trickier.
Before jumping on the heuristic direction, is there any system API that we can user to query the number of idle-wakeups?
The Mac CPU monitor includes an idle wakeups column, I wonder what they use... Intel also has a tool for measuring idle wakeups.
it seems like it would be difficult to hook into tracing, but if someone wants to investigate, please feel free! :)
Cc: fmea...@chromium.org
+Fadi for tracking idle wakeup data in Chrome tracing directly.

If we can gather this data from Chrome side, I think it would also benefit UMA/Deep report, so I think it worths investigating.
Cc: brucedaw...@chromium.org
+brucedawson
The overhead of gathering idle wakeups on Windows is fairly low, but not zero. I think it would be worth enabling it some of the time or for some users, but I'd be nervous about enabling it for everyone all the time.

We could lower the sampling rate significantly - maybe grab statistics once a minute - in which case the overhead is probably so small that it is irrelevant. This would cause us to miss idle wakeups from any threads or processes that disappeared in the interim so it would necessarily undercount somewhat.
#8: Looks like we should be able to use the Linux code to read this on Android too.

#10: Logging these stats to UMA once a minute sounds like a good idea. We should be able to see some movement there once we start throttling/coalescing wakeups.

Does anyone know whether we can access these APIs from the renderer sandbox? If not, the browser might need to collect the stats on behalf of everyone else.
Components: Test>Telemetry
Components: -Tests>Telemetry

Sign in to add a comment