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

Issue 817133 link

Starred by 4 users

Issue metadata

Status: Fixed
Owner:
Closed: Feb 2018
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug-Regression



Sign in to add a comment

1443.7% regression in load_accessibility_media_wikipedia at 537593:537639

Project Member Reported by dmazz...@chromium.org, Feb 27 2018

Issue description

See the link to graphs below.
 
Project Member

Comment 1 by 42576172...@developer.gserviceaccount.com, Feb 27 2018

All graphs for this bug:
  https://chromeperf.appspot.com/group_report?bug_id=817133

(For debugging:) Original alerts at time of bug-filing:
  https://chromeperf.appspot.com/group_report?sid=fa288b979aa77a3e4f8279d846e327acb61f4bafb10a789a1a78ce56df8d043a


Bot(s) for this bug's original alert(s):

chromium-rel-win7-x64-dual
Cc: dtseng@chromium.org
Owner: dmazz...@chromium.org
Status: Started (was: Untriaged)
The two spikes in perf match perfectly with this change:

Add hooks for AXTreeDelegate when a relation target changes

Originally landed as r534885
https://chromium-review.googlesource.com/c/chromium/src/+/899862
Then relanded as r537636
https://chromium-review.googlesource.com/c/chromium/src/+/924769

Comment 4 by dtseng@chromium.org, Feb 28 2018

The first change was reverted because we caught the performance issues. I think we solved the issue for the reland by excluding firing events for nodes created, but there might be another issue not caught by the perf tests. 

Comment 5 by nek...@chromium.org, Feb 28 2018

Perhaps we need to introduce a boolean accessibility attribute in the browser tree, HasRelationsToOtherNodes. Now we go through all the int and int-list attributes and check if one if its one of the attributes used for relations or not, and we do this for every update or deletion.
Project Member

Comment 7 by 42576172...@developer.gserviceaccount.com, Feb 28 2018

Cc: rkaplow@chromium.org sky@chromium.org mastiz@chromium.org dmazz...@chromium.org mamir@chromium.org tangltom@chromium.org msarda@chromium.org
Owner: dtseng@chromium.org
Status: Assigned (was: Started)
📍 Found significant differences after each of 3 commits.
https://pinpoint-dot-chromeperf.appspot.com/job/14936b24440000

[Dice] Display accounts submenu in bookmarks bubble by tangltom@chromium.org
https://chromium.googlesource.com/chromium/src/+/676bd99ceb23a17c820a3661a0c07572e6aa5280

Add uma metric for bookmarks JSON file size and time to write by mamir@chromium.org
https://chromium.googlesource.com/chromium/src/+/3df2894f790e335c4947e47f19dc1526f34b96a4

Reland: Fire events on relation sources by dtseng@chromium.org
https://chromium.googlesource.com/chromium/src/+/ef6b480df5da00a479da222bb801596168a9c510

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

Comment 8 by bugdroid1@chromium.org, Feb 28 2018

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

commit cb4c290c4d9c11429d92403e239caebfff09cbc2
Author: Dominic Mazzoni <dmazzoni@chromium.org>
Date: Wed Feb 28 08:18:38 2018

Fix performance regression in AXEventGenerator

The reverse relation maps are maps from each attribute, to
a map from destination id to a set of source ids, like this:

  map<attr, map<int, set<int>>>

AXEventGenerator::FireRelationSourceEvents used const auto
in two places where it should have used const auto&, resulting
in making two temporary copies of every entry in the map for
each node in the tree.

Tested manually using chrome://tracing. Without
FireRelationSourceEvents at all, loading one Wikipedia page
took ~100 ms. With FireRelationSourceEvents, it took 28,000 ms.
With this fix it took ~115 ms, so FireRelationSourceEvents is
now adding just a small, acceptable amount of overhead. We could
optimize it further if needed.

Bug:  817133 
Change-Id: Ib02968593ed5c9533fb72adae4eba32faea3e61f
Reviewed-on: https://chromium-review.googlesource.com/940815
Reviewed-by: David Tseng <dtseng@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#539757}
[modify] https://crrev.com/cb4c290c4d9c11429d92403e239caebfff09cbc2/ui/accessibility/ax_event_generator.cc

Comment 9 by dtseng@chromium.org, Feb 28 2018

Status: fixed (was: Assigned)
Cc: briander...@chromium.org
 Issue 813990  has been merged into this issue.
Cc: alexclarke@chromium.org
 Issue 814246  has been merged into this issue.
Issue 814750 has been merged into this issue.

Sign in to add a comment