Defaulting to AVX for 64-bit architectures?

Talk about code development, features, specific bugs, enhancements, patches, and similar things.
Forum rules
Please keep everything here strictly on-topic.
This board is meant for Pale Moon source code development related subjects only like code snippets, patches, specific bugs, git, the repositories, etc.

This is not for tech support! Please do not post tech support questions in the "Development" board!
Please make sure not to use this board for support questions. Please post issues with specific websites, extensions, etc. in the relevant boards for those topics.

Please keep things on-topic as this forum will be used for reference for Pale Moon development. Expect topics that aren't relevant as such to be moved or deleted.

What instruction set should be the minimum for Pale Moon going forward?

Poll ended at 2024-03-09, 15:33

Keep it as-is (SSE2 or later)
18
33%
AVX (Bulldozer/AMD FX/Intel Sandy Bridge)
19
35%
AVX2 (Excavator/Zen/Haswell/Core i3/5/7)
15
27%
Just show me the results
3
5%
 
Total votes: 55

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 38382
Joined: 2011-08-28, 17:27
Location: Motala, SE

Re: Defaulting to AVX for 64-bit architectures?

Post by Moonchild » 2024-03-04, 17:43

Eduardolucas1 wrote:
2024-03-04, 17:15
these OSes are incompatible with linux or BSD ABIs and kernel calls and linux builds provided by the community would not be a solution.
not sure what OSes you are talking about in that case but it sounds like you are already on a contributed build in that case, meaning it would be up to the maintainer of that contributed build to make things happen.
andyprough wrote:
2024-03-04, 17:23
Us GNU/Linux users have already been on this basic scheme for awhile
...
I haven't heard any big complaints, we make it work just fine.
That's great news! Like I said I'm fairly confident our community can make this work and I'm happy to hear it's already been sort-of the case for you.
"There is no point in arguing with an idiot, because then you're both idiots." - Anonymous
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

Potkeny
Fanatic
Fanatic
Posts: 153
Joined: 2018-08-03, 17:00

Re: Defaulting to AVX for 64-bit architectures?

Post by Potkeny » 2024-03-04, 18:52

athenian200 wrote:
2024-03-04, 16:13
The main problem I see is that 32-bit is limited to 4GB of RAM, modern web pages barely work with 4GB of RAM, and we have memory leaks on top of it. I don't think anyone can realistically browse the web in 2024 on a machine with less than 8GB of RAM. The days of web browsing being a lightweight thing that's easy on RAM are over. I think a good argument could be made that Pale Moon should be 64-bit only because it is single-process and therefore needs the additional address space in a way other browsers don't.
Off-topic:
My amd laptop has less than 8 GB RAM, it uses some of it for gpu, thus reporting around 7GB. It's not too old, so I can use the AVX2 build on win10.

Due to daily-use of sites which require chromeism, I frequently have Vivaldi + PM + electron "app" running, and its usable. It might not be as fast as my desktop, YT might take 10 seconds to be usable even in chromium-world, but for the usual heavy websites its okay, so I would say that 6 GB is enough today for the web.

I suspect 32bit browser on 64bit OS with 6GB RAM might be usable too, or on a more lightweight OS maybe even 4GB could work with some tradeoffs for number of non-suspended tabs and other "apps" running, but I don't have experience with that.


It feels like making 64bit AVX and leaving 32bit as now could be a compromise, though I am already on AVX2 so I don't have to change release-channels.

User avatar
athenian200
Contributing developer
Contributing developer
Posts: 1619
Joined: 2018-10-28, 19:56
Location: Georgia

Re: Defaulting to AVX for 64-bit architectures?

Post by athenian200 » 2024-03-04, 19:46

Moonchild wrote:
2024-03-04, 17:06
I'm well-aware of that. At the same time, I hardly ever see my Pale Moon browser use more than 2 GB of RAM, even with heavy use. Then again I do use suspender to suspend idle tabs...
I'm assuming then that a good portion of users would need more than 4GB for the application, going by your assumptions.

So, this would mean, overall:
  • If we want to satisfy plugin users, we'd need to maintain 32-bit.
  • If we want to satisfy people on old (or otherwise severely crippled) hardware that do make heavy use of Pale Moon, we'd need to maintain 64-bit SSE2.
  • If we want to satisfy people's needs for a performant browser, especially in heavy use scenarios, we'd need to move to using AVX.
