Add logic to MDPs to dump 0 if there's nothing to dump |
|||||||
Issue descriptionSee the link to graphs below.
,
Mar 27 2017
Started bisect job https://chromeperf.appspot.com/buildbucket_job_status/8983983774531740032
,
Mar 27 2017
,
Mar 27 2017
+ssid, +primiano It looks like *some* metrics (cc and gpu) have stopped reporting for *some* background pages on the android-webview-nexus5X bot. See e.g.: https://chromeperf.appspot.com/report?sid=ba287e28139326a71a2ab3fb1ecd25eac6a00945662fe324aaaca92fb4e01a79&rev=448418 Maybe this is OK, and just means that cc and gpu memory is not being used for those cases since we're in background? I've checked and many on the regular (non-webview) N5 bot and cc/gpu have not been reported for a long while in most background pages. This is another of those instances where it's unclear whether the metric "is missing but should be there" or "is missing because it's zero". Perhaps there should be a better way to distinguish between the two.
,
Mar 27 2017
+ericrk : it seems that some pages (but not all) stopped reporting gpu and cc memory in background. I suspect this is just WAI (probably a side effect of crrev.com/2669323002) as we end up dropping all resources from the chrome side and the CC / GPU MDP have essentially nothing to declare. One thing that perezju was pointing out, is that would be nice if we could distinguish between "the cc MDP has been invoked and its result is just 0" vs "there could be some bug and we are not invoking the cc MDP". So I wonder if we could tweak the cc MDP and emit empty entires to make this explicitly. perezju@ can I ask you do to a quick test: if you manually inject an empty "cc/tile_memory" entry with no size column in the trace, does it show up as a "0" in the metric? If so the resolution here would be a one line in the chrome side.
,
Mar 27 2017
=== BISECT JOB RESULTS === NO Test failure found Bisect Details Configuration: android_webview_arm64_aosp_perf_bisect Benchmark : memory.top_10_mobile Metric : memory:webview:all_processes:reported_by_chrome:gpu:effective_size_avg/background/after_https_m_facebook_com_rihanna Revision Exit Code N chromium@448418 0 +- N/A 20 good chromium@448494 0 +- N/A 20 bad Please refer to the following doc on diagnosing memory regressions: https://chromium.googlesource.com/chromium/src/+/master/docs/memory-infra/memory_benchmarks.md To Run This Test src/tools/perf/run_benchmark -v --browser=android-webview --output-format=chartjson --upload-results --pageset-repeat=1 --also-run-disabled-tests memory.top_10_mobile Debug Info https://chromeperf.appspot.com/buildbucket_job_status/8983983774531740032 Is this bisect wrong? https://chromeperf.appspot.com/bad_bisect?try_job_id=5787378465112064 | O O | Visit http://www.chromium.org/developers/speed-infra/perf-bug-faq | X | for more information addressing perf regression bugs. For feedback, | / \ | file a bug with component Speed>Bisection. Thank you!
,
Mar 27 2017
I had a look and it looks like no, a size column with a value of 0 needs to be present for it to be picked up by the metric.
Namely, if |event| is the trace event with memory dumps, we need at least:
event['args']['dumps']['allocators']['cc/tile_memory'] = {
'attrs': {
'size': {
'type': 'scalar',
'units': 'bytes',
'value': '0'
}
}
}
for the value to be picked up.
,
Mar 27 2017
Probably WAI - I'll add some logic to the MDPs to dump 0 if there's nothing to dump, which should make this clearer.
,
Mar 28 2017
Just to clarify, will this also fix the issue for gpu:effective_size? As mentioned on #4, both cc and gpu went missing for this particular case.
,
Mar 28 2017
Issue 705469 has been merged into this issue.
,
Mar 28 2017
Sure, I can look at GPU as well.
,
Aug 16 2017
erickrk: are you still working on this?
,
Aug 17 2017
+hjd FYI
,
Aug 17 2017
|
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by toyoshim@chromium.org
, Mar 27 2017