XUL update made Pale Moon 28 at least 20% slower

Talk about code development, features, specific bugzilla bugs, enhancements, patches, and other highly technical things.

Moderator: satrow

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 referenced Bugzilla bugs, mercurial, 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. Most "bug reports" do not belong in this board and should initially be posted in Community Support or other relevant support boards.

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.
User avatar
palacs
New to the forum
New to the forum
Posts: 2
Joined: Tue, 18 Sep 2018, 20:30

XUL update made Pale Moon 28 at least 20% slower

Unread postby palacs » Tue, 18 Sep 2018, 20:41

It seems Pale Moon developers have started falling into the trap of software bloat Firefox developers had already been in when the fork was created. Although Pale Moon authors did a really great job at sorting out unnecessary bloat, Chrome-mockery and other useless features that were there only for trend and fashion, it seems PM can't escape its destiny of getting fatter and slower by every release. I'm really sorry about that because the users of Pale Moon old or simply low-end computers are becoming even more defenseless to software bloat.

The first thing I noticed is that xul.dll in the new version is twice as big as in 27 (55.4 MB vs 27.6 MB). The second thing that it loads up in 7 seconds, instead of 2 seconds (previous version) with warm start (!). I have an SSD anyways so it should load fast. Chrome loads in 1.5 sec. The third annoying thing is that - besides the bluish default theme that nobody ever wanted or asked for - almost every UI element is slower, accessing main or context menu elements, rendering and scrolling of web pages, etc.

Pale Moon has been a great alternative to Firefox or any other bloated browser. Even users of older computers running Windows XP could stay up-to-date with custom MSFN builds. It would really be a pity if developers let this happen. So please do something about it. Go back to older version of XUL, optimize more, only pick changes that are really needed, etc. Pale Moon should be faster and faster with each new version.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 22140
Joined: Sun, 28 Aug 2011, 17:27
Location: 58.5°N 15.5°E
Contact:

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby Moonchild » Wed, 19 Sep 2018, 08:35

Thank you for your observations.

Now, kindly take a step back and see what's been going on with the milestone changeover:
We've made a new fork of the Mozilla codebase for this release. This means that we have inherited a much larger codebase (24 million lines of code as opposed to 14 million lines) that we are working from. Mind you, a good portion of this is absolutely necessary to implement what the modern web demands of a web browser, and is not "bloat" at all (e.g. ECMAScript's JavaScript standard implementations, WebGL2, DOM specifications).
In addition, the XUL library is currently a monolithic library that has several others folded in that were separate in Pale Moon 27 (most notably media handling and the JavaScript engine). We have open issues to split those libraries back out into their own .dlls, so please don't mis-read the size change of that one .dll as caused purely by bloat or unwanted/unnecessary features.

In terms of weight, yes, Pale Moon 28 is considerably heavier than Pale Moon 27. This is in part inevitable because of the web's demands and that added weight will always remain there. The re-forking has set us back in that respect because we've also adopted code we in fact don't need, but things can only go up and improve from here on out (since we will not do it again -- UXP is what it is). That is not something that can be done overnight; it will take many months, probably years, to unravel and untangle unnecessary code from necessary code due to Mozilla's gradual and piece-meal rearchitecturing to aim for e.g. electrolysis and their move to using Rust.

I'd also like to repeat that it has never been one of Pale Moon's goals to be light-weight. The primary goal has always been to be full-featured but efficient. We don't target particularly old hardware or particularly old operating systems for that very reason, and never have. That it as a side effect of its efficiency was very suitable for old systems is great of course, but not a focused goal. Overall, performance of Pale Moon 28 is better -- on targeted hardware. On old hardware you may find less acceleration because of the changes in the rendering engine, but that is not something that can be "rolled back".

So, please don't think we've fallen into any "trap" or that we have any intention of stacking on more and more useless code. In fact, note my signature quote which is true now more than ever:
Improving Mozilla code: You know you're on the right track with code changes when you spend the majority of your time deleting code.
Last edited by Moonchild on Wed, 19 Sep 2018, 08:37, edited 1 time in total.
Improving Mozilla code: You know you're on the right track with code changes when you spend the majority of your time deleting code.

"If you want to build a better world for yourself, you have to be willing to build one for everybody." -- Coyote Osborne

yami_
Fanatic
Fanatic
Posts: 154
Joined: Thu, 26 Apr 2018, 11:05

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby yami_ » Wed, 19 Sep 2018, 09:25

