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

Issue 783345 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: ----



Sign in to add a comment

blink_perf.dom/select-long-word.html in blink_perf.dom failing on multiple builders

Project Member Reported by martiniss@chromium.org, Nov 9 2017

Issue description

blink_perf.dom/select-long-word.html in blink_perf.dom failing on multiple builders

Builders failed on: 
- Android Nexus5 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Android%20Nexus5%20Perf
- Android Nexus5X Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Android%20Nexus5X%20Perf
- Android Nexus5X WebView Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Android%20Nexus5X%20WebView%20Perf
- Android Nexus6 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Android%20Nexus6%20Perf
- Android Nexus6 WebView Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Android%20Nexus6%20WebView%20Perf
- Android Nexus7v2 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Android%20Nexus7v2%20Perf
- Android One Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Android%20One%20Perf
- Linux Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Linux%20Perf
- Mac 10.11 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Mac%2010.11%20Perf
- Mac 10.12 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Mac%2010.12%20Perf
- Mac Air 10.11 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Mac%20Air%2010.11%20Perf
- Mac Pro 10.11 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Mac%20Pro%2010.11%20Perf
- Mac Retina Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Mac%20Retina%20Perf
- Win 10 High-DPI Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Win%2010%20High-DPI%20Perf
- Win 10 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Win%2010%20Perf
- Win 7 ATI GPU Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Win%207%20ATI%20GPU%20Perf
- Win 7 Intel GPU Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Win%207%20Intel%20GPU%20Perf
- Win 7 Nvidia GPU Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Win%207%20Nvidia%20GPU%20Perf
- Win 7 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Win%207%20Perf
- Win 7 x64 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Win%207%20x64%20Perf
- Win 8 Perf: 
  https://build.chromium.org/p/chromium.perf/builders/Win%208%20Perf


Pretty clearly something went wrong. I'm not sure what the exact bad CL is though. I manually bisected a bit, and found a rev range of 514698 - 514734. I'll start a bisect.
 
๐Ÿ“ Pinpoint job started.
https://pinpoint-dot-chromeperf.appspot.com/job/16d7c5c1f80000
Cc: dtu@chromium.org
It looks like the pinpoint job finished but didn't update the bug.
It looks like it has failurs in the second point, and none in the first point but says it found no difference. Not sure what they grey'd out boxes in the second point mean though.

Adding dtu@ for help understanding the pinpoint results. 

Comment 3 Deleted

Project Member

Comment 4 by 42576172...@developer.gserviceaccount.com, Nov 13 2017

๐Ÿ“ Pinpoint job started.
https://pinpoint-dot-chromeperf.appspot.com/job/140aa5e1f80000
Project Member

Comment 5 by 42576172...@developer.gserviceaccount.com, Nov 13 2017

๐Ÿ“ Pinpoint job started.
https://pinpoint-dot-chromeperf.appspot.com/job/12b7d409f80000
It appears what happened is the first pinpoint job that was launched isn't detecting the updated status of the swarming jobs. (I think anyway). The linux one  I launched last seems to be working as expected. 
Project Member

Comment 7 by 42576172...@developer.gserviceaccount.com, Nov 14 2017

Cc: mark@chromium.org drott@chromium.org rouslan@chromium.org yosin@chromium.org js...@chromium.org
Owner: js...@chromium.org
Status: Assigned (was: Available)
๐Ÿ“ Found a significant difference after 1 commit.
https://pinpoint-dot-chromeperf.appspot.com/job/12b7d409f80000

Update ICU to version 60.1 + local patches
By jshin@chromium.org ยท Wed Nov 08 02:13:24 2017
chromium @ befb16634bb440cf5442979ad262832b4cebd43e

Understanding performance regressions:
  http://g.co/ChromePerformanceRegressions

Comment 8 by yosin@chromium.org, Nov 14 2017

select-long-word.html is very artificial and not appeared in usual web pages, e.g.
it select words 196,609 characters long.

It seems Word Breaker in ICU 60 is slower than before but it may be acceptable,
because selecting word is caused by double-click and selecting word can be done
in <100ms and most of words in web page has less than 100.

Comment 9 by yosin@chromium.org, Nov 14 2017

AFAIK, backward word breaker is slower than before. Current word boundary search
uses backward word breaker, this may cause this performance regression.

As of #c8 of my observation, I think it is OK to mark this bug "Wont Fix".

Comment 10 by js...@chromium.org, Nov 14 2017

Cc: aheninger@google.com
Status: WontFix (was: Assigned)
yosin@: Thanks a lot for your comments/analysis. 

You're spot on. In ICU 60, backward word break is slower unless word-break locations were cached in the previous iteration (forward) because 'backward' rules were removed in rule files. 

In  bug 766816  (ICU update bug), I ran some performance tests(mainly Blink layout tests), but they didn't include this test that got slower. 

Per your comment 8 (and I agree with you about word selection),  I'll mark this as WONTFIX. 


Status: Started (was: WontFix)
If this test is bad, can you remove the test, then remove the disable connotation before closing this bug? We shouldn't leave bad test code around in our code base.
Project Member

Comment 12 by 42576172...@developer.gserviceaccount.com, Nov 14 2017

๐Ÿ“ Couldn't reproduce a difference.
https://pinpoint-dot-chromeperf.appspot.com/job/14c88931f80000
Project Member

