Open Bug 1340962 Opened 8 years ago Updated 2 years ago

Firefox is extremely slower than Chrome on Alchemy.js demo

Categories

(Core :: Graphics: Layers, defect)

x86
Windows 10
defect

Tracking

()

Tracking Status
firefox54 --- affected

People

(Reporter: alice0775, Assigned: jnicol)

References

()

Details

(4 keywords)

Attachments

(1 file)

Attached file about:suppot (deleted) —
When I test Bug Bug 1340117, I notice the problem. Steps to reproduce: 1. Open http://graphalchemist.github.io/Alchemy/#/examples 2. Clicking on the "Philosophers' Relatedness" Actual Results: The rendering is extremely slow. Firefox is almost unusable. The response of the UI is bad even if enabled e10s. Windows10 becomes bad response. Expected results: Chrome works fine. Edge is slow but much better than Firefox. Gecko profiler: https://perfht.ml/2kYjUe3
ni per comment 1.
Flags: needinfo?(alice0775)
(In reply to Ekanan Ketunuti from comment #2) > ni per comment 1. seems nothing improved. https://hg.mozilla.org/mozilla-central/rev/201231223cd4354a450c3e5d80959f35b8e4cf0c Mozilla/5.0 (Windows NT 10.0; WOW64; rv:55.0) Gecko/20100101 Firefox/55.0 ID:20170322030208 Browser eats up CPU.
Flags: needinfo?(alice0775)
I see the about:support, but I can't tell what kind of system this is - a laptop or a desktop? I'm not seeing the problem as drastic as you describe on a Dell XPS. Perhaps the site changed, as I don't see the problem on nightly or beta. Also, it could be JS.
There are 2 reasons why the rendering here is slow. 1) A regression from bug 1339578. The intention for that was to prevent small transient active layers from causing other larger items to change layers. It has backfired here - some of the nodes (circle + text) are small so we don't give them an active layer, and they share layers with other nodes. But as the are moving relative to eachother the sizes of these layers keeps changing so there is lots of allocations and repainting. Clearly in this case we want them all to be active. We need to take in to account some heuristic on how long the animation will be, we can probably expose this from ActiveLayerTracker based on the activity count. 2) The paths between the nodes keep changing, because the nodes are moving. I can't think of any way of making this faster. There is also a very long time spent in scripts, I think doing the restyling. I don't know anything about how to make that faster.
Assignee: nobody → jnicol
Mass bug change to replace various 'parity' whiteboard flags with the new canonical keywords. (See bug 1443764 comment 13.)
Whiteboard: [DUPEME],[parity-Chrome][parity-Edge] → [DUPEME],
Whiteboard: [DUPEME], → [DUPEME]
Keywords: dupeme
Whiteboard: [DUPEME]
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: