Firefox: Performance in Progress
blog.mozilla.org
blog.mozilla.org
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.
(ff 91.0)
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.
Edit: my bad, I meant to say about:performance.
$ head -n-0 ~/bin/firefox-tmp-profile
#!/bin/sh
# Workaround for missing feature:
# https://bugzilla.mozilla.org/show_bug.cgi?id=1604376
set -e
dir="$(mktemp --tmpdir --directory firefox-tmp-profile-XXXXXXXX)"
cleanup () { rm --recursive --force "$dir"; }
trap cleanup EXIT
firefox -no-remote -profile "$dir" "$@" || trueI think it's that background pattern and Firefox might be lying to you, or at least in Chrome the pattern is what eats up all the rendering time.
My best guess is that there is some extension involved that takes a long time to process attempted fetches and decide whether to allow them or not.... It would be interesting if the timeline included "we are ready to go fetch this and waiting on extensions to make up their mind" bits.
There are similar loading delay issues as you describe when uBO has to resolve DNS names if you are behind a proxy.
Which in turn, links to this for background information https://www.theregister.com/2021/02/24/dns_cname_tracking/
It can literally tell you what can go wrong inside the whole Firefox architecture (Includes network, webtension, firefox internals, page scripts and so on).
My personal guess about it is about extensions, did you retry it again in safe mode?
And if you suspect it is a issue in firefox itself, you can upload the profile and open a bug at https://bugzilla.mozilla.org/home , so someone more familiar with Firefox can investigate it.
Side note: anyone know of any meaningful updates to Servo? Is dead? It had so much promise (IMO)
The "recent" event[0] with Chrome dev team scared me; they have so much power to change things "at will".
Gecko is that engine competing with the titans.
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 [2] https://blog.servo.org/2020/11/17/servo-home/
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.
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 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).
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.
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.
The impression from that is that they want to entirely get rid of XUL.dll at some point in the future.
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.
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.
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)
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?
I have the following add-ons installed: Decentraleyes, HTTPS Everywhere, Privacy badger, and uBlock Origin.
Running a Nokia 6.1 for reference. Not super powerful, reasonably old, but not bottom of the barrel.
I have tried disabling all add-ons but I still get the bug as described.
Which reminds me of my second gripe, having tabs refresh after switching apps then back to FF. Super frustrating, especially if it's a login flow or filling in a form.
I particularly love the suggestion to use https://ideas.mozilla.org/ to submit feedback, as if that change went through the same procedure, and as if they didn't moderate away any suggestion that they don't like.
And yet they still don't realize that this "we know better than the users what's good for them" attitude is killing their product.
They could've kept ten percent forever if they didn't forsake the things that made Firefox great in the first place and the people who loved them for it. Now they've thrown that away and along with it any chance to avoid irrelevancy and extinction.
You can find multiple people who would describe anything as broken. I'm several dozen comments into that thread and I still haven't found a single person even attempting to explain why the old functionality is needed beyond "I don't like using my `?` and `Ctrl-K` keys", which Mozilla absolutely should not have dignified with as much time as they gave it.
The person arguing that the entire search box should just be removed if it isn't actually any new functionality has a point, but that's somewhat tangential to the "bug" they're describing.
Whether using ^K or ? is better or worse is entirely besides the point.
Normal yes, reasonable no. It's a problem that solves itself extremely quickly if you just learn to accept it. It's mildly annoying for a few days and that's it. Sure, let's not go breaking muscle memory willy-nilly just for the sake of it, but you can also go too far in the other direction: https://xkcd.com/1172/
In this case there's no downside at all beyond "I hate change", and opening a bug report is way more effort than just getting used to that.
I think the main problem is that Mozilla consistently underestimates just how much people hate it when their software changes behaviour in surprising ways, and also how little control they give to users over these kind of changes.
I can't speak for putting the new tab button to the top, but I was asked if I want the URL bar at the bottom or top when installing Firefox for the first time. For me having the controls at the bottom is one of the killer features, because I can just use my thumb to do things.
I'd appreciate if the "Stop It" button actually worked, instead of the page and JS engine remaining hung for several seconds afterwards.
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.
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.
Cool benchmarks: https://arewefastyet.com
If one of the contributors named in the article involved in it, I appreciate greatly since it significantly improved our remote-work environment.
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.
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/
but after a while i just gave up, they need to setup a discourse forum or something, some place more interactive
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, ...
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.
(And for anybody interested in actually helping to diagnose and report these issues: https://profiler.firefox.com)
And of course there's no way to even ask Chrome to render images with a decent resampling filter...
Unfortunately corporates seem to be ignoring Firefox entirely - last 2 companies I worked at, their webapp worked only in Chrome. So I'm forced to use Chrome (or Chrome-ish browsers like Brave) also on a daily basis.
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.
> Moved back to Chrome today btw.
I find this amusing, as Chrome was the pioneer of this trick.
Genuinely curious. My low powered raspberrypi running at 1080p does better than that.
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.
Right, don't blame Google that purposefully slows down Firefox on half their websites.
Slash screens, on the other hand, are basically just useless and don't add anything beyond an indication of "the app is loading", but the hourglass mouse cursor (or whatever it is on Windows these days) tells you that already.