reddit performance

For support with specific websites

Moderator: trava90

Forum rules
Please always mention the name/domain of the website in question in your topic title.
Please one website per topic thread (to help keep things organized). While behavior on different sites might at first glance seem similar, they are not necessarily caused by the same.

Please try to include any relevant output from the Toolkit Error Console or the Developer Tools Web Console using the following procedure:
  1. Clear any current output
  2. Navigate or refresh the page in question
  3. Copy and paste Errors or seemingly relevant Warnings into a single [ code ] block.
User avatar
Raava
Fanatic
Fanatic
Posts: 198
Joined: 2014-06-22, 22:23
Location: Europe

reddit performance

Unread post by Raava » 2023-09-30, 05:36

Hi,
I know by today's technical standards my main PC is on the small side performance wise. Intel 4-Core CPU "Intel(R) Core(TM) i7 CPU Q 720 @ 1.60GHz" (each able to do 2 tasks at once, so max CPU is 800%) and 4 GB RAM (Notebook, more expensive to extent the RAM than a standard PC) and older nVidia GPU "GeForce GT 330M" needing older 340.* driver. Overall I am happy with my Toshiba Satellite. :D

And in PM (x86-64, 32.4.0.1) I usually have several windows open with several tabs in each.

Thanks to a very slim and performative Slackware based Live Linux ("Porteus") and XFCE 4.16 as DE the performance usually is still quite satisfactory.

Until I visit reddit and enable JavaScript (ηMatrix 5.0.3 - also called eMatrix disables JS by default) and reload the reddit tab the whole PM performance takes a nosedive. This happens that noticeable only with reddit, and one single reddit tab is enough to go from satisfactory browsing performance to sluggish annoying experience - like browsing up or down a page using the mouse's scroll wheel. Without reddit that is always instantaneous, but with reddit any tab contents freezes and it takes several seconds for the contents to move up or down once more (even non-reddit tabs).

And I do not mean the initial load time for one opened reddit tab, that takes a while, but the performance not improves back to old standard after the one reddit tab is fully loaded. And opening more than one reddit tab makes the performance nosedive even more steep.

When I close all reddit tabs the performance of PM goes back to its satisfactory state like it was prior browsing reddit.

Can there be done anything, like block parts of reddit that are unneeded? Or is reddit itself coded in a too crappy way that the performance nosedive is just part of the package?


Web Console on randomly chosen https://www.reddit.com/r/duckduckgo/

Code: Select all

Content Security Policy: Directive ‘child-src’ has been deprecated. Please use directive ‘worker-src’ to control workers, or directive ‘frame-src’ to control frames respectively.  
(unknown)
Content Security Policy: Ignoring “'unsafe-inline'” within script-src or style-src: nonce-source or hash-source specified  
(unknown)
Content Security Policy: Couldn’t process unknown directive ‘style-src-attr’  
(unknown)
Content Security Policy: Couldn’t process unknown directive ‘report-to’ 
(unknown)
Content Security Policy: Ignoring “'unsafe-inline'” within script-src: ‘strict-dynamic’ specified  
(unknown)
Content Security Policy: Ignoring “https:” within script-src: ‘strict-dynamic’ specified  
(unknown)
TypeError: pp.getAnimations is not a function[Learn More]  
shell-bff57863.js:1:421646
TypeError: t.target.getAnimations is not a function[Learn More] 
makeEventDispatcher-eb3a5b05.js:1:8869
TypeError: Argument 1 of Document.elementFromPoint is not a finite floating-point value.Google One Tap prompt was not displayed: opt_out_or_no_session  
sentry-94f7e90f.js:1:12729
TypeError: Argument 1 of Document.elementFromPoint is not a finite floating-point value. 
shell-bff57863.js:4:39517
TypeError: t.target.getAnimations is not a function[Learn More] 
makeEventDispatcher-eb3a5b05.js:1:8869
TypeError: pp.getAnimations is not a function[Learn More] 
shell-bff57863.js:1:421646
TypeError: t.target.getAnimations is not a function[Learn More] 
makeEventDispatcher-eb3a5b05.js:1:8869
TypeError: Argument 1 of Document.elementFromPoint is not a finite floating-point value. 
shell-bff57863.js:4:39517
yours truly, Rava