Yeah, exactly. There's not an easy answer here. Ultimately, it's a matter of deciding who exactly we can afford to disappoint most/least. Plugin users? People on netbooks or 15 year old hardware? People who want a faster browser?
The reality is that we cannot maintain every possible use case under the sun and go by lowest common denominator. We also don't have the resources or manpower to implement multiple code paths for every component in the browser. We don't gather telemetry so we don't know hard numbers. We also can't expect the average user to know whether they have an AVX capable CPU, so a broader survey would not necessarily provide reasonable numbers for us to use.
I agree with you on that.
Discontinue 64-bit SSE2, directing people on it to 32-bit. This would cause the above limitations and likely needs more restarts to deal with memory pressure.
I think discontinuing 64-bit SSE2 makes sense, don't get me wrong. The thing is, Linux doesn't have 32-bit builds, so if we recommend 32-bit as an alternative for non-AVX systems, Linux users will start clamoring for 32-bit builds again. So I'm picturing Windows users complaining about memory leaks and Linux users complaining that they don't have 32-bit builds to fall back on.
Add an AVX channel as a extra release channel, and somehow migrate all people on AVX capable systems to it, leaving others on SSE2 (potentially needs an AVX check in the internal updater and some risky code that needs to be thoroughly checked for function on a wide range of hardware). This adds a much bigger release burden on us for all platforms (2 extra builds on Linux, 1 on Windows, possibly more for Mac an BSD, also) and this would cause confusion among users not knowing "what version they need". I'm really, really not in favour of this.
This seems like the worst possible option, and precisely what I am hoping to avoid as well.
Discontinue 32-bit "too bad, so sad" and replace it with maintaining two 64-bit channels. This causes the same extra burden on upgrading and Linux/altarch builds and I feel like this 64-bit version would end up being like a shoved-under child. Similar confusion to the three-channel setup for end users. Consider not supporting NPAPI in mainline while we're at it, since there aren't really any practical use-cases for 64-bit plugins.
Yeah, now that I think about it, having two 64-bit channels would be very confusing, not useful to most people, and also force an earlier end to plugin support. People wouldn't know which build they need, and on top of it introduces exactly the same problem for Linux as reinstating 32-bit builds would... four builds instead of two, a GTK3 and GTK2 version of each. At this point it's kinda looking like we aren't going to get away with shifting 64-bit Linux to AVX without going back to doing four builds one way or the other. :/
Discontinue 32-bit and 64-bit SSE2, leaving us with just AVX. Let people choose contributed builds for 32-bit, SSE2 or other preferred configurations if they need it, and let contributors use the leniency in our redist license to build with official branding in those cases. More of a wild-west option but relieves release engineering pressure from us. I'm fairly confident our community can make this work, though.
I think that's not a bad option, though it is the one likely to generate the most backlash. I like the spirit of it, though.
Do nothing and have it be detrimental to 95%+ of users in terms of optimization. Almost everybody loses.
This would probably be the least controversial option in the short-term, though it is actually the worst option long-term.

Hmm... I do have another idea, though. What if we just move the 64-bit Windows builds over to AVX, but leave the official Linux builds as SSE2 because we don't want to reintroduce 32-bit or have two 64-bit builds? We tell Windows users on old hardware that they can either use 32-bit Pale Moon or move to Linux to keep getting SSE2 support on 64-bit? We also tell Linux users that if they want AVX they'll have to compile the browser themselves or use Windows. The way I see it, touching anything on Linux will put pressure on us to provide more builds, whereas I think on Windows we can just about get away with requiring AVX, but not AVX2, since the average Windows user has newer hardware than the average Linux user. Linux users tend to keep their hardware longer on average, and we already don't support ancient Windows. The way I see it, most Linux users on pre-AVX systems would be the ones least able to build Pale Moon themselves, whereas any Linux user on an AVX or later system likely has enough horsepower to compile Pale Moon in a couple of hours at most.
"The Athenians, however, represent the unity of these opposites; in them, mind or spirit has emerged from the Theban subjectivity without losing itself in the Spartan objectivity of ethical life. With the Athenians, the rights of the State and of the individual found as perfect a union as was possible at all at the level of the Greek spirit." -- Hegel's philosophy of Mind

User avatar
Pentium4User
Board Warrior
Board Warrior
Posts: 1329
Joined: 2019-04-24, 09:38

Re: Defaulting to AVX for 64-bit architectures?

Post by Pentium4User » 2024-03-04, 20:02

Why not phasing out GTK2 to community builds, so the PM release team will only release SSE2/3 and AVX for Linux.

Windows: Provide AVX with the note that only core i sandy bridge or newer is supported and provide SSE2/3 for others/unsure people while deprecating 32 bit and moving that to community too.
The profile picture shows my Maico EC30 E ceiling fan.

User avatar
andyprough
Board Warrior
Board Warrior
Posts: 1182
Joined: 2020-05-31, 04:33

Re: Defaulting to AVX for 64-bit architectures?

Post by andyprough » 2024-03-04, 20:09

