Chatterino / chatterino2

Chat client for https://twitch.tv
MIT License
2.02k stars 445 forks source link

Fullscreen Chatterino uses 60% GPU through csrss.exe #2242

Open dominikprot opened 3 years ago

dominikprot commented 3 years ago

On Windows 10 20H2 when I use Chatterino in Fullscreen I get 60% GPU usage through csrss.exe. The GPU usage drops the smaller the window gets. If I minimize the window the usage drops to zero. Nvidia GTX 1070 Card, current drivers. Chatterino 2.2.2-fix

ALazyMeme commented 3 years ago

Cannot reproduce. My GPU usage sits at 3% while using Chatterino - it's always fullscreen. Windows 10 GTX 1080 ti - v457.30 commit 05aab8684

mattbuford commented 3 years ago

I'm seeing something similar, but not nearly as extreme. I get an increase/decrease of about 10% GPU and 5% CPU between maximizing and minimizing Chatterino. I just have it sitting in a single channel with less than one line of chat per minute now, so all of that load is just the idle load (of a few animated emotes on the screen).

After a bit of experimentation, I believe this is strongly correlated to resolution (as OP did mention). If I make my Chatterino window sized to roughly 1/4th of my 4k screen (which should be equal to a 1080p maximized window) the load is much less significant. If I maximize it up to the full 4k, the load jumps noticeably.

I'm on up to date win10 and geforce drivers with Chatterino 2.2.2-fix. My hardware is a i7-6700k, 48 GB RAM, and a GTX 1070 Ti. I'm using 125% display scaling if that matters.

It's not crazy high load for me, but it does seem unexpected for a basically idle chat app. It's enough that I actively try to remember to always minimize Chatterno when not using it. It's even noticeable in electrical usage, as maximizing Chatterino increases my power draw by about 15 watts.

image

image

orogenic commented 2 years ago

Anecdotal, on Arch Linux, CPU usage is ~20% fullscreen, and gets lower as I reduce the window size (%4 at the size I typically have it).

freeman42x commented 1 year ago

Chatterino2 version 2.4.4 is using:

This is on NixOS Linux and on an older laptop but even on Windows 11 and a new laptop it was also using very high CPU (around 15% or so iirc)

Any idea on where in the code base this issue might be coming from? Would like to fix it if possible as its a big CPU hog and would rather not have to CPU limit it.

freeman42x commented 1 year ago

Related issue: https://github.com/Chatterino/chatterino2/issues/3893

pajlada commented 1 year ago

You could try disabling animated emotes and see if that helps @freeman42x

Nerixyz commented 1 year ago

Any idea on where in the code base this issue might be coming from? Would like to fix it if possible as its a big CPU hog and would rather not have to CPU limit it.

You can try to analyze it. There are several tools out there. On Windows, you can try the Windows Performance Recorder (this captures the entire system), or, to get a more granular view, Intel VTune or AMD μProf. On Linux, you're probably good with perf (although VTune and μProf should work there as well).

On Windows, make sure you have the symbol files for both Chatterino and Qt, otherwise you won't get much information out of your analysis. Chatterino's symbol files are available for each release. Qt's symbol files come with a Qt installation (make sure the versions match up) and can be found in <qt.path>\<qt-version>\msvc2019_64\bin (although there's probably a symbol server for Qt out there).

itsnotoger commented 8 months ago

I have the same issue, I think. My CPU with small Chatterino window is around 3 to 6%, on 4k window it goes to 35% for the Chatterino process. Version 2.4.6. GPU also goes up to 40%, on a 1060 (6 GB version). Only the 3D category in task manager is affected.

I tested this on a fresh install (settings deleted) and only a single chat open, with no activity.

Turning off animated emotes fixes it, down to near 0% GPU usage and less than 1% CPU.