Comment 13 by 42576172...@developer.gserviceaccount.com, Nov 14 2017

๐Ÿ“ Couldn't reproduce a difference.
https://pinpoint-dot-chromeperf.appspot.com/job/140aa5e1f80000
Both of those bisects seem to have been triggered on the wrong benchmark (blink_perf.bindings instead of blink_perf.dom). I kicked off a new bisect on the correct benchmark and am going to submit a CL disabling this story now.
Project Member

Comment 16 by 42576172...@developer.gserviceaccount.com, Nov 14 2017

Status: Assigned (was: Started)

=== Auto-CCing suspected CL author jshin@chromium.org ===

Hi jshin@chromium.org, the bisect results pointed to your CL, please take a look at the
results.


=== BISECT JOB RESULTS ===
Test failure found with culprit

Suspected Commit
  Author : Jungshik Shin
  Commit : befb16634bb440cf5442979ad262832b4cebd43e
  Date   : Wed Nov 08 02:13:24 2017
  Subject: Update ICU to version 60.1 + local patches

Bisect Details
  Configuration: android_webview_arm64_aosp_perf_bisect
  Benchmark    : blink_perf.dom
  Metric       : select-long-word/select-long-word.html

Revision             Exit Code      N
chromium@514697      0 +- N/A       1      good
chromium@514704      0 +- N/A       1      good
chromium@514708      0 +- N/A       1      good
chromium@514709      1 +- N/A       1      bad       <--
chromium@514710      1 +- N/A       1      bad
chromium@514711      1 +- N/A       1      bad
chromium@514724      1 +- N/A       1      bad
chromium@514750      1 +- N/A       1      bad

Please refer to the following doc on diagnosing blink_perf regressions:
  https://chromium.googlesource.com/chromium/src/+/master/docs/speed/benchmark_harnesses/blink_perf.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 --story-filter=select.long.word.html blink_perf.dom

More information on addressing performance regressions:
  http://g.co/ChromePerformanceRegressions

Debug information about this bisect:
  https://chromeperf.appspot.com/buildbucket_job_status/8962932735052768768


For feedback, file a bug with component Speed>Bisection
Owner: charliea@chromium.org
Unassigning this from jshin@.

Thanks rnephew@ for pointing out that my bisecting didn't really make any sense given the context of this bug: the problem isn't that there's been a performance regression, but rather that we know that there's been a performance regression in a use case that we think is totally unrealistic, prompting nednguyen@ to ask for the removal of the test case.

I'm going to disable the test case and assign this to the benchmark owner to delete the user story.
Labels: -Pri-1 Pri-2
Owner: jbroman@chromium.org
jbroman@, I just disabled the select-long-word.html story because it was failing. https://bugs.chromium.org/p/chromium/issues/detail?id=783345#c10 seems to suggest that we want to delete this story. Can you reassign to someone on your team to quickly do so?
Project Member

Comment 19 by bugdroid1@chromium.org, Nov 14 2017

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

commit 4afa7ad61172f89244c244ebdfc763fdc3995cbc
Author: Charlie Andrews <charliea@chromium.org>
Date: Tue Nov 14 21:14:48 2017

Disable blink_perf.dom/select-long.word.html

The story is failing and isn't realistic, so I'm going to disable it
until the benchmark owner can circle around and delete the story.

TBR=rnephew@chromium.org,jbroman@chromium.org

Bug:  783345 
Change-Id: Ieaeca01f6f079add3f571abf81de3187ff9db2e6
Reviewed-on: https://chromium-review.googlesource.com/769158
Reviewed-by: rnephew <rnephew@chromium.org>
Reviewed-by: Charlie Andrews <charliea@chromium.org>
Commit-Queue: Charlie Andrews <charliea@chromium.org>
Cr-Commit-Position: refs/heads/master@{#516427}
[modify] https://crrev.com/4afa7ad61172f89244c244ebdfc763fdc3995cbc/tools/perf/benchmarks/blink_perf.py

Cc: jbroman@chromium.org
Owner: adithyas@chromium.org
Adithya, could you determine what the right course of action is here (it may well be to modify or delete the test, as discussed above) and follow up?
Project Member

Comment 21 by bugdroid1@chromium.org, Nov 20 2017

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

commit 12cc3cabcca26004d96b435f16df848c76fb48d5
Author: Adithya Srinivasan <adithyas@chromium.org>
Date: Mon Nov 20 20:49:33 2017

Remove blink_perf.dom/select-long-word.html

This test case is unrealistic as words are usually never that long.
Slowing down selection of a word this long is acceptable as most words
on a webpage can still be selected in under 100ms.

Bug:  783345 
Change-Id: I55ca93401b94018f45d9a3dbccbe00b9677ab9c1
Reviewed-on: https://chromium-review.googlesource.com/779441
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#517918}
[delete] https://crrev.com/33175057fe267110341b7fda22ab161016e610f7/third_party/WebKit/PerformanceTests/DOM/select-long-word.html
[modify] https://crrev.com/12cc3cabcca26004d96b435f16df848c76fb48d5/tools/perf/benchmarks/blink_perf.py

Status: Fixed (was: Assigned)

Sign in to add a comment