athenian200 wrote:
2024-03-04, 19:46
We also tell Linux users that if they want AVX they'll have to compile the browser themselves or use Windows.
First of all, we already have AVX and AVX2 thanks to @Nuck-TH. I'm praying his efforts continue regardless of your decision.

Secondly, I cannot imagine anyone in their right mind moving to the nightmare that is Windows just to use a web browser. I would personally give up on the webernet and start browsing Gemini Space fulltime if that's the only option.

Eduardolucas1
Apollo supporter
Apollo supporter
Posts: 43
Joined: 2024-02-05, 03:15

Re: Defaulting to AVX for 64-bit architectures?

Post by Eduardolucas1 » 2024-03-04, 20:18

athenian200 wrote:
2024-03-04, 19:46

Hmm... I do have another idea, though. What if we just move the 64-bit Windows builds over to AVX, but leave the official Linux builds as SSE2 because we don't want to reintroduce 32-bit or have two 64-bit builds? We tell Windows users on old hardware that they can either use 32-bit Pale Moon or move to Linux to keep getting SSE2 support on 64-bit? We also tell Linux users that if they want AVX they'll have to compile the browser themselves or use Windows. The way I see it, touching anything on Linux will put pressure on us to provide more builds, whereas I think on Windows we can just about get away with requiring AVX, but not AVX2, since the average Windows user has newer hardware than the average Linux user. Linux users tend to keep their hardware longer on average, and we already don't support ancient Windows. The way I see it, most Linux users on pre-AVX systems would be the ones least able to build Pale Moon themselves, whereas any Linux user on an AVX or later system likely has enough horsepower to compile Pale Moon in a couple of hours at most.
I think this is the most wonderful idea i heard until now. I`m one of the pro-SSE2 persons who support this in full.

User avatar
athenian200
Contributing developer
Contributing developer
Posts: 1619
Joined: 2018-10-28, 19:56
Location: Georgia

Re: Defaulting to AVX for 64-bit architectures?

Post by athenian200 » 2024-03-04, 20:24

Pentium4User wrote:
2024-03-04, 20:02
Why not phasing out GTK2 to community builds, so the PM release team will only release SSE2/3 and AVX for Linux.
Hmm... they'd never go for that, but that gives me an idea... what if the GTK3 build were AVX, but the GTK2 build were SSE? That way, people on the newer technology get the optimizations. So it would look like this:

Windows: 64-bit AVX, or 32-bit SSE2.

Linux: 64-bit GTK3 AVX, or 64-bit GTK2 SSE2.

That seems to give everyone an option, though it does require a lot of compromise obviously...
andyprough wrote:
2024-03-04, 20:09
First of all, we already have AVX and AVX2 thanks to @Nuck-TH. I'm praying his efforts continue regardless of your decision.

Secondly, I cannot imagine anyone in their right mind moving to the nightmare that is Windows just to use a web browser. I would personally give up on the webernet and start browsing Gemini Space fulltime if that's the only option.
Right, I was talking about for official builds, assuming people don't trust third-party sources. Obviously it's great if someone if someone is willing to provide builds.

The idea is that if someone is on newer hardware and wants optimal performance but isn't good at self-compiling stuff, Linux might not be a good fit for them anyway and they might be happier on Windows. Whereas it seems safer to assume that a Linux user is either someone on older hardware who can't compile stuff themselves trying to extend the life of their machine, or someone on newer hardware who likes to compile stuff.

Nuck-TH's builds kind of give us the flexibility of not worrying about this too much, which is part of why I would rather maintain the status quo with Linux. Linux users are more likely to be able to find alternative builds like Nuck-TH's builds, or build themselves. He himself somewhat agrees that it might be a problem to break older hardware on mainline, at least from what I read. Windows users will generally want to stay with the official releases that are signed. You get what I'm trying to say, right?
"The Athenians, however, represent the unity of these opposites; in them, mind or spirit has emerged from the Theban subjectivity without losing itself in the Spartan objectivity of ethical life. With the Athenians, the rights of the State and of the individual found as perfect a union as was possible at all at the level of the Greek spirit." -- Hegel's philosophy of Mind

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 38382
Joined: 2011-08-28, 17:27
Location: Motala, SE

Re: Defaulting to AVX for 64-bit architectures?

Post by Moonchild » 2024-03-04, 20:57

athenian200 wrote:
2024-03-04, 19:46
Hmm... I do have another idea, though. What if we just move the 64-bit Windows builds over to AVX, but leave the official Linux builds as SSE2 because we don't want to reintroduce 32-bit or have two 64-bit builds? We tell Windows users on old hardware that they can either use 32-bit Pale Moon or move to Linux to keep getting SSE2 support on 64-bit? We also tell Linux users that if they want AVX they'll have to compile the browser themselves or use Windows.
Well, first off, asking users to switch OS just so they can use a certain optimization of their browser is never okay.
I have an issue with this otherwise though because I want our official builds to be uniform in what they require in terms of hardware specs as much as possible. Your suggestions are splintering this idea, and I don't like it because of that.
Pentium4User wrote:
2024-03-04, 20:02
The way I see it, most Linux users on pre-AVX systems would be the ones least able to build Pale Moon themselves, whereas any Linux user on an AVX or later system likely has enough horsepower to compile Pale Moon in a couple of hours at most.
Compiling Pale Moon really doesn't take that much time. It's not Chromium ;)
But I think you're missing the point here: it's not about whether people would be technically capable of compiling it. Our mainstream binaries are supplied exactly because the vast majority of people, regardless of O.S., don't want to build from source and jump through all the hoops to be able to (i.e. setting up a build-capable environment). They want to download-and-use.
athenian200 wrote:
2024-03-04, 20:24
what if the GTK3 build were AVX, but the GTK2 build were SSE?
Forcing people to change their look&feel? I'm sure GTK3 works just fine on older hardware so if people use and prefer GTK3 they would have to change to a GTK2 version... Also, many people on new hardware would choose to use GTK2 because it just looks better, regardless of its age. And once again it would splinter/complicate people's choice for the browser. It's much easier to get across that "if you are on hardware X, you need a community-built version" than "If X and Y then you use Z, unless you want it to look like Q then you have to build yourself" :P
Not sure that would be a good compromise, at all.
athenian200 wrote:
2024-03-04, 19:46
Discontinue 32-bit and 64-bit SSE2, leaving us with just AVX. Let people choose contributed builds for 32-bit, SSE2 or other preferred configurations if they need it, and let contributors use the leniency in our redist license to build with official branding in those cases. More of a wild-west option but relieves release engineering pressure from us. I'm fairly confident our community can make this work, though.
I think that's not a bad option, though it is the one likely to generate the most backlash. I like the spirit of it, though.
I think whatever backlash there would be would depend primarily on how well everything is communicated beforehand.


At the moment, I think the best compromise would be to kind of go the wild-west route, especially since Linux is mostly already doing this, but retain Windows 32-bit alongside it as an exception for as long as it's reasonable. i.e.: have Windows 32-bit SSE2 and 64-bit AVX, and move our official binaries for other platforms all to AVX (except ARM, of course), and rely on our community/package maintainers/etc. to provide other configurations or levels of optimization within the allowances and restrictions of the redist license for official branding. I'd leave it up to Nuck-TH to determine if he wants to flip AVX builds to SSE2 builds for the community or cut down to just AVX2 for those who want it as mainline would take up AVX.
"There is no point in arguing with an idiot, because then you're both idiots." - Anonymous
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

User avatar
athenian200
Contributing developer
Contributing developer
Posts: 1619
Joined: 2018-10-28, 19:56
Location: Georgia

Re: Defaulting to AVX for 64-bit architectures?

Post by athenian200 » 2024-03-04, 21:27

Moonchild wrote:
2024-03-04, 20:57
At the moment, I think the best compromise would be to kind of go the wild-west route, especially since Linux is mostly already doing this, but retain Windows 32-bit alongside it as an exception for as long as it's reasonable. i.e.: have Windows 32-bit SSE2 and 64-bit AVX, and move our official binaries for other platforms all to AVX (except ARM, of course), and rely on our community/package maintainers/etc. to provide other configurations or levels of optimization within the allowances and restrictions of the redist license for official branding. I'd leave it up to Nuck-TH to determine if he wants to flip AVX builds to SSE2 builds for the community or cut down to just AVX2 for those who want it as mainline would take up AVX.
I agree with you on Windows. And honestly the "wild west" approach is kind of what I am doing with Epyrus on Linux anyway... I provide only 64-bit GTK3, and leave building it any other way up to the community, because I'm just not interested in catering to two different toolkits on Linux. People on Linux can still build GTK2 or 32-bit if they want, but I'm not going to go out of my way to offer those configurations officially. If UXP's platform default becomes AVX, I will naturally go along with that, but otherwise I don't have any plans to add an AVX flag into my Epyrus builds... because I don't particularly care enough about supporting older hardware enough to disable AVX if it's the default, but also don't really think AVX would do much good for an e-mail client. However, the 32-bit build of Epyrus works perfectly fine on Windows because... well, e-mail clients don't eat a lot of RAM. Which is a big reason why I am keeping the 32-bit Windows build for Epyrus, aside from niche NPAPI plugins that might in theory target Thunderbird (not sure there are any).

I just assumed you were trying to cover more possibilities with your official builds, so I was kind of trying to make it work. Probably what you've suggested is the most sensible. The fact is, Windows is the platform we most need to cover properly with official builds. Other platforms can be more wild-west and don't have to worry about things like codesigning as much... well, Mac does, actually, but I think dbsoft has that covered.
"The Athenians, however, represent the unity of these opposites; in them, mind or spirit has emerged from the Theban subjectivity without losing itself in the Spartan objectivity of ethical life. With the Athenians, the rights of the State and of the individual found as perfect a union as was possible at all at the level of the Greek spirit." -- Hegel's philosophy of Mind

Lucio Chiappetti
Keeps coming back
Keeps coming back
Posts: 817
Joined: 2014-09-01, 15:11
Location: Milan Italy

Re: Defaulting to AVX for 64-bit architectures?

Post by Lucio Chiappetti » 2024-03-04, 21:45

Pentium4User wrote:
2024-03-04, 16:15
Lucio Chiappetti wrote:
2024-03-04, 15:38
Pentium4User wrote:
2024-03-04, 14:36
I think we should create a poll where all users of PM are notified, so we know the real amount of machines that lack AVX.
Does such a thing as a list of all users exist ? I don't think so as no "registration" is required to install PM!
That's why I suggested a poll that is being announced when installing the next PM version, like the release notes page that shows up.
I did'nt realise you meant a sort of post-installation popup (I was actually wondering if that were possible, it is a sensible idea). Of course that won't guarantee people reply (if they don't too bad, their fault).
I wonder whether the release notes, or a popup, do show up in all possible case of installation/updates (I now do an unconditional automatic update on my Ubuntu laptop, a triggered automatic update after a backup on my Ubuntu home desktop, a backup and a manual reinstallation from tar.gz on my Opensuse work desktop ... I can image other people grab their version from Steve Pusser repository, or from their distro repository, or build from source ... any other possibility ?)
The reasonable man adapts himself to the world: the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man. (G.B. Shaw)

Lucio Chiappetti
Keeps coming back
Keeps coming back
Posts: 817
Joined: 2014-09-01, 15:11
Location: Milan Italy

Re: Defaulting to AVX for 64-bit architectures?

Post by Lucio Chiappetti » 2024-03-04, 21:49

athenian200 wrote:
2024-03-04, 20:24
[Linux: 64-bit GTK3 AVX, or 64-bit GTK2 SSE2.
While personally I do not care about AVX or SSE2 (I assume my machines won't care and it will be transparent as look-and-feel), I am sticking to GTK2 because that allows me a simple customization of the outer interface (fonts and colours) without resorting to any themes. There should be a post of mine some years ago.
The reasonable man adapts himself to the world: the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man. (G.B. Shaw)

Eduardolucas1
Apollo supporter
Apollo supporter
Posts: 43
Joined: 2024-02-05, 03:15

Re: Defaulting to AVX for 64-bit architectures?

Post by Eduardolucas1 » 2024-03-04, 22:04

Moonchild wrote:
2024-03-04, 20:57

I think whatever backlash there would be would depend primarily on how well everything is communicated beforehand.


At the moment, I think the best compromise would be to kind of go the wild-west route, especially since Linux is mostly already doing this, but retain Windows 32-bit alongside it as an exception for as long as it's reasonable. i.e.: have Windows 32-bit SSE2 and 64-bit AVX, and move our official binaries for other platforms all to AVX (except ARM, of course), and rely on our community/package maintainers/etc. to provide other configurations or levels of optimization within the allowances and restrictions of the redist license for official branding. I'd leave it up to Nuck-TH to determine if he wants to flip AVX builds to SSE2 builds for the community or cut down to just AVX2 for those who want it as mainline would take up AVX.
If contributed unnoficial builds on some unix systems start to provide their configs using the reference of 64-bit AVX as default, this may hurt users of SSE2, as these package mantainers may follow the official referential builds from mainline linux distribution mantainers. Or it could hurt contributed unix build mantainers which may be forced to provide both builds with distinct configs.

This was what i was referencing in my add-up to your analysis in the previous page, and it may be a consequence to users on systems where pale moon is distributed with or without official branding.

User avatar
Night Wing
Knows the dark side
Knows the dark side
Posts: 5536
Joined: 2011-10-03, 10:19
Location: Piney Woods of Southeast Texas, USA

Re: Defaulting to AVX for 64-bit architectures?

Post by Night Wing » 2024-03-04, 22:10

Moonchild wrote:
2024-03-04, 20:57
Pentium4User wrote:
2024-03-04, 20:02
The way I see it, most Linux users on pre-AVX systems would be the ones least able to build Pale Moon themselves, whereas any Linux user on an AVX or later system likely has enough horsepower to compile Pale Moon in a couple of hours at most.
Compiling Pale Moon really doesn't take that much time. It's not Chromium ;)
But I think you're missing the point here: it's not about whether people would be technically capable of compiling it. Our mainstream binaries are supplied exactly because the vast majority of people, regardless of O.S., don't want to build from source and jump through all the hoops to be able to (i.e. setting up a build-capable environment). They want to download-and-use.
Below is basically answering Pentium4User.

Both of my old 64-bit laptops (dv4-5113cl, dv4-5213cl) will work on AVX, but since I am on linux, even though I use three different linux distros, I am still a non-technical person. Not a power user in linux.

This means I know enough about using linux (about 70%) not to get myself into trouble. And with 16 GB's of memory (horsepower) in each old laptop, if I had to compile linux Pale Moon myself..........for me, that would be a total disaster since I do not have the technical knowledge to do so. This is the other 30% that is missing for me.

Moonchild's comments above with the mainstream binaries for "download and use" are specifically suited for people like me because we will not run into any linux compiling frustrations and aggravations (the old jumping through hoops). So if both of my old laptops can handle AVX for linux Pale Moon, I am in Moonchild's camp.
MX Linux 23.6 (Libretto) Xfce w/Pale Moon, Waterfox, Firefox
Linux Debian 13.1 (Trixie) Xfce w/Pale Moon, Waterfox, Firefox

Eduardolucas1
Apollo supporter
Apollo supporter
Posts: 43
Joined: 2024-02-05, 03:15

Re: Defaulting to AVX for 64-bit architectures?

Post by Eduardolucas1 » 2024-03-04, 22:13

Night Wing wrote:
2024-03-04, 22:10

Below is basically answering Pentium4User.

Both of my old 64-bit laptops (dv4-5113cl, dv4-5213cl) will work on AVX, but since I am on linux, even though I use three different linux distros, I am still a non-technical person. Not a power user in linux.

This means I know enough about using linux (about 70%) not to get myself into trouble. And with 16 GB's of memory (horsepower) in each old laptop, if I had to compile linux Pale Moon myself..........for me, that would be a total disaster since I do not have the technical knowledge to do so. This is the other 30% that is missing for me.

Moonchild's comments above with the mainstream binaries for "download and use" are specifically suited for people like me because we will not run into any linux compiling frustrations and aggravations (the old jumping through hoops). So if both of my old laptops can handle AVX for linux Pale Moon, I am in Moonchild's camp.

I cannot lie i would be in the same space basically would be absolutely compromised if i had to make my own build. I completely lack money for a machine like that.

User avatar
athenian200
Contributing developer
Contributing developer
Posts: 1619
Joined: 2018-10-28, 19:56
Location: Georgia

Re: Defaulting to AVX for 64-bit architectures?

Post by athenian200 » 2024-03-04, 22:22

Night Wing wrote:
2024-03-04, 22:10
Below is basically answering Pentium4User.

Both of my old 64-bit laptops (dv4-5113cl, dv4-5213cl) will work on AVX, but since I am on linux, even though I use three different linux distros, I am still a non-technical person. Not a power user in linux.

This means I know enough about using linux (about 70%) not to get myself into trouble. And with 16 GB's of memory (horsepower) in each old laptop, if I had to compile linux Pale Moon myself..........for me, that would be a total disaster since I do not have the technical knowledge to do so. This is the other 30% that is missing for me.

Moonchild's comments above with the mainstream binaries for "download and use" are specifically suited for people like me because we will not run into any linux compiling frustrations and aggravations (the old jumping through hoops). So if both of my old laptops can handle AVX for linux Pale Moon, I am in Moonchild's camp.
Ah, I see. Yeah, but if your laptop works with AVX, you don't have to worry one way or the other. If the Pale Moon builds are SSE2, everything will work as before you just won't get optimizations, and if the Pale Moon builds are AVX... well, they'll get a little faster and you won't notice any other differences.

The main concern is basically about people with 15 year old 64-bit hardware anyway... if it weren't for that, we could flip the AVX switch and no one would know the difference. We already dropped 32-bit Linux, this would also drop some early 64-bit hardware, roughly Athlon 64/Intel Core 2 era.
"The Athenians, however, represent the unity of these opposites; in them, mind or spirit has emerged from the Theban subjectivity without losing itself in the Spartan objectivity of ethical life. With the Athenians, the rights of the State and of the individual found as perfect a union as was possible at all at the level of the Greek spirit." -- Hegel's philosophy of Mind

User avatar
null_ID
Hobby Astronomer
Hobby Astronomer
Posts: 15
Joined: 2024-03-04, 22:38

Re: Defaulting to AVX for 64-bit architectures?

Post by null_ID » 2024-03-05, 00:04

Whoa, after 9 years of just lurking, I finally have to chime in. So, where exactly does Basilisk stand in all this? Is Basilisk dev on board for this, since I'm assuming this is going to be a platform wide change that affects UXP and related projects as a whole? If Basilisk retains SSE2 support for folks with older hardware, this might sting less, because in that case I could just migrate my older Thinkpads (one T510, one X201) to use that. They're both set up to run Puppy Linux, and its sister project Fatdog, so they both remain pretty performant for web use even to this day, because the Puppy project has way less overhead compared to even many other Linux projects (to speak nothing of Windows). They also often roll up their own kernels, so whatever Ubuntu is doing has no bearing on them, at least not in the short term.

But generally speaking, I feel that this is a terrible idea, and I must protest. Since Pale Moon is already pretty badly in the marginal against the very well known competition, you do realize that a change like this will make you even less accessible? Yes, as a Linux user I'm most concerned. Going 32-bit isn't even an option anymore, like pointed out here, and for more reasons than just one. I use 64-bit exactly because I often use PM in tandem with other Linux software like the dedicated Discord client for Linux that doesn't offer 32-bit and never has. Going full AVX only would leave millions of still viable systems dead in the water, re-creating the previous risk that a lot of your users once again would simply refuse to update their copies of the browser at all, staying on older, still functional versions that would eventually miss out on critical security and feature updates, like what happened after the incident you had with your changes to the XUL-extension system. Or, some of the more competent ones would probably again go ahead and do another fork that you might not approve of.

Going as far as to demand AVX2 is just overkill, and an example of completely wrong kind of ambition. Even your competition dare not go that far. Last time I checked, Mozilla even still offers 32-bit Linux builds of Firefox, understanding that the demand is there, but that's not an option for me because I have concerns with their privacy and data gathering practices. So I implore you to find some sort of middle ground here, where Linux in particular would still retain some sort of support for the SSE2 based systems. A solution proposed here earlier about keeping Linux builds SSE2 sounds most promising, and would be considerate of the more disadvantaged groups such as myself who often have to rely on other people's scraps for lack of adequate funding. In my case, I collect my country's rather meager disability benefits due to various conditions, and this, put together with this awful inflation from the past couple of years, I'm not in a place where I could just candidly drop a few C-notes on a whim to get new hardware because of completely artificial lock-outs such as what is being planned here.

What I'm asking here is that you find a solution that doesn't throw us, who are on older system, under the bus, because us who are on older systems often have valid reasons for it that we can't just ignore with the click of our fingers. This community has demonstrated that you're able to provide builds that cater to variety of conditions, so I ask you to find some sort of solution based around that idea. Many good ideas have already been thrown around. At the very least, a transitional period of a reasonable length should be allowed so we can get our affairs in order.

User avatar
suzyne
Keeps coming back
Keeps coming back
Posts: 782
Joined: 2023-06-28, 22:43
Location: Australia

Re: Defaulting to AVX for 64-bit architectures?

Post by suzyne » 2024-03-05, 00:54

When I see in this thread accounts about older computers working performance wise just fine in Pale Moon, I wonder what sites are being used daily? For reasons of cost and the environment, I think it is wonderful to continue to use devices that continue to turn on, but I suspect the reports of the current default Pale Moon being more than adequate are based on restricting use to a shrinking subset of the web?

I imagine for users who are proud of avoiding dreadful social medias like instagram, online apps like discord and anything with a dubious cloud in the title, Pale Moon can be good enough!

But from my perspective, striving to be a niche browser based on being suitable for only particular categories of the web should not be the default mission of Pale Moon. At the same time, I am not advocating that there be no version suitable for ageing hardware.
Laptop 1: Windows 11 64-bit, i7 @ 2.80GHz, 16GB, NVIDIA GeForce MX450.
Laptop 2: Windows 10 32-bit, Atom Z3735F @ 1.33GHz, 2GB, Intel HD Graphics.
Laptop 3: Linux Mint 20.3 64-bit, i5 @ 2.5GHz, 8GB, Intel HD Graphics 620.

User avatar
Night Wing
Knows the dark side
Knows the dark side
Posts: 5536
Joined: 2011-10-03, 10:19
Location: Piney Woods of Southeast Texas, USA

Re: Defaulting to AVX for 64-bit architectures?

Post by Night Wing » 2024-03-05, 01:42

athenian200 wrote:
2024-03-04, 22:22
If the Pale Moon builds are SSE2, everything will work as before you just won't get optimizations, and if the Pale Moon builds are AVX... well, they'll get a little faster and you won't notice any other differences.

The main concern is basically about people with 15 year old 64-bit hardware anyway... if it weren't for that, we could flip the AVX switch and no one would know the difference.
Define the word, "faster" which you used above. If you mean "speed" in terms of "time", then how much faster would my two laptops gain with the two older laptops.

Keep in mind the 14", HP dv4-5113cl laptop came with 64-bit Windows 7 Home Premium, Intel i5 processor with a processor speed of 2.50 and 16 GB's of memory. Bought it the year 2011.

The 14", HP dv4-5213 originally came with (ugh!) 64-bit Windows 8 Home, Intel i5 processor with a processor speed of 2.50 and 16 GB's of memory. Bought it in early 2013. So both laptops would be considered, "very old" by today's standards. But both can handle AVX. Not too shabby for two "dinosaurs" which still "roam the earth".

I have Comcast as my ISP with a download speed of 450 Mbps. I was at 1 GB of download speed, but me dropping down to 450, I am saving $20/month which comes out to $240/year. Enough gas money to take me down to the upper Texas coast for four longboard surfing wave sessions.

So if the "performance" is measured in "milliseconds" time wise, I am not impressed. If the "performance" is measured in "seconds", if it turns out to be 3 seconds faster, I am still not impressed.

My two desktop towers will have no problem with whatever Moonchild decides in the end since one has an Intel i7 processor with a processor speed of 3.40 and 32 GB's of memory. The other desktop tower has a new motherboard in it. It has a 12th generation Intel i7 processor with a processor speed of 3.60 and 32GB's of memory in the first memory slot. The other three memory slots are empty at this time. BTW, the new motherboard can handle up to 128 GB's of memory.

In closing. When people start throwing around the word, "performance" when describing the term "a little faster". To me it is like, "Six of one and a half dozen of another". I really want to know what the performance "difference" really is.
Last edited by Night Wing on 2024-03-05, 04:05, edited 1 time in total.
MX Linux 23.6 (Libretto) Xfce w/Pale Moon, Waterfox, Firefox
Linux Debian 13.1 (Trixie) Xfce w/Pale Moon, Waterfox, Firefox

User avatar
andyprough
Board Warrior
Board Warrior
Posts: 1182
Joined: 2020-05-31, 04:33

Re: Defaulting to AVX for 64-bit architectures?

Post by andyprough » 2024-03-05, 02:11

suzyne wrote:
2024-03-05, 00:54
I imagine for users who are proud of avoiding dreadful social medias like instagram, online apps like discord and anything with a dubious cloud in the title, Pale Moon can be good enough!
I go to plenty of cloud and video sites, but not Instagram or discord. It's not that I'm proud of it, I just don't need anything from them. But then again I use a very fast and powerful new machine most of the day and don't have any trouble with anything at all. My machine is basically overpowered for modern programs and the modern web. I could probably spend time on Instagram and discord without difficulty. I think for Instagram you have to prove your identity to Facebook to use the site and I wouldn't be interested. And I think discord normally uses a dedicated electron app that is optimized for the site, so it's probably not a fair comparison. Stock versions of other browsers probably wouldn't perform as well as a dedicated and optimized electron package. But if I needed to I'll bet I could browse both sites with Pale Moon just fine unless Pale Moon was simply incapable of rendering them for some technical reason.

But I think at the end of your post you are advocating for the higher performance version of Pale Moon to be the default, which I agree with. I'm using the AVX2 version, seems fine. AVX2 should probably just become the default or there will need to be another whole upgrade cycle in a couple of years. As long as the less performant versions are available somewhere on the site then everyone should be fine.
Last edited by andyprough on 2024-03-05, 02:41, edited 1 time in total.

Eduardolucas1
Apollo supporter
Apollo supporter
Posts: 43
Joined: 2024-02-05, 03:15

Re: Defaulting to AVX for 64-bit architectures?

Post by Eduardolucas1 » 2024-03-05, 02:23

suzyne wrote:
2024-03-05, 00:54
When I see in this thread accounts about older computers working performance wise just fine in Pale Moon, I wonder what sites are being used daily? For reasons of cost and the environment, I think it is wonderful to continue to use devices that continue to turn on, but I suspect the reports of the current default Pale Moon being more than adequate are based on restricting use to a shrinking subset of the web?

I imagine for users who are proud of avoiding dreadful social medias like instagram, online apps like discord and anything with a dubious cloud in the title, Pale Moon can be good enough!

But from my perspective, striving to be a niche browser based on being suitable for only particular categories of the web should not be the default mission of Pale Moon. At the same time, I am not advocating that there be no version suitable for ageing hardware.
I think speaking without being in the daily usage of them, and mostly, speculating on how fast or not these systems are and which websites they run or the software stack underling the browser seems like a irresponsible insinuation.