User avatar
moonbat
Knows the dark side
Knows the dark side
Posts: 4862
Joined: 2015-12-09, 15:45
Contact:

Re: reddit performance

Unread post by moonbat » 2023-09-30, 06:15

Just use old.reddit.com and you'll find a Greasemonkey script that auto-redirects to it. Far better than the bloated mess that the regular site is, and 'old' here means 'from back when websites were designed for desktop screens'.
"One hosts to look them up, one DNS to find them and in the darkness BIND them."

Image
Linux Mint 21 Xfce x64 on HP i5-5200 laptop, 12 GB RAM.
AutoPageColor|PermissionsPlus|PMPlayer|Pure URL|RecordRewind|TextFX

User avatar
suzyne
Lunatic
Lunatic
Posts: 270
Joined: 2023-06-28, 22:43
Location: Australia

Re: reddit performance

Unread post by suzyne » 2023-09-30, 11:56

moonbat wrote:
2023-09-30, 06:15
Just use old.reddit.com
On my Laptop 2 which is very low powered and so makes it super obvious when a site is consuming a lot of resources, when I open the home page of reddit (the new one) the browser CPU use rises to around 20% and stays there even when I am not interacting with reddit in any way. Close the reddit tab and the CPU use drops back to a sensible level (less than 2%).

Reddit appears to be built in such a way that even when the page should be "idling", it is chewing up those processor cycles. I don't have a solution, but @moonbat's suggestion to use old reddit is a practical work around!
Laptop 1: Windows 10 64-bit, i7 @ 2.80GHz, 16GB, NVIDIA GeForce MX450.
Laptop 2: Windows 10 32-bit, Atom Z3735F @ 1.33GHz, 2GB, Intel HD Graphics.

User avatar
moonbat
Knows the dark side
Knows the dark side
Posts: 4862
Joined: 2015-12-09, 15:45
Contact:

Re: reddit performance

Unread post by moonbat » 2023-09-30, 12:42

Other than low system resources, the old version also has better text density as used to be the norm, instead of giant fonts and wasted whitespace, Why they can't deliver this site as the defaultl desktop experience is beyond me, when modern CSS lets one detect screen size/resolution/orientation and alter layout on the fly. I thought that's what 'responsive' design meant :coffee:
"One hosts to look them up, one DNS to find them and in the darkness BIND them."

Image
Linux Mint 21 Xfce x64 on HP i5-5200 laptop, 12 GB RAM.
AutoPageColor|PermissionsPlus|PMPlayer|Pure URL|RecordRewind|TextFX

User avatar
Raava
Fanatic
Fanatic
Posts: 198
Joined: 2014-06-22, 22:23
Location: Europe

Re: reddit performance

Unread post by Raava » 2023-09-30, 14:03

old.reddit.com - that's the reddit I recall from back when. Much better design.

So when I have a certain reddit e.g. https://www.reddit.com/r/duckduckgo/ I just turn that into https://old.reddit.com/r/duckduckgo/ :D
That does the trick indeed. Thanks.
yours truly, Rava

User avatar
Raava
Fanatic
Fanatic
Posts: 198
Joined: 2014-06-22, 22:23
Location: Europe

Re: reddit performance

Unread post by Raava » 2023-09-30, 14:11

Unfortunately, using the old.reddit URL of r/duckduckgo forwarded me by itself to www.reddit.com
and that went well as you can image.
Is there a way to block reddit from doing that?

And to top it off it resulted in this
Image
:crazy:

Edit
Seems the issue is this:

Code: Select all

We use cookies on our websites for a number of purposes, including analytics 
and performance, functionality and advertising.
Learn more about Reddit's use of cookies.

Please continue to new.reddit.com to set your cookie preferences.
Is login possible (that needs cookies) and staying on old.reddit when using GreaseMonkey?
yours truly, Rava

User avatar
moonbat
Knows the dark side
Knows the dark side
Posts: 4862
Joined: 2015-12-09, 15:45
Contact:

Re: reddit performance

Unread post by moonbat » 2023-09-30, 21:50

You need updated adblocker filters (that telemetry bullshit is totally unnecessary and just slows down browsing). Rather then GM scripts you can also try URL Rewriter and set it to auto change reddit URLs to the old site.
"One hosts to look them up, one DNS to find them and in the darkness BIND them."

Image
Linux Mint 21 Xfce x64 on HP i5-5200 laptop, 12 GB RAM.
AutoPageColor|PermissionsPlus|PMPlayer|Pure URL|RecordRewind|TextFX

User avatar
Garland
Hobby Astronomer
Hobby Astronomer
Posts: 20
Joined: 2023-09-26, 20:39

Re: reddit performance

Unread post by Garland » 2023-09-30, 22:28

An alternative to GreaseMonkey is https://github.com/gorhill/uBlock-for-f ... y/releases
I use uBlock together with eMatrix. eMatrix shows 99+ scripts for www.redditstatic.com, so uBlock is useful to surgically block certain scripts. The default filter lists of uBlock is blocking 7 reddit scripts for me. You can explore more filter lists or create your own custom filters for reddit to do better.
Documentation at https://github.com/gorhill/uBlock/wiki
This extension allows you to access assets in github.com with Pale Moon so you can download uBlock: https://martok.github.io/palefill/

User avatar
moonbat
Knows the dark side
Knows the dark side
Posts: 4862
Joined: 2015-12-09, 15:45
Contact:

Re: reddit performance

Unread post by moonbat » 2023-09-30, 23:56

Garland wrote:
2023-09-30, 22:28
An alternative to GreaseMonkey is https://github.com/gorhill/uBlock-for-f ... y/releases
How is an adblocker (which almost everyone here is very well aware of) an alternative to a user script manager? Greasemonkey in the context of this thread was to redirect requests to www.reddit.com to old.reddit.com. The same thing can be accomplished with the extension I mentioned, URL Rewriter. uBlock Origin and other adblockers will block ads on both versions of the site, not help in redirecting from one to the other.
Garland wrote:
2023-09-30, 22:28
This extension allows you to access assets in github.com with Pale Moon so you can download uBlock:
There is no need for this anymore since Pale Moon now supports the features that it patched.
"One hosts to look them up, one DNS to find them and in the darkness BIND them."

Image
Linux Mint 21 Xfce x64 on HP i5-5200 laptop, 12 GB RAM.
AutoPageColor|PermissionsPlus|PMPlayer|Pure URL|RecordRewind|TextFX

User avatar
Raava
Fanatic
Fanatic
Posts: 198
Joined: 2014-06-22, 22:23
Location: Europe

Re: reddit performance

Unread post by Raava » 2023-10-01, 04:53

Thanks @moonbat and @Garland.
Garland wrote:
2023-09-30, 22:28
I use uBlock together with eMatrix.
Same as me apparently, I use uBlock Origin 1.16.4.30 and ηMatrix 5.0.3 (also called eMatrix) but do not update most of the settings regularly.
I look if I find more filters specific for reddit.
moonbat wrote:
2023-09-30, 21:50
You need updated adblocker filters (that telemetry bullshit is totally unnecessary and just slows down browsing). Rather then GM scripts you can also try URL Rewriter and set it to auto change reddit URLs to the old site.
Dito, I look into updated adblocker filters and what URL Rewriter can do for me.
yours truly, Rava

