Discord & Origin clients hammering registry / disk

Everything about latency. Tips, testing methods, mouse lag, display lag, game engine lag, network lag, whole input lag chain, VSYNC OFF vs VSYNC ON, and more! Input Lag Articles on Blur Busters.
howiec
Posts: 183
Joined: 17 Jun 2014, 15:36

Discord & Origin clients hammering registry / disk

Post by howiec » 15 Nov 2020, 19:31

So I submitted support tickets months ago and also posted on respective subreddits but no action has been taken.

The Discord support techs I got were basically incompetent, were obviously following a script, and lacked basic English comprehension, lol.

Discord hammers your registry and disk with about 40,000 events per minute.

Origin is generating roughly 22,000 disk read/write events per minute.

Beware that they are both repeating the same operations over and over for no good reason and are:
  • consuming CPU cycles & producing numerous context switches
  • wearing out your disk (unnecessary writes are bad for SSDs)
  • certainly affecting system performance which can alter your mouse "feel" in-game.
Others have also seen similar negative symptoms.

diakou
Posts: 83
Joined: 09 Aug 2020, 11:28

Re: Discord & Origin clients hammering registry / disk

Post by diakou » 15 Nov 2020, 23:12

I agree with the overall context that Discord is possibly destroying performance - especially the more servers you're in. However when making claims such as these, especially when it is so specific, it would be very nice if you could back it up with some of the evidence.

The claims themselves are fine, but it would help everyone (and yourself) if you could attach some sort of evidence, reading material, similar experiences etc with it. It seems you have some specific numbers, so if there's anything that can lead to those, that'd be very nice.

Overall, I agree that discord might be causing problems against responsiveness, almost every single time I exit it, I have a completely different gameplay feeling in my game, could always be statistically insignificant or placebo, have no empirical way of testing :P

howiec
Posts: 183
Joined: 17 Jun 2014, 15:36

Re: Discord & Origin clients hammering registry / disk

Post by howiec » 15 Nov 2020, 23:17

diakou wrote:
15 Nov 2020, 23:12
I agree with the overall context that Discord is possibly destroying performance - especially the more servers you're in. However when making claims such as these, especially when it is so specific, it would be very nice if you could back it up with some of the evidence.

The claims themselves are fine, but it would help everyone (and yourself) if you could attach some sort of evidence, reading material, similar experiences etc with it. It seems you have some specific numbers, so if there's anything that can lead to those, that'd be very nice.

Overall, I agree that discord might be causing problems against responsiveness, almost every single time I exit it, I have a completely different gameplay feeling in my game, could always be statistically insignificant or placebo, have no empirical way of testing :P
True, I just expected those who care would simply run Process Monitor to see for themselves but I shouldn't assume.

Data:
http://s000.tinyupload.com/index.php?fi ... 4733633940

The change in mouse sens/feel is s extremely obvious depending on which game you're playing and how your system is configured.
Apex Legends for example is extremely sensitive to any changes in system performance likely due to poor coding, so this effect is exacerbated for it.
Last edited by howiec on 15 Nov 2020, 23:23, edited 1 time in total.

diakou
Posts: 83
Joined: 09 Aug 2020, 11:28

Re: Discord & Origin clients hammering registry / disk

Post by diakou » 15 Nov 2020, 23:23

howiec wrote:
15 Nov 2020, 23:17
You can simply run Process Monitor to see for yourself.

Data:
http://s000.tinyupload.com/index.php?fi ... 4733633940
Hah - yes of course. That wasn't my main point, there's many frequent visitors to these forums. Not everyone want to bother opening files or figuring out if a claim is true or not by finding the evidence / material in the first place. People love being able to compare another persons findings or results. And unfortunately we also live in a time/era where even though we are wasting a lot of time often, the internet culture as a whole has a short attention span. Just saying it would help a lot of people to believe and spread your info further for possibly making a change if it is true, with provided material/evidence rather than just a discussion. Then again, your goal may have not been that of course, but given that you said you tried to contact support and got no real answer, the only other way would be to spread info and hopefully either it becomes too big to avoid, or you reach the ears of someone who might have influential power.

