12 ms·
Firefox: Performance in Progress
- edoceo 5y agoI super excited for any new FF stuff but this one mentions a lot of Windows focused (and some Mobile) - I'm over here on Linux where I've still got loads of pages that just lag. Hoping for some multi-platform JS updated soon-ish. Side note: anyone know of any meaningful updates to Servo? Is dead? It had so much promise (IMO)
- lu4p 5y agoServo is mostly dead the team got laid off
- rickstanley 5y agoReally? Bummer. I hope the community keep a steady pace at development and don't let it die. Having another engine competing with the "titans" of the current web would bring so much benefit (I think and hope so). The "recent" event[0] with Chrome dev team scared me; they have so much power to change things "at will". [0]: https://news.ycombinator.com/item?id=28055160 https://news.ycombinator.com/item?id=28055160
- roca 5y agoServo is not and never will be a competitive browser engine. Gecko is that engine competing with the titans.
- happy-dude 5y agoServo was never meant to be a full engine replacement for mainline Firefox; whatever Rust code could be implemented/useful for Firefox was ported already. However, regarding Servo specifically, there are contributions on their GitHub[1] and the stewardship of the project is now under the Linux Foundation[2]. [1] https://github.com/servo/servo/commits/master https://github.com/servo/servo/commits/master [2] https://blog.servo.org/2020/11/17/servo-home/ https://blog.servo.org/2020/11/17/servo-home/
- azakai 5y ago> Servo was never meant to be a full engine replacement for mainline Firefox I don't think that's a fair summary of the history. There were multiple points of view on this inside Mozilla, and some (including myself) definitely hoped it would be a full engine replacement.
- lucgommans 5y agoSpeaking of Firefox performance, does anyone know what introduces pauses in page loading? A page of 900 bytes HTML, with 2 KB of CSS and a 33 KB background image, takes 918 ms to load. Only a third of that is network stuff (DNS resolving, TLS setup, etc.; adding up the 'duration' values). Screenshot of page with loading graph: https://i.snipboard.io/AcqWb4.jpg https://i.snipboard.io/AcqWb4.jpg Notice the huge gap between HTML loaded and starting to load CSS, for example, where it does not appear to be doing or waiting for anything. Seeing the title and initially glancing at the drawing where it says "reading XUL.dll" I thought they addressed this, as I noticed this problem a while ago and I figured it was something about this multi-process browser experience having to load everything anew or constantly do inter-process communication, but the post is actually about various other performance issues. Does anyone know what's up with this one? Just to be clear, I'm not saying Firefox is slower than browser X or anything. I just happen to notice this in Firefox because I'm a Firefox user.
- tech-no-logical 5y agoI have no idea what causes it for you, but I see this : https://i.imgur.com/KEWYqIW.png https://i.imgur.com/KEWYqIW.png (ff 91.0)
- lucgommans 5y agoWhich OS is that on? Mine was on Linux, perhaps that makes a difference. Also I have a rather crappy cpu (i5-8250U); for you I still see the gaps even if they're smaller (both in absolute terms but if I'm seeing it correctly also in proportion to network loading time), so perhaps a faster cpu helps as well.
- deleted 5y ago[deleted]
- tux3 5y agoI have FF 91 on Linux and mine takes ~200ms: https://i.imgur.com/EzdLYXb.jpg https://i.imgur.com/EzdLYXb.jpg This is with uBlock, HTTPs Everywhere, "I don't care about Cookies", Greasemonkey, etc etc I have a 1700x, so a bit faster than your 8250U, but released the same year.
- aspartate 5y agoMeanwhile I feel like on my Linux laptop Firefox has only been getting slower and slower every year. Perhaps the fact that I'm using a GeForce as my primary GPU can have something to do with it? I read it causes some problems with WebRender. Anyway it's sad to see Chromium being way snappier on my machine, I have to use it for meetings because just after a couple minutes audio in FF starts to stutter intolerably.
- Saris 5y agoMake sure HW acceleration is working, I've noticed firefox on linux seems to have it disabled more often than it should.
- arp242 5y agoSome time ago I removed a whole bunch of packages from my system I hadn't used in a long while, and turned out I also accidentally removed the "pciutils" package which turns out to be a runtime dependency for Firefox's hardware support. Without it, regular things were significantly slower, especially if images were involved, even on simpler sites. Just installing pciutils again instantly made a huge difference.
- TingPing 5y agoQuite a few of Firefox's recent gpu changes do require Wayland and open drivers. Nvidia might get whitelisted at some point.
- vehemenz 5y agoI'm not sure when it happened, but in the past few months I started noticing slower responsiveness in Chrome. Which is weird, because historically that was the type of thing I tolerated in Firefox. It looks like Firefox is the new speed champ on MacOS, at least among serious browsers. If Safari's WebExtension ecosystem actually progresses with Safari 15, that may be worth another shot, too.
- the_jeremy 5y agoI have the opposite behavior on my macbook pro - Chrome can handle videos at 2x speed just fine, but Firefox will stutter or go sound-only for a few seconds if it heats up at all.
- kibwen 5y agoOn my Macbook, bizarrely, it's Safari that freaks out when watching videos at 2x speed, whereas Firefox handles them fine.
- Tagbert 5y agoVideo handle really varies depending on how it was encoded and whether there is a hardware decoder available or not. YouTube is highly tuned to work well with Chrome and vis versa.
- cwizou 5y agoIt's definitely not slow on macOS but for some reason the UI font just looks wrong to me on macOS and I can't quite put my finger on it. The font doesn't look system (maybe it is), and every element is a tad too small. Spacing between letters is also more cramped that on every other macOS app. I know doing cross OS development is hard but to me this is what's stopping me to move full time from Safari to Firefox on mac, the UI font just looks wrong (despite all the things I don't like in Safari like not having uBlock Origin and having to rely on a subpar extension with an app, or the terrible new Monterey UI).
- Antrikshy 5y ago
- robertoandred 5y agoBased on their cartoon, looks like the problem is Windows' weird way of conflating applications and application windows.
- floatingatoll 5y agoCould you talk more about that way?
- robertoandred 5y agoIf you open an application when it's already open, Windows creates a whole new instance of the application instead of just switching to the already-open application.
- floatingatoll 5y agoWhat?! That explains a lot.
- trog 5y ago> If you open an application when it's already open, Windows creates a whole new instance of the application instead of just switching to the already-open application. This can be handled by the application though. VLC for example has an option ("Allow only one instance") so that it will only let you, uh, open one instance at a time - if you try to open VLC again while there's a Window already open it just (IIRC) sets focus to the existing window. I think Firefox opening a new window is an intentional design decision.
- rossy 5y agoI don't think that's what's going on here. I'm pretty sure they're measuring the performance of the first window opened. A lot of Windows applications, Firefox included, do single-instance manually by opening an IPC connection to the old instance and telling it to open a new window. Also, DLLs in Windows are only loaded from disk into memory once. If XUL.dll is already in memory from another instance of the application, it won't be read from disk again. (It won't even get rebased for ASLR again.) Kind of baffling to hear multiple application instances described as "weird," though. I guess that might be the case from a Mac perspective. Having a separate process per application window is fairly standard in Windows and desktop Linux. It gives you a simpler programming model, since per-window things can be global or singletons, and you can always terminate the process when the user presses the close button, rather than having to check for other windows. It also makes you more robust to application crashes, since only one window will crash.
- wnevets 5y agoI'm the opposite of someone who keeps tons of tabs open, I'm constantly closing and reopening the browser through out the day. One of main reasons why I started using Chrome in the first place all of those years ago was the start up speed. I know Firefox is much better today at this in the past but any improvement would help me switch full time to FireFox.
- SimeVidas 5y agoOn my MacBook Pro, from the moment I launch Edge, it takes 10 seconds for the window to appear. Sounds like Microsoft could use this optimization.
- godelski 5y agoI turn my computer off frequently and FF launches instantly when I open it. Just as fast as any other program (and I'm a tab hoarder). Though the number one reason I have FF instead of Chrome is that FF Mobile allows ad blocking. So I can have ad blocking across my browsers, send tabs, and keep consistent plugins. The anti-tracking and privacy features are also a great plus.
- starik36 5y agoThat is precisely the reason I switched back to Firefox after all those Chrome years. The Firefox startup is pretty much instant. Chrome starts fast as well, but there is a moment, when it's just a blank window that I can't do anything with. Firefox opens instantly to a usable window with the cursor blinking on the address bar.
- systems 5y agofirefox needs a better support forum i like firefox a lot, more philosophically .. independent, open source, rust anyway, a while ago, firefox starting crashing on me like crazy and tried to get support from there https://support.mozilla.org/en-US/questions/ https://support.mozilla.org/en-US/questions/ but after a while i just gave up, they need to setup a discourse forum or something, some place more interactive
- causality0 5y agoI wish Mozilla spent ten percent as much time un-fucking their old features as they do coming up with new ones. Firefox Mobile still doesn't have a user agent switcher. The "tab closed" popup still blocks you from opening the next tab. There's still no option for moving the New Tab button to the top of the screen.
- taeric 5y agoThat "tab closed" pop-up is maddening. I've mainly assumed I was just doing it wrong, it is so bad.
- temp0826 5y agoDoes "request desktop site" not change the user agent?
- rickstanley 5y agoIt does change but it only removes the "mobile" part from user agent (through sniffing). But I think he's referring to a broader usage, for instance: MS Teams only works on Chromium-based browsers and Safari, so user agent change façade comes in handy for this.
- causality0 5y agoNot fully. It requests a desktop layout but sites still know you're on a mobile browser, hence sites that explicitly block mobile browsers will show the same "this page only viewable on desktop" message. Actual user agent switcher extensions don't have that problem.
- floatingatoll 5y ago“Tab closed” popup?
- deadbunny 5y agoOn Android.
- 5y ago
- c7DJTLrn 5y agoI remember years ago when Firefox Quantum boasted of lofty performance improvements only to get pummelled in just about every benchmark against Chrome. I still check out Phoronix's benchmarks now and again and Firefox is consistently behind. Make whatever excuses you will, but the numbers don't lie.
- dblohm7 5y agoYou're putting way too much emphasis on benchmarks vs real-world usage, IMHO.
- hfjtbtbfjfj 5y agoI use highly interactive websites, like bitcoin exchanges. They work terribly in Firefox. I don't know if it's because Firefox is slow, or if because devs don't test in Firefox. Either way, even if Firefox is my main browser, I learned that I need to use these sites only in Chrome. YouTube and most other video sites also are very slow in Firefox and many times the other sites don't work at all, video doesn't start, ...
- dralley 5y ago>YouTube and most other video sites also are very slow in Firefox Is Google still using that non-standard virtual DOM API that only works on Chrome, and gets polyfilled on every other browser engine? Some decisions they've made are just blatantly anti-competitive.
- arp242 5y agoThis came up a few days ago as well, I and many other people have zero problems with YouTube on Firefox. So dunno why some people report that it's atrociously slow.
- dblohm7 5y agoThat's fair, however there is no guarantee that JS is the issue there. (And for anybody interested in actually helping to diagnose and report these issues: https://profiler.firefox.com https://profiler.firefox.com)
- the_duke 5y agoI switched back to Firefox from Chrome a few years ago after their Quantum efforts landed. Both to get out of the Google trap, and because it was clearly the fastest browser for common use, except on certain Javascript heavy pages. But over the last year or so, performance has continually degraded to the point were I'm upset and resort to Chrome more often (Ungoogled Chromium [1], to be precise). I guess Specter mitigations and site process isolation might be related, but this does not make me happy... (this is on Linux/Wayland) [1] https://github.com/Eloston/ungoogled-chromium https://github.com/Eloston/ungoogled-chromium
- roca 5y agoMaybe there's something wrong with the Firefox install on your system. On my Linux laptop it keeps getting faster.
- deleted 5y ago[deleted]
- ajnin 5y agoThese are some good changes. Perceived performance is very important for a program you use many times per day. One of my long time complaints is that with Chrome, when I want to search for something I'll often ctrl-N to open a new window and then type my query. Even if it takes a little bit of time to show the window my query will be right there in the search bar. With Firefox, those keystrokes are lost. I hope this fixes that.
- nyanpasu64 5y agoFor as long as I can remember, Firefox has always been janky and slower than Chrome at moving tabs in and out of windows. Dragging a tab doesn't always create a new window, sometimes it acts as bookmarking if I drag it into the tab bar, sometimes (on Linux) it acts as drag-dropping the tab into another app like Discord and fails to open a window. Dragging a tab out of a window doesn't create a new window until you release the mouse, so it feels unresponsive, and you don't know whether you'll get a bookmark or tab or nothing at all. And dragging the last tab out of an empty window doesn't close the window to allow me to see what windows lie underneath. And in the past (not sure now) I've noticed that dragging a tab a few pixels downwards would create a new window, when I meant to click or reorder a tab.
- arp242 5y ago> And in the past (not sure now) I've noticed that dragging a tab a few pixels downwards would create a new window, when I meant to click or reorder a tab. I've had this problem for a long time as well; it's very hard to reliably reproduce too. I ended up finding some about:config setting to just disable this entire feature, and my life has been better since.
- jimbob45 5y agoThe first one is embarrassingly stupid. The real solution is a splash screen, which was invented decades ago. Instead, they just lie to you with a non-functional window rather than lying to you by pretending that your system is doing nothing. Moved back to Chrome today btw. Couldn’t handle YouTube full screen taking 10 seconds to expand and collapse on Firefox. Sure wish Mozilla would hire some competent devs.
- kibwen 5y ago> Instead, they just lie to you with a non-functional window rather than lying to you by pretending that your system is doing nothing. > Moved back to Chrome today btw. I find this amusing, as Chrome was the pioneer of this trick.
- nickstinemates 5y agoWhat kind of hardware are you running that it takes 10 seconds to do a video full screen? Genuinely curious. My low powered raspberrypi running at 1080p does better than that.
- ohgodplsno 5y ago>Moved back to Chrome today btw. Couldn’t handle YouTube full screen taking 10 seconds to expand and collapse on Firefox. Sure wish Mozilla would hire some competent devs. Right, don't blame Google that purposefully slows down Firefox on half their websites.
- cycomanic 5y agoYou're kidding me! Splash screens are the worst solution for this (actually for anything). 1. They often sit on top of everything so I can't continue working on another document for example when opening a large application (I often open apps but continue working on something else) 2. The mess up window management, because the don't have the window class and name of the main app. So when I set window management rules, I have to set an additional on just for the splash screen (made more difficult because it's only there temporarily). 3. The only information they provide is that the app is starting. Well yes I just opened it. Better show an empty window, at least that avoids 1 and 2.
- 5y ago
- vzaliva 5y agoSince I switched to Firefox I have to restart it every 3 days as it gets slow. All debugging suggestions start with "disable all plugins." But this is not practical. We practically live in our browsers nowadays. Without my ad blocker, password manager, and grammar checker I will be severely handicaped. I wish there is a way to debug the situation without resorting to disabling plugins. Perhaps have access to some per-plugin metrics.
- lamontcg 5y agoFor me that seems to be new behavior. I used to be able to keep it open for weeks without issue, but within the past month or two I've started having to restart it all the time (MacOS).
- spartanatreyu 5y agoIf you're using "ublock origin" as your ad blocker, then it'd have to be your password manager or grammer checker plugins slowing you down. Either that, or you're keeping a page up that has a memory leak so it wouldn't matter which browser your using. Does it go back to it's old speed if you open a blank page then close all other tabs and wait 10 seconds?
- drran 5y agoLook for the problem at `about:performance` page.
- alphabet9000 5y agowish they would let users completely disable checking for updates. and get rid of only allowing 'signed' extensions. my guess is that will never ever happen
- elktea 5y agofor some reason I thought XUL was dead and gone, with the UI now coded in html and js - wonder if they can further improve loading by removing XUL in the futre
- dreamcompiler 5y agoExactly my first thought. For the last few years Mozilla has been beating the "XUL is dead" drum. What's up with this?
- TingPing 5y agoIt is dead, just slow to rewrite everything.
- up6w6 5y agoAs someone that doesn't have last generation hardware, the performance still matters - I really hope they did it this time. Cool benchmarks: https://arewefastyet.com https://arewefastyet.com
- nyanpasu64 5y ago> Previously, when a Firefox user encountered a page that had a script that ran over a certain timing threshold, you would see a warning message that looked as follows: I'd appreciate if the "Stop It" button actually worked, instead of the page and JS engine remaining hung for several seconds afterwards.
- tnzk 5y agoI don't know if it is related to this article, but a month or two ago, I found screen sharing with WebRTC (specifically getDisplayMedia) on Firefox have been suddenly notably improved. I read through release notes at that time but there seemed no changes around it, except improvements for WebRender on Linux (whereas I and my colleague use FF on Mac). If one of the contributors named in the article involved in it, I appreciate greatly since it significantly improved our remote-work environment.
- dartharva 5y agoI'll shift to Firefox in a heartbeat if they fix their horrendous font rendering on Windows.
- godshatter 5y agoWhen I was reading this, and the author mentioned XUL.dll taking a long time to load I was assuming the blog would veer into a discussion about what can be done to refactor that code to make XUL.dll smaller. Can it be broken into separate DLLs, with the core portions loaded first? Is there a better design that could be used? But, no, their solution was to show the windows soonest. That's nice, I guess, but it didn't solve the problem. It just solved the user's perception of the problem. It actually increases the load time, so now you have an unusable window for a longer period of time. That's one of my pet peeves - don't give me an interface until you're ready for me to start clicking on things.
- WorldMaker 5y agoXUL is the name of Mozilla's old UI language [1]. They've been in the long process of moving UI pieces from XUL into HTML5 (such that the Browser's UI controls use the same renderer as the Browser's contents). One key piece of that was disabling the ability for extensions to use XUL a while back that caused a lot of churn in Firefox extensions. The impression from that is that they want to entirely get rid of XUL.dll at some point in the future. [1] https://en.wikipedia.org/wiki/XUL https://en.wikipedia.org/wiki/XUL
- wolpoli 5y agoI was actually surprised that the author didn't try to solve this by preloading Firefox on start up.
- crawsome 5y agoThey ignore the crap UX changes over the last months, like spacing out the bookmarks in your folders. WTF were they thinking?
- naikus 5y agoOver the past iterations of Firefox (mobile), especially since they launched their new UI, I've noticed the performance of features such as CSS animations, etc. have particularly degraded. I have two versions on my Moto X4, Firefox 68 and the new Firefox 92. I use both to test some of the web apps I develop and to my surprise the older version of Firefox performs much better! There's a noticeable jank on the web app (transitions, animations, etc.) on the newer version. The browser itself is much slower than the older Firefox 68. Frankly I don't see any performance improvement.