palacs wrote:Chrome loads in 1.5 sec.
IIRC Chrome will start in the background when you log in to your PC and will stay in memory after you close its last window in order to give the impression of faster startup. For the same reason it will also preload web pages that it think you will visit.
cat came back from Berkeley waving flags
- rob pike

Octopuss
Lunatic
Lunatic
Posts: 423
Joined: Mon, 26 Jan 2015, 13:58

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby Octopuss » Wed, 19 Sep 2018, 11:37

Moonchild, I have a related question.
PM27 was based on noticeably older Firefox code, right? It worked fine (I guess?), but over time, lots of websites started to feel slow or even extremely slow to the point of being barely useable (like scrolling in channel list on Twitch, clickin on anything on FB or scrolling far into old posts on Twitter). I think one of the explanations was that the Firefox code evolved, and PM27 didn't have what websites currently require to function properly anymore.
Since this apparently wasn't possible to fix/add/improve/something to PM27, PM28 was forked from newer Firefox. That's fine, but... what are you going to do for this to not happen again? Since there won't be any newer Firefox to fork again, what will you do when "the code" evolves again, or rather when websites start to require something newer than what PM28 offers?

User avatar
billmcct
Lunatic
Lunatic
Posts: 405
Joined: Tue, 04 Sep 2012, 15:19
Location: Atlanta Georgia USA

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby billmcct » Wed, 19 Sep 2018, 13:25

I personally haven't experienced any type of slow downs using:
PM 28.0.1 32 bit
Win 7 64 bit
Win 7 x64 - Pale Moon 28x x32

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 22140
Joined: Sun, 28 Aug 2011, 17:27
Location: 58.5°N 15.5°E
Contact:

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby Moonchild » Wed, 19 Sep 2018, 19:12

Octopuss wrote:That's fine, but... what are you going to do for this to not happen again? Since there won't be any newer Firefox to fork again, what will you do when "the code" evolves again, or rather when websites start to require something newer than what PM28 offers?

Thankfully the JS "storm" is pretty much over. But, as you observed, things will continue to evolve. We were not far removed from being able to continue on Tycho, were it not for several landmark features we needed help with and despite bounties being available nobody, not a single person, was willing to help out with. With the re-fork and additional coding on top of that we are past that point, with all core features of ES6, ES2016 and ES2017 implemented, and we should be able to keep pace with any additions that are going to be made mostly as addenda -- things have slowed down considerably in terms of the essentials of scripting (thankfully -- the JS spec is already quite insane with what it has become, trying to provide just about all common-language paradigms in one).

If the same situation occurs again, against all odds and expectations, and once again our community does not help out, then it will simply mean the end of the road. It's not up to just our ragtag band of specialists doing most of the core work. It's up to all of you to keep an eye out and help out where possible. This is a community project. If the community fails it, then the project will also fail.

That bleakest-of-outlooks aside though, I'm confident we're on the right track here :)
Improving Mozilla code: You know you're on the right track with code changes when you spend the majority of your time deleting code.

"If you want to build a better world for yourself, you have to be willing to build one for everybody." -- Coyote Osborne

User avatar
mr tribute
Moon lover
Moon lover
Posts: 92
Joined: Sat, 19 Mar 2016, 23:24

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby mr tribute » Wed, 19 Sep 2018, 22:13

Moonchild wrote:
Octopuss wrote:That's fine, but... what are you going to do for this to not happen again? Since there won't be any newer Firefox to fork again, what will you do when "the code" evolves again, or rather when websites start to require something newer than what PM28 offers?

Thankfully the JS "storm" is pretty much over. But, as you observed, things will continue to evolve. We were not far removed from being able to continue on Tycho, were it not for several landmark features we needed help with and despite bounties being available nobody, not a single person, was willing to help out with. With the re-fork and additional coding on top of that we are past that point, with all core features of ES6, ES2016 and ES2017 implemented, and we should be able to keep pace with any additions that are going to be made mostly as addenda -- things have slowed down considerably in terms of the essentials of scripting (thankfully -- the JS spec is already quite insane with what it has become, trying to provide just about all common-language paradigms in one).

If the same situation occurs again, against all odds and expectations, and once again our community does not help out, then it will simply mean the end of the road. It's not up to just our ragtag band of specialists doing most of the core work. It's up to all of you to keep an eye out and help out where possible. This is a community project. If the community fails it, then the project will also fail.

That bleakest-of-outlooks aside though, I'm confident we're on the right track here :)


Very interesting information. Change is sometimes used as a weapon to push out smaller players. I am happy Firefox is still around so WebKit/Blink isn't the only rendering engine. When Opera used Presto some things didn't work correctly but both Firefox and Pale Moon work well despite not using WebKit/Blink.

I think Pale Moon is pretty close to perfection. Version 28 seems more problematic on Windows than on Linux.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 22140
Joined: Sun, 28 Aug 2011, 17:27
Location: 58.5°N 15.5°E
Contact:

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby Moonchild » Thu, 20 Sep 2018, 12:47

And with today's update, it's quite likely your 20% "slower" has been mitigated.
Improving Mozilla code: You know you're on the right track with code changes when you spend the majority of your time deleting code.

"If you want to build a better world for yourself, you have to be willing to build one for everybody." -- Coyote Osborne

User avatar
palacs
New to the forum
New to the forum
Posts: 2
Joined: Tue, 18 Sep 2018, 20:30

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby palacs » Sun, 23 Sep 2018, 16:52

Moonchild wrote:a good portion of this is absolutely necessary to implement what the modern web demands of a web browser, and is not "bloat" at all

Users of the "modern web" are not identical to users of Pale Moon. Users of the "modern web" should go with bloatware like Google Chrome or Mozilla Firefox. Pale Moon 27 can display all mainstream websites by now with all its functionality, including the new Gmail, new Messenger-looking Facebook, GitHub, news sites and a lot more other sites. Maybe there is a small portion of sites that were created by innovation idealist webdorks and thus has glitches with PM 27. However, it's unclear to me why you're sacrifising the speed and efficiency of PM 27 still working well at most websites, to the stability of the previously mentioned small portion. Btw, I hope you're not planning to adopt the new Rust idealism of Firefox. That would completely render the existence of Pale Moon useless.

Moonchild wrote:I'd also like to repeat that it has never been one of Pale Moon's goals to be light-weight. The primary goal has always been to be full-featured but efficient.

A great measurement of efficiency is to run Pale Moon on an old hardware. If it lags, produces slowdowns and takes a lot of seconds to load, it is not efficient. This is what divides bloatware from efficient software. Not its lightness but performance. And I'm not necessarily talking about memory footprint because it's not the No. 1 problem as you can put 4 GB of RAM even into more-than-ten-year-old Core Duo machines. The No. 1. problem is CPU bloat and inefficiency as it's much harder and more expensive to replace a CPU than it is to put in more memory. When you're adopting the code of lazy Firefox developers who patchwork their code on their latest and shiniest Intel i7 and AMD Ryzen nuclear power plants with 4-8 cores and 32 GB of RAM, you should think twice whether it should get into Pale Moon on an "it is what it is" basis. Of course they will not optimize anything for speed if they don't feel the slowness. If you want to keep Pale Moon efficient, it should be priority one to optimize the code you adopt if it's slow and the slowness can easily be detected by running it on old hardware.

Moonchild wrote:And with today's update, it's quite likely your 20% "slower" has been mitigated.

It has not. PM 28.1.0 still starts in 7 seconds, while PM 27 does it in just 2. Let alone the bluish theme which is still annoying as hell and should not be there by default. Please remove it and restore the good old neutral grey theme that's been there for years.
Last edited by palacs on Sun, 23 Sep 2018, 16:58, edited 5 times in total.

User avatar
back2themoon
Board Warrior
Board Warrior
Posts: 1192
Joined: Sun, 19 Aug 2012, 20:32

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby back2themoon » Sun, 23 Sep 2018, 17:16

palacs wrote:lots of stuff

If I understand correctly:

1. You know the nature of Pale Moon users.
2. You know about the intricate technical differences between PM27 and PM28.
3. You know how software in general should be tried and tested by developers, and what makes it efficient.
4. You know what would render Pale Moon useless.
5. You know that a default setting is annoying as hell and want it changed. I assume you also know it annoys all other users, too.

Is there a legitimate question somewhere in there, or is it all knowledge and demands?

(Note to anyone interested: it's my last reply in similar threads, which seem growing of late. I'll still try to help users, as always.)
Safe Mode / clean profile info: Help/Restart in Safe Mode
Information to include when asking for support - How to apply user agent overrides

Windows 10 Pro - Pale Moon x64 - FossaMail x64 - Emsisoft Anti-Malware

yami_
Fanatic
Fanatic
Posts: 154
Joined: Thu, 26 Apr 2018, 11:05

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby yami_ » Sun, 23 Sep 2018, 17:38

palacs wrote:Btw, I hope you're not planning to adopt the new Rust idealism of Firefox.
UXP does not support Rust, see Issue #58 (uxp).
palacs wrote:A great measurement of efficiency is to run Pale Moon on an old hardware. If it lags, produces slowdowns and takes a lot of seconds to load, it is not efficient.
It is the old hardware support that makes Pale Moon inefficient.
cat came back from Berkeley waving flags
- rob pike

User avatar
Sajadi
Keeps coming back
Keeps coming back
Posts: 936
Joined: Fri, 19 Apr 2013, 00:46

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby Sajadi » Sun, 23 Sep 2018, 18:38

palacs wrote:Pale Moon 27 can display all mainstream websites by now with all its functionality


Pale Moon 27 has rather issues with big pages, especially the one's who require ES6 and angoing ECMAscript features. So no, it is rather the case that Pale Moon 27 has big compatibility issues with recent pages. And a lot of pages are either working only partly or not at all.

If someone who would have been able to implement the missing core ECMAscript features in Pale Moon 27 would have found a way to implement them - then we still would have Pale Moon 27 around. But as there was none around who was able to do it or who wanted to do it, for this reason we have now Pale Moon 28 around with a new code base in use.

This is a community project as it was already mentioned in one way or another - to a certain degree the user itself is the one who decides where the journey is going or if the journey is on-going at all. So, you want Pale Moon 27 - fork the old repository, re-brand the browser and afterwards feel free to implement all missing ECMAscript features to bring it to the same level like Pale Moon 28 delivers out of the box - or find a way that someone else does this job for you, how you do that in the end.... that is up to you ;)

Anyway - Point is, Pale Moon 27 is dead, as it was no longer fulfilling the requirements of today's web. And without that additional ECMAscript features, Pale Moon 27 even has issues with Github. There have been too many compatibility issues to use that code base any longer.
Last edited by Sajadi on Sun, 23 Sep 2018, 18:58, edited 10 times in total.

User avatar
Thehandyman1957
Board Warrior
Board Warrior
Posts: 1635
Joined: Tue, 19 May 2015, 02:26
Location: Arizona U.S.

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby Thehandyman1957 » Sun, 23 Sep 2018, 18:57

palacs wrote:A great measurement of efficiency is to run Pale Moon on an old hardware. If it lags, produces slowdowns and takes a lot of seconds to load, it is not efficient. This is what divides bloatware from efficient software.;


Um, NO! :roll: A great measurement of efficiency is to run on the targeted hardware the way you want it to.
It is very clearly noted that old hardware is no longer supported, and there are good reasons for this. As the
web has become more complicated and security risks have increased so has the code and resources required
to surf it. OLD HARDWARE was not designed to handle what is now required to surf properly without issues,
I.E. slow downs and glitches. Not to mention the issues with old drivers that were never designed to handle
what is now mainstream internet, video or a browser that needs code from newer hardware and it's drivers.

As for the color of the browser? :wtf: Get a freaking life. That's what the themes are for.
And they are provided for you COMPLETELY FREE OF CHARGE. :o

Man, it must be world wide Troll week or something. I must have missed the memo. :problem:
Last edited by Thehandyman1957 on Sun, 23 Sep 2018, 18:59, edited 1 time in total.
"A common mistake people make when trying to design something
completely FOOLPROOF, is underestimating the ingenuity of complete FOOLS! ;) "

Octopuss
Lunatic
Lunatic
Posts: 423
Joined: Mon, 26 Jan 2015, 13:58

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby Octopuss » Sun, 23 Sep 2018, 19:12

palacs wrote:Pale Moon 27 can display all mainstream websites by now with all its functionality


AHAHAHAHAHAHAHA!

Please go back where you come from. You're quite obviously fairly delusional.

Not even PM28 is 100%, and it's much, much better than 27.

User avatar
Sajadi
Keeps coming back
Keeps coming back
Posts: 936
Joined: Fri, 19 Apr 2013, 00:46

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby Sajadi » Sun, 23 Sep 2018, 19:30

Octopuss wrote:Not even PM28 is 100%, and it's much, much better than 27.


Well, you know where you can report issues ;)
Last edited by Sajadi on Sun, 23 Sep 2018, 19:30, edited 1 time in total.

User avatar
satrow
Forum staff
Forum staff
Posts: 1687
Joined: Thu, 08 Sep 2011, 11:27

Re: XUL update made Pale Moon 28 at least 20% slower

Unread postby satrow » Sun, 23 Sep 2018, 22:02

back2themoon wrote:
palacs wrote:lots of stuff
... Is there a legitimate question somewhere in there, or is it all knowledge and demands?

(Note to anyone interested: it's my last reply in similar threads, which seem growing of late. I'll still try to help genuine users, as always.)


Fixed the last part for you.


Return to “Development (discussion)”

Who is online

Users browsing this forum: No registered users and 3 guests