User avatar
Garland
Hobby Astronomer
Hobby Astronomer
Posts: 20
Joined: 2023-09-26, 20:39

Re: reddit performance

Unread post by Garland » 2023-10-01, 17:59

moonbat wrote:
2023-09-30, 23:56
How is an adblocker (which almost everyone here is very well aware of) an alternative to a user script manager?
uBlock does much more than ad blocking. It has filter lists for annoyances and misc. It also supports custom filters. The use of uBlock is a different strategy to solving the problem posed by the opening post. In other words, blocking scripts with bad behavior.
moonbat wrote:
2023-09-30, 23:56
There is no need for this anymore since Pale Moon now supports the features that it patched.
I didn't realize this from the Pale Moon release notes. I removed the Palefill extension, and indeed I can still download the assets from a GitHub release. Thanks for the tip!

User avatar
moonbat
Knows the dark side
Knows the dark side
Posts: 4862
Joined: 2015-12-09, 15:45
Contact:

Re: reddit performance

Unread post by moonbat » 2023-10-01, 23:25

Garland wrote:
2023-10-01, 17:59
uBlock does much more than ad blocking. It has filter lists for annoyances and misc.
Filtering different kinds of things isn't 'much more than adblocking', and there are lists available for every other adblocker as well. Greasemonkey is a different extension for an entirely different purpose and a bigger scope.
"One hosts to look them up, one DNS to find them and in the darkness BIND them."

Image
Linux Mint 21 Xfce x64 on HP i5-5200 laptop, 12 GB RAM.
AutoPageColor|PermissionsPlus|PMPlayer|Pure URL|RecordRewind|TextFX

User avatar
Raava
Fanatic
Fanatic
Posts: 198
Joined: 2014-06-22, 22:23
Location: Europe

Re: reddit performance

Unread post by Raava » 2023-10-07, 19:00

I sent an email to Collin M. Barrett, the maintainer of filterlists.com/

To paraphrase his kind reply:

There is (at least as of yet) no suggestions engine on filterlists.com. His recommendation since I use uBlock Origin is is to use the recommended lists in the various Blocking Modes via their wiki at https://github.com/gorhill/uBlock/wiki/Blocking-mode

I looked up the wiki and read on it for a while, and decided to not activate the Advanced user features because for now I do not have the time nor willingness to invest that much into learning the inner workings good enough. As the warning on the above link says
Advanced users are expected to read the documentation. This is very important.
If you use advanced features without fully understanding them, uBO:
* might
* probably will
... behave in ways unexpected to you, and most likely you will end up being LESS protected than you would otherwise be with just default settings.
DO NOT UNDERESTIMATE THIS WARNING.
I heed this warning and keep away from the Advanced user features.

I searched for reddit on https://github.com/gorhill/uBlock/wiki/ but only found very old posts on that.