howiec
Posts: 183
Joined: 17 Jun 2014, 15:36

Re: Discord & Origin clients hammering registry / disk

Post by howiec » 15 Nov 2020, 23:24

diakou wrote:
15 Nov 2020, 23:23
howiec wrote:
15 Nov 2020, 23:17
You can simply run Process Monitor to see for yourself.

Data:
http://s000.tinyupload.com/index.php?fi ... 4733633940
Hah - yes of course. That wasn't my main point, there's many frequent visitors to these forums. Not everyone want to bother opening files or figuring out if a claim is true or not by finding the evidence / material in the first place. People love being able to compare another persons findings or results. And unfortunately we also live in a time/era where even though we are wasting a lot of time often, the internet culture as a whole has a short attention span. Just saying it would help a lot of people to believe and spread your info further for possibly making a change if it is true, with provided material/evidence rather than just a discussion. Then again, your goal may have not been that of course, but given that you said you tried to contact support and got no real answer, the only other way would be to spread info and hopefully either it becomes too big to avoid, or you reach the ears of someone who might have influential power.
Yeah, I agree. Gotta make it easy to digest or view these days with all the distractions I guess. I edited post right after (sorry for diff quote).

User avatar
Chief Blur Buster
Site Admin
Posts: 11653
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Discord & Origin clients hammering registry / disk

Post by Chief Blur Buster » 16 Nov 2020, 17:22

howiec wrote:
15 Nov 2020, 19:31
Discord hammers your registry and disk with about 40,000 events per minute.

Origin is generating roughly 22,000 disk read/write events per minute.
Great catch!

Do you have the stats screenshots? And any links to any issue tracking system? (I don't know if they use a public github-style or BugZilla-style system -- but if they do -- then mutliple expert users should pile-in statistics).

Many modern systems have a lot of write caching, write levelling and algorithms that will greatly mitigate thsese writes. So the 40,000 events per minute will likely coalescence to just about 10 to 60 actual SSD writes per minute, likely all on different sectors even for the same block in the same file (thanks to automatic wear leveling algorithms). Windows 10 does a massive amount of coalescencing for registry writes and batches them up, so the actual writes are much more intermittent (like once a second or once every two seconds).

However, with the increase in users using TLC and QLC SSDs which are more wear-sensitive, it becomes a concern when an application hammers an SSD excessively, especially since it can add latency to the user's game to have background disk accesses occuring several hundreds times per second.

Think like a security researcher: How do security researchers urgently reach corporations? They have techniques:
-- In some cases -- given an unlimited budget -- it becomes useful to purchase paid LinkedIn credits ($$$) and actually message a PM or software engineers directly (after searching/finding them down);
-- Or other unconventional reporting techniques such as mailing a FedEx envelope with printouts-proof to that said contact -- like a security researcher might do when they're having difficulty reaching a corporation about a rather severe security hole.

Basically high-priority-contact channels that sometimes require spending money. It's a royal pain, but often quite super very effective if the right contacts are surgically selected (a PM, and a couple of top engineers), to catch a company's attention. This move must be done carefully and surgically, only for the most high-emergency bug reports when all other channels fail. Overloading these channels means they tend to close and the company gets harder to reach. But the trick is often to not exclusive rely on the common Level 1 retail-contacting channels and low-effort contacting channels: Just clicking Send on an email is not enough. Legwork and money is usually needed to catch a balky corporation's attention.

Mind you, thanks to realatively good coalescencing of SSD writes in the modern era -- I don't think this kind of issue (yets) warrants such an unusual escalation so try lower-lying apples like finding Discord channels (like a Discord channel with a bug reporting area) -- but if further data (at the SSD controller level) shows issues -- then carefully selected headlines like "Discord is damaging my SSD: I have a debug log and screenshot") -- sometimes such bait catches attention when a boss or PM does a double take and then asks an engineer if it's real, etc. Use your marketing skillz & school essay paper skillz (correct paper title selection etc) as appropriate.
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

Image
Forum Rules wrote:  1. Rule #1: Be Nice. This is published forum rule #1. Even To Newbies & People You Disagree With!
  2. Please report rule violations If you see a post that violates forum rules, then report the post.
  3. ALWAYS respect indie testers here. See how indies are bootstrapping Blur Busters research!

howiec
Posts: 183
Joined: 17 Jun 2014, 15:36

Re: Discord & Origin clients hammering registry / disk

Post by howiec » 17 Nov 2020, 00:39

Chief Blur Buster wrote:
16 Nov 2020, 17:22
Great catch!

Do you have the stats screenshots? And any links to any issue tracking system? (I don't know if they use a public github-style or BugZilla-style system -- but if they do -- then mutliple expert users should pile-in statistics).

Many modern systems have a lot of write caching, write levelling and algorithms that will greatly mitigate thsese writes.

...

However, with the increase in users using TLC and QLC SSDs which are more wear-sensitive, it becomes a concern when an application hammers an SSD excessively, especially since it can add latency to the user's game to have background disk accesses occuring several hundreds times per second.

Think like a security researcher: How do security researchers urgently reach corporations? They have techniques:
-- In some cases -- given an unlimited budget -- it becomes useful to purchase paid LinkedIn credits ($$$) and actually message a PM or software engineers directly (after searching/finding them down);
-- Or other unconventional reporting techniques such as mailing a FedEx envelope with printouts-proof to that said contact -- like a security researcher might do when they're having difficulty reaching a corporation about a rather severe security hole.

...

Use your marketing skillz & school essay paper skillz (correct paper title selection etc) as appropriate.
Thanks for the great recommendations!

Yeah, the support tickets were just my very first attempts at raising awareness to the Discord and EA devs to improve or mitigate this issue. Will def continue trying other routes with "picture packages" for easier digestion.
Discord support was just using emails so no links there.
Here's a link to an EA post for Origin:
https://answers.ea.com/t5/Origin-Client ... lse#M97189

The data files I linked above contain the same info (1 is .CSV and other can be viewed in Process Monitor).
The duration was just over 1min with around 40k events for Discord and the timestamps are in the files.

Here are some screen shots of some operations that are repeated over and over at an insane rate:

Image
Image
Image

Origin also has similar issues.


Yeah, the unnecessary wear and tear on our SSDs should not be ignored but as you said, luckily the various algorithms should help mitigate it to some degree. Will emphasize the "damage" risk during comms. It'd be foolish for them to ignore that from a liability perspective.

MT_
Posts: 113
Joined: 17 Jan 2017, 15:39

Re: Discord & Origin clients hammering registry / disk

Post by MT_ » 18 Nov 2020, 17:11

Mhh..,

What about standalone discord vs in-browser? I usually have a browser in the background anyway while playing games, and browser discord has less features I assume it also has less OS rights as firefox (here) runs with low privileges even when running as built-in admin.

Another curious question is, as i can barely find anything on this topic; Is it better to run apps like browser, discord, and steam (steamwebhelper.exe) with GPU hardware acceleration on or off for the sake of gaming?

WDDM gpu scheduling and potential context switching vs run most on CPU (which is also easier to prioritize?
LTSC 21H2 Post-install Script
https://github.com/Marctraider/LiveScript-LTSC-21H2

System: MSI Z390 MEG Ace - 2080 Super (300W mod) - 9900K 5GHz Fixed Core (De-lid) - 32GB DDR3-3733-CL18 - Xonar Essence STX II

howiec
Posts: 183
Joined: 17 Jun 2014, 15:36

Re: Discord & Origin clients hammering registry / disk

Post by howiec » 19 Nov 2020, 00:16

MT_ wrote:
18 Nov 2020, 17:11
What about standalone discord vs in-browser? I usually have a browser in the background anyway while playing games, and browser discord has less features I assume it also has less OS rights as firefox (here) runs with low privileges even when running as built-in admin.

Another curious question is, as i can barely find anything on this topic; Is it better to run apps like browser, discord, and steam (steamwebhelper.exe) with GPU hardware acceleration on or off for the sake of gaming?

WDDM gpu scheduling and potential context switching vs run most on CPU (which is also easier to prioritize?
If you're playing anything sensitive or resource intensive (e.g. Apex Legends, not Disco Elysium), I would definitely recommend not to run a browser in the background.

Browsers can have a ton of threads (e.g. 500+) and vary resource load with its varying activity, leading to inconsistency on top of potential stutter.
I would say the SSD wear and tear from the Discord client is undesirable but because it's repeating the same operations over and over, it's at least relatively consistent. So I guess you can pick the lesser of 2 evils for your use-case.

Similar to the above, I would also recommend disabling GPU acceleration for everything aside from the game. In the past I've noticed large negative effects on stutter/performance with it enabled.

Context switching historically refers to CPU threads and related resource de/reallocation.
So I'm guessing that your question is "Do you prioritize minimizing GPU or CPU contention?"

I would say that you have more control over the CPU (e.g. core affinities) vs the GPU, so I would prioritize freeing the GPU to focus on 1 or as few items as possible.

MT_
Posts: 113
Joined: 17 Jan 2017, 15:39

Re: Discord & Origin clients hammering registry / disk

Post by MT_ » 19 Nov 2020, 17:35

howiec wrote:
19 Nov 2020, 00:16
MT_ wrote:
18 Nov 2020, 17:11
What about standalone discord vs in-browser? I usually have a browser in the background anyway while playing games, and browser discord has less features I assume it also has less OS rights as firefox (here) runs with low privileges even when running as built-in admin.

Another curious question is, as i can barely find anything on this topic; Is it better to run apps like browser, discord, and steam (steamwebhelper.exe) with GPU hardware acceleration on or off for the sake of gaming?

WDDM gpu scheduling and potential context switching vs run most on CPU (which is also easier to prioritize?
If you're playing anything sensitive or resource intensive (e.g. Apex Legends, not Disco Elysium), I would definitely recommend not to run a browser in the background.

Browsers can have a ton of threads (e.g. 500+) and vary resource load with its varying activity, leading to inconsistency on top of potential stutter.
I would say the SSD wear and tear from the Discord client is undesirable but because it's repeating the same operations over and over, it's at least relatively consistent. So I guess you can pick the lesser of 2 evils for your use-case.

Similar to the above, I would also recommend disabling GPU acceleration for everything aside from the game. In the past I've noticed large negative effects on stutter/performance with it enabled.

Context switching historically refers to CPU threads and related resource de/reallocation.
So I'm guessing that your question is "Do you prioritize minimizing GPU or CPU contention?"

I would say that you have more control over the CPU (e.g. core affinities) vs the GPU, so I would prioritize freeing the GPU to focus on 1 or as few items as possible.
I guess it depends on how fine grained the GPU scheduler is, but the same goes for VRAM Allocation. These apps can chew on a whole load of dedicated VRAM, obviously one would think when playing a game, all this gets reduced or placed back in main (shared vram) memory until refocussed, but not sure if that is actually happening.

There have been numerous reports about 'hardware acceleration' in applications bork gaming experience but this was (mostly?) in the Windows 7/8 era, it seems with recent hardware/OS they solved most of this though. (WDDM 2.x etc)

But yeah indeed its very easy to suspend, prioritize or set affinities on a mostly cpu-bound only applicatioon vs one that shares GPU with others. Luckily i have a background script where I can easily modify a list of programs (or reverse) once focussed on a fullscreen game to automate this management.

Sadly discord is a must these days for communication so maybe I'll just suspend my browser in the background and run standalone discord (and limit it to a single core)

These sections being written to disk, if they are not crucial it shouldn't be too hard to run discord as a special user and disallow write permissions to that position?
LTSC 21H2 Post-install Script
https://github.com/Marctraider/LiveScript-LTSC-21H2

System: MSI Z390 MEG Ace - 2080 Super (300W mod) - 9900K 5GHz Fixed Core (De-lid) - 32GB DDR3-3733-CL18 - Xonar Essence STX II

Post Reply