And here we are with another Firefox Performance Update!
This performance update is brought to you by perf.html! perf.html is our web-based profile analysis tool. We use it to analyze profiles gathered with the Gecko Profiler Add-on which helps us figure out why Firefox is feeling slow or sluggish. It’s probably the most important performance tool in our toolbox.
Before we go into the list – have you seen any patches landing that should positively impact Firefox’s performance? Let me know about it so I can include it in the list, and give appropriate shout-outs to all of the great work going on! That link again!
And now, without further ado, our list of excellent performance work:
(🌟 indicates a volunteer contributor)
- 🌟 Oriol Brufau optimized the tabs WebExtension API for users that have many tabs open!
- This happened a while back, but I thought it was worth mentioning: Andrea Marchesini made it so that profile deletion in about:profiles occurs off of the main thread
- Steve Fink made our cycle-collector operations cheaper in some situations
- Dão Gottwald got rid of a potential style flush when opening new windows
- Kris Maglione made the PageAction WebExtension API much cheaper to use
- Marco Bonardo got rid of some potential main-thread IO by getting rid of mimeTypes.rdf
- Jonathan Kew made it take less CPU to scroll the newsfeed on Facebook on macOS
- Mark Banner extended our asynchronous Places API, which should hopefully make it easier to move more Places operations off of the main thread
- Hiroyuki Ikezoe made it so that we can throttle down more hidden animations, which should help reduce CPU usage on pages like Reddit (which, for some users, has a hidden animation running in a collapsed chat popup)
- Florian Quèze got us some nice sessionrestore Talos benchmark wins on Linux after refactoring how the first browser window is opened
- Rob Wood re-enabled Nightly Talos jobs on Windows. This should make it easier for us to hunt down the causes of Talos regressions.
- Doug Thayer made our BHR data for tab switch hangs actually useful. He’s also making the BHR dashboard much easier and faster to use!
- Ludovic Hirlimann combined some scripts to reduce the number of files that we have to load during start-up
Thanks to all of you! Keep it coming!