For now, I checked and re-checked my uBlock Origin settings. Aside from some filter lists being outdated due to network error (while others are up to date, so it's most likely not an network error from my side of things) all looks like it should be, and also that for now uBlock Origin seems not to be able to really reduce my reddit issue.

Therefore I will finally work on implementing this above tip:
moonbat wrote:
2023-09-30, 21:50
[Y]ou can also try URL Rewriter and set it to auto change reddit URLs to the old site.
I try URL Rewriter and will see how it works with login into reddit, since reddit insists on switching to the new reddit when I log into it. I will see how URL Rewriter handles that issue and will report back.
yours truly, Rava

User avatar
moonbat
Knows the dark side
Knows the dark side
Posts: 4862
Joined: 2015-12-09, 15:45
Contact:

Re: reddit performance

Unread post by moonbat » 2023-10-08, 00:37

uBlock Origin won't help you here for redirecting to old reddit.
Raava wrote:
2023-10-07, 19:00
I try URL Rewriter and will see how it works with login into reddit
Here's how you configure it in URL Rewriter:
URLrewriter reddit.png
"One hosts to look them up, one DNS to find them and in the darkness BIND them."

Image
Linux Mint 21 Xfce x64 on HP i5-5200 laptop, 12 GB RAM.
AutoPageColor|PermissionsPlus|PMPlayer|Pure URL|RecordRewind|TextFX

User avatar
Raava
Fanatic
Fanatic
Posts: 198
Joined: 2014-06-22, 22:23
Location: Europe

Re: reddit performance

Unread post by Raava » 2023-10-08, 02:15

moonbat wrote:
2023-10-08, 00:37
Here's how you configure it in URL Rewriter:

URLrewriter reddit.png
Thanks, that helps a lot.
But I had to create a 2nd Redirect:
Image
all my redirects so far:
Image

But the cookies nagging kept popping up at the bottom:
Image

When I was e.g. at https://old.reddit.com/r/duckduckgo/ and clicked on [Continue] on the nagging popup (or whatever you call it), I was redirected to https://old.reddit.com/. And that is less helpful when you want to get rid of the nagging popup and keep reading in your chosen reddit.
And here comes uBlock Origin to the rescue: I used its Element Picker Mode, selected the nagging popup and thus created this pattern:

Code: Select all

##.cookie-infobar.with-btn.with-icon.md-container-small.reddit-infobar
et voilà! - the annoying nagging popup is gone. :D (I presume the coders for reddit calling it an "infobar")

Thanks @all for all the tips.

And thus this thread turned into a HOWTO use Palemoon, URL Rewriter and uBlock Origin to together outdo all of reddit. Yay. :thumbup:

And just as heads up: when you want to use manual backups of your Palemoon settings and the settings of its Addons, uBlock Origin stores its settings including the personally created ones in its ublock0.sqlite :

Code: Select all

[complete palemoon path here]/extension-data$ grep "cookie-infobar.with-btn.with-icon.md-container-small.reddit-infobar" *
/bin/grep: ublock0.sqlite: binary file matches
and URL Rewriter seems to store its stuff in redirector.rjson

Code: Select all

[complete palemoon path here]/$ grep www.reddit * */* 2>&1 |grep -v "Is a directory"
/bin/grep: content-prefs.sqlite: binary file matches
/bin/grep: cookies.sqlite: binary file matches
/bin/grep: places.sqlite: binary file matches
redirector.rjson:            "exampleUrl": "https://www.reddit.com/*",
redirector.rjson:            "includePattern": "https://www.reddit.com/*",
/bin/grep: extension-data/ublock0.sqlite: binary file matches
[complete palemoon path here]/$ grep new.reddit * */* 2>&1 |grep -v "Is a directory"
/bin/grep: formhistory.sqlite: binary file matches
redirector.rjson:            "exampleUrl": "https://new.reddit.com/*",
redirector.rjson:            "includePattern": "https://new.reddit.com/*",
/bin/grep: extension-data/ublock0.sqlite: binary file matches
since I know what cookies.sqlite and places.sqlite is for, and I presume formhistory.sqlite only stores what you put into a form, and not settings per se, to make a suggestion when you use another form in the future - the only URL Rewriter settings file seems to be redirector.rjson
yours truly, Rava

User avatar
Raava
Fanatic
Fanatic
Posts: 198
Joined: 2014-06-22, 22:23
Location: Europe

Re: reddit performance

Unread post by Raava » 2023-10-12, 23:05

Finally RL gave me enough free time and also peace of mind to go and do real stuff on reddit (as: posting there), not just browsing.

So I am also back in here reporting about my experience.
All my changes have been adding URLrewriter with the two settings as described above (with screenshots)

I can log into reddit

When browsing reddit I keep on old.reddit wherever I went so far.

Browsing around https://support.reddithelp.com is also possible without my browser starting to slow down. Seems all that "telemetry bullshit" as moonbat called it is not part of support.reddithelp.com and hopefully it stays that way. Knocks on wood.

And finally, posting on reddit is also possible, I stay on whatever community I choose to join and in whatever community I choose to post, I stay on old.reddit and can see my own post (after changing the listing from "hot" to "new", that is)

So, for now as far as I can tell, all seems well. URLrewriter with only its two settings is able to defeat all the "telemetry bullshit" as moonbat called it, making a happy reddit experience like some years ago possible even when logging in, even when posting. :D As should be.
yours truly, Rava

User avatar
moonbat
Knows the dark side
Knows the dark side
Posts: 4862
Joined: 2015-12-09, 15:45
Contact:

Re: reddit performance

Unread post by moonbat » 2023-10-12, 23:33

BTW, there are filter lists specifically to get rid of cookie and GDPR alerts; if you add those you don't have to create separate manual filters in uBO. From the link above, search for 'cookie' and add EasyList Cookie and other similar ones. It should get rid of cookie consent banners on most sites.
"One hosts to look them up, one DNS to find them and in the darkness BIND them."

Image
Linux Mint 21 Xfce x64 on HP i5-5200 laptop, 12 GB RAM.
AutoPageColor|PermissionsPlus|PMPlayer|Pure URL|RecordRewind|TextFX

User avatar
Raava
Fanatic
Fanatic
Posts: 198
Joined: 2014-06-22, 22:23
Location: Europe

Re: reddit performance

Unread post by Raava » 2023-10-13, 01:12

^
I searched on https://filterlists.com for EasyList and got 7 sub-pages.
Went to the details via https://filterlists.com/lists/easylist
There it states
EasyList is the primary filter list that removes most adverts from international web pages, including unwanted frames, images, and objects. It is the most popular list used by many ad blockers and forms the basis of over a dozen combination and supplementary filter lists.
and further down when the mouse hovers over "subscribe" a popup states
Subscribe to EasyList with a browser extension supporting the "abp:" protocol (e.g. uBlock Origin, Adblock Plus).
and when clicking "Subscribe" to EasyList this happens:
abp:subscribe?location=https%3A%2F%2Feasylist.to%2Feasylist%2Feasylist.txt&title=EasyList opens
The address wasn’t understood

Pale Moon doesn't know how to open this address, because the protocol (abp) isn't associated with any program.

You might need to install other software to open this address.
I presume I have to go via the uBlock Origin dashboard itself.

Or is there a more convenient way of making an "abp:" request to work as intended in palemoon?
yours truly, Rava

User avatar
moonbat
Knows the dark side
Knows the dark side
Posts: 4862
Joined: 2015-12-09, 15:45
Contact:

Re: reddit performance

Unread post by moonbat » 2023-10-13, 01:46

You'll have to add the direct URL to the text file by clicking the view button instead of subscribe (all filter lists are served plaintext files) and copying the URL from the tab that opens up to uBlock Origin using the textbox at the bottom for manual URL entry.
"One hosts to look them up, one DNS to find them and in the darkness BIND them."

Image
Linux Mint 21 Xfce x64 on HP i5-5200 laptop, 12 GB RAM.
AutoPageColor|PermissionsPlus|PMPlayer|Pure URL|RecordRewind|TextFX

User avatar
Raava
Fanatic
Fanatic
Posts: 198
Joined: 2014-06-22, 22:23
Location: Europe

Re: reddit performance

Unread post by Raava » 2023-10-13, 18:16

moonbat wrote:
2023-10-13, 01:46
You'll have to add the direct URL to the text file by clicking the view button instead of subscribe (all filter lists are served plaintext files) and copying the URL from the tab that opens up to uBlock Origin using the textbox at the bottom for manual URL entry.
In chrome://ublock0/content/dashboard.html in tab Filter lists I already have in section "Ads"

Code: Select all

[✓] EasyList
- I presume it is the same EasyList?
yours truly, Rava

Post Reply