Closed Bug 1157842 Opened 11 years ago Closed 7 years ago

Reproducible performance-impacting testcase.

Categories

(Core :: CSS Parsing and Computation, defect)

defect
Not set
normal

Tracking

()

RESOLVED INCOMPLETE

People

(Reporter: mhoye, Unassigned)

Details

Attachments

(1 file)

I can reliably crush Nighty's performance by taking the following steps: In one tab: http://www.slideshare.net/misterbisson/2015-0422-seascale In three or four other tabs, any random MDN pages. They need to be available, what's in them doesn't matter. On the slideshow in the first tab: click next really quickly 20-30 times in a row. Doesn't need to be an exact number but you need to get ahead of the in-slideshow pinwheel. Next, try to switch tabs between the MDN tabs rapidly several times in succession. The browser will immediately go into the ditch on my machine; slow to respond, several seconds to change tabs, very, very laggy. After about a minute or so, the console will show one or more of these: Handler function threw an exception: [Exception... "Component returned failure code: 0x80004002 (NS_NOINTERFACE) [nsIWebProgress.DOMWindow]" nsresult: "0x80004002 (NS_NOINTERFACE)" location: "JS frame :: resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js :: TabActor.prototype._docShellsToWindows/< :: line 1071" data: no] Stack: TabActor.prototype._docShellsToWindows/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:1071:11 TabActor.prototype._docShellsToWindows@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:1068:1 TabActor.prototype._notifyDocShellsUpdate@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:1094:19 TabActor.prototype._onDocShellCreated/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:1046:7 makeInfallible/<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/DevToolsUtils.js:82:14 Line: 1071, column: 0 and subjective performance seems to come back, mostly. I can reproduce this at will; subjectively, if I do that dance again in the same session, it seems to get much worse. This is today's Nightly, current OSX, retina MBP with two screens and E10S disabled.
Olli was just telling me how much he likes profiling.
Flags: needinfo?(bugs)
sampling from Activity Monitor at bz's request
Here's a profile: http://people.mozilla.org/~bgirard/cleopatra/#report=463afb0e5e18e077fe5a737d2cc123d661520e13&selection=0,660,2,25,4,771 If I'm reading this right, every time we change the slide we're causing a reflow.
Needs a profile with stack information. Trying to reproduce.
Can't. mconley, could you perhaps provide a new profile if this is still reproduceable.
Flags: needinfo?(bugs) → needinfo?(mconley)
Sorry, never got to analyze the profile, but as of today, the behavior seems to be fine. Please reopen if needed.
Status: NEW → RESOLVED
Closed: 7 years ago
Flags: needinfo?(bugs)
Resolution: --- → INCOMPLETE
https://perfht.ml/2BeBNzS Whatever there is, is stylo dealing with querySelectorAll calls.
Component: DOM → CSS Parsing and Computation
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: