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

Issue 1908513002: Add mutator utilization metric. (Closed)

Created:
4 years, 8 months ago by ulan
Modified:
4 years, 7 months ago
CC:
catapult-reviews_chromium.org, tracing-review_chromium.org
Base URL:
https://github.com/catapult-project/catapult.git@master
Target Ref:
refs/heads/master
Project:
catapult
Visibility:
Public.

Description

Add mutator utilization metric. The metric was introduced in "A Parallel, Real-Time Garbage Collector" paper by Cheng and Blelloch. Since then it became one of the main metrics for measuring GC performance. Mutator utilization for a windows size w is a function of time mu_w(t) that shows how much time in [t, t+w] is left for the mutator. More formally: mu_w(t) = (w - total_time_spent_in_gc_in(t, t + w)) / w. This patch computes minimum value and percentiles of mutator utilization for windows size 16.67, which the frame time corresponding to 60 FPS. Committed: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+/4e6654209707527b1e91268f7c81d77c4edc8142

Patch Set 1 #

Patch Set 2 : #

Total comments: 4

Patch Set 3 : Move PiecewiseLinearFunction to base, use findTopmostSlicesRelativeToThisSlice #

Total comments: 12

Patch Set 4 : Add more detailed description of mutator utilization #

Patch Set 5 : use tr.b.mergeRanges #

Total comments: 88

Patch Set 6 : Address Petr's comments #

Patch Set 7 : More fixes #

Total comments: 32

Patch Set 8 : Address Petr's comments #

Patch Set 9 : Fix pct naming #

Total comments: 4

Patch Set 10 : Address Ben's comments #

Total comments: 6

Patch Set 11 : Address Petr's comments #

Patch Set 12 : Remove redundant semicolon #

Unified diffs Side-by-side diffs Delta from patch set Stats (+549 lines, -5 lines) Patch
M tracing/trace_viewer.gypi View 1 2 1 chunk +1 line, -0 lines 0 comments Download
A tracing/tracing/base/piecewise_linear_function.html View 1 2 3 4 5 6 7 8 9 10 1 chunk +143 lines, -0 lines 0 comments Download
A tracing/tracing/base/piecewise_linear_function_test.html View 1 2 3 4 5 6 7 1 chunk +34 lines, -0 lines 0 comments Download
M tracing/tracing/metrics/v8/gc_metric.html View 1 2 3 4 5 6 7 8 9 4 chunks +47 lines, -2 lines 0 comments Download
M tracing/tracing/metrics/v8/gc_metric_test.html View 1 2 3 4 5 6 7 8 9 1 chunk +32 lines, -0 lines 0 comments Download
M tracing/tracing/metrics/v8/utils.html View 1 2 3 4 5 6 7 8 9 10 11 5 chunks +147 lines, -3 lines 0 comments Download
A tracing/tracing/metrics/v8/utils_test.html View 1 2 3 4 5 6 7 8 9 10 1 chunk +145 lines, -0 lines 0 comments Download

Messages

Total messages: 38 (14 generated)
ulan
Ethan, could you please take a look at v8/gc_metric.html ? Hannes, could you please take ...
4 years, 8 months ago (2016-04-20 16:46:07 UTC) #3
eakuefner
https://codereview.chromium.org/1908513002/diff/20001/tracing/tracing/metrics/v8/gc_metric.html File tracing/tracing/metrics/v8/gc_metric.html (right): https://codereview.chromium.org/1908513002/diff/20001/tracing/tracing/metrics/v8/gc_metric.html#newcode206 tracing/tracing/metrics/v8/gc_metric.html:206: topEvent.descendentSlices.forEach(function(e) { One thing overall about this metric that ...
4 years, 8 months ago (2016-04-20 17:25:54 UTC) #4
ulan
Thanks! https://codereview.chromium.org/1908513002/diff/20001/tracing/tracing/metrics/v8/gc_metric.html File tracing/tracing/metrics/v8/gc_metric.html (right): https://codereview.chromium.org/1908513002/diff/20001/tracing/tracing/metrics/v8/gc_metric.html#newcode206 tracing/tracing/metrics/v8/gc_metric.html:206: topEvent.descendentSlices.forEach(function(e) { On 2016/04/20 17:25:54, eakuefner wrote: > ...
4 years, 8 months ago (2016-04-20 18:47:04 UTC) #5
eakuefner
Adding Ben + Petr because I'm going to be OOO for the next few days, ...
4 years, 8 months ago (2016-04-20 20:46:04 UTC) #7
benjhayden
Would you mind expanding the CL description to include a few things? Briefly, what is ...
4 years, 8 months ago (2016-04-20 23:03:19 UTC) #8
benjhayden
Sorry, I haven't even gotten to Ethan's question yet. I'm starting to think that we ...
4 years, 8 months ago (2016-04-20 23:11:54 UTC) #9
benjhayden
Ok, to answer Ethan's question, it looks like if you were to add EventSet.findTopmostSlices, it ...
4 years, 8 months ago (2016-04-20 23:24:19 UTC) #10
ulan
Thanks a lot, Ben. I updated the description and uploaded new patch set. https://codereview.chromium.org/1908513002/diff/10004/tracing/tracing/base/piecewise_linear_function.html File ...
4 years, 8 months ago (2016-04-21 11:06:54 UTC) #13
petrcermak
My first pass of comments. Please break lines in the patch description at 72 characters ...
4 years, 8 months ago (2016-04-21 13:42:31 UTC) #14
petrcermak
Also please explain why you chose to expose mu_16(t) (and not mu_32(x) etc.). Thanks, Petr ...
4 years, 8 months ago (2016-04-21 13:45:22 UTC) #15
Hannes Payer (out of office)
lgtm
4 years, 8 months ago (2016-04-21 14:13:44 UTC) #16
ulan
Thanks a lot! https://codereview.chromium.org/1908513002/diff/70001/tracing/tracing/base/piecewise_linear_function.html File tracing/tracing/base/piecewise_linear_function.html (right): https://codereview.chromium.org/1908513002/diff/70001/tracing/tracing/base/piecewise_linear_function.html#newcode15 tracing/tracing/base/piecewise_linear_function.html:15: * A function that consists of ...
4 years, 8 months ago (2016-04-21 16:45:17 UTC) #19
petrcermak
I think this is almost ready to land. Thanks for all the helpful comments :-) ...
4 years, 8 months ago (2016-04-22 11:40:02 UTC) #20
ulan
Good suggestions! https://codereview.chromium.org/1908513002/diff/110001/tracing/tracing/base/piecewise_linear_function.html File tracing/tracing/base/piecewise_linear_function.html (right): https://codereview.chromium.org/1908513002/diff/110001/tracing/tracing/base/piecewise_linear_function.html#newcode28 tracing/tracing/base/piecewise_linear_function.html:28: * Pieces should be pushed in the ...
4 years, 8 months ago (2016-04-22 12:32:27 UTC) #21
benjhayden
It'd be nice to clarify units. lgtm. https://codereview.chromium.org/1908513002/diff/150001/tracing/tracing/metrics/v8/gc_metric.html File tracing/tracing/metrics/v8/gc_metric.html (right): https://codereview.chromium.org/1908513002/diff/150001/tracing/tracing/metrics/v8/gc_metric.html#newcode20 tracing/tracing/metrics/v8/gc_metric.html:20: var WINDOW_SIZE ...
4 years, 8 months ago (2016-04-22 16:49:39 UTC) #22
ulan
Thanks, Ben. Petr, any more comments? https://codereview.chromium.org/1908513002/diff/150001/tracing/tracing/metrics/v8/gc_metric.html File tracing/tracing/metrics/v8/gc_metric.html (right): https://codereview.chromium.org/1908513002/diff/150001/tracing/tracing/metrics/v8/gc_metric.html#newcode20 tracing/tracing/metrics/v8/gc_metric.html:20: var WINDOW_SIZE = ...
4 years, 7 months ago (2016-04-25 11:02:17 UTC) #23
petrcermak
LGTM with two final comments. Thanks for your patience :-) Petr https://codereview.chromium.org/1908513002/diff/170001/tracing/tracing/base/piecewise_linear_function.html File tracing/tracing/base/piecewise_linear_function.html (right): ...
4 years, 7 months ago (2016-04-25 12:31:17 UTC) #24
ulan
Thanks, landing. https://codereview.chromium.org/1908513002/diff/170001/tracing/tracing/base/piecewise_linear_function.html File tracing/tracing/base/piecewise_linear_function.html (right): https://codereview.chromium.org/1908513002/diff/170001/tracing/tracing/base/piecewise_linear_function.html#newcode83 tracing/tracing/base/piecewise_linear_function.html:83: if (below / total < percent) { ...
4 years, 7 months ago (2016-04-25 12:46:26 UTC) #25
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1908513002/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1908513002/200001
4 years, 7 months ago (2016-04-25 12:46:47 UTC) #28
commit-bot: I haz the power
Try jobs failed on following builders: Catapult Windows Tryserver on master.tryserver.client.catapult (JOB_TIMED_OUT, no build URL)
4 years, 7 months ago (2016-04-25 14:47:10 UTC) #30
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1908513002/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1908513002/200001
4 years, 7 months ago (2016-04-25 14:50:19 UTC) #32
commit-bot: I haz the power
Try jobs failed on following builders: Catapult Windows Tryserver on master.tryserver.client.catapult (JOB_FAILED, https://build.chromium.org/p/tryserver.client.catapult/builders/Catapult%20Windows%20Tryserver/builds/2795)
4 years, 7 months ago (2016-04-25 17:03:39 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1908513002/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1908513002/200001
4 years, 7 months ago (2016-04-26 09:14:38 UTC) #36
commit-bot: I haz the power
4 years, 7 months ago (2016-04-26 09:35:12 UTC) #38
Message was sent while issue was closed.
Committed patchset #12 (id:200001) as
https://chromium.googlesource.com/external/github.com/catapult-project/catapu...

Powered by Google App Engine
This is Rietveld 408576698