Bug Report OBS slowdown with high GPU usage [SOLVED - Disable G-Sync]

Waffles13

New Member
Any time I play a graphically demanding game my OBS preview window framerate drops considerably, regardless of whether I'm actually streaming or just have OBS running. I can play a game like Titanfall at 60-80 fps, but the OBS frame counter will display anywhere from 30fps down to 4 and the window will be appropriately slideshow-y. If I happen to be streaming then the stream will also be choppy, so it's not just a preview window thing. CPU usage during these slowdowns is usually less than 2%. Also, if I do stream, I never get actual dropped frames (according to OBS), the stream just looks like framey garbage. This happens regardless of my scene setup (display capture, window capture and game capture all slow down).

The main issue is that I was able to stream using this exact hardware configuration with OBS 16.x and earlier, and I usually tended to use display capture with no problem. Obviously if the game dipped below 60 so would OBS, but as long as I was playing at over 60 OBS would run locked at 60, regardless of what game it was or whether or not the GPU was at 100% utilization. I don't know what changed around version 17, but ever since then it's been borderline unusable and there's no way I'm going to frame cap a 144hz monitor when I stream, especially when I know for a fact that it worked just fine in the past.

Also, for some reason the upload log function refuses to work, so here's a link: https://gist.github.com/8dad0c640b2efe8f9a7e498d5b3a8a3d
 

Waffles13

New Member
Just to be clear, I understand that OBS uses GPU resources and if those resources are scarce, the preview/stream will suffer. My main issue is that it seems OBS in the past had a much higher priority for GPU resources and as a result it would always accurately display the game, even if that meant losing 1 or 2 in-game FPS to do it.

Also, as a side note, why is there's an option under Advanced for "Video Adapter" that is greyed out? I assume that if I could set OBS to run off of my secondary GPU while the game utilizes the primary it would completely circumvent my issue, but the option just doesn't work.

EDIT: An additional note: the issue is the preview window itself; if I disable the preview, the FPS counter in the bottom right seems to indicate that it's locked at 60. Running a stream with my normal settings with the preview turned off results in a stream that looks totally fine, with in game FPS at around ~80 and OBS FPS at 55-60 at all times.
 

Attachments

  • obs64_2017-03-06_00-26-47.png
    obs64_2017-03-06_00-26-47.png
    1.5 KB · Views: 467
Last edited:

Osiris

Active Member
Even if you could run OBS on the secondary GPU it would mean even more of a performance hit.
You should probably also connect all your monitors to the 980 TI (or at least as many as possible), since I assume you put OBS on one of the secondary monitors, this can impact OBS too.

Also I don't think OBS ever set any kind of priority for GPU tasks.
 

Waffles13

New Member
I don't think OBS ever set any kind of priority for GPU tasks.

Then something must have changed with the preview window itself to increase it's GPU usage to the point where it can't run alongside the game anymore. Also, this happens no matter what monitor the OBS window is on, even if it's on the same one as the game.

You should probably also connect all your monitors to the 980 TI

The 680 is in the system solely to take all of the extra monitors. Because of Nvidia's backwards power savings features, hooking up all of the monitors to the 980Ti results in it being either stuck in P0, aka it never idles. With the 680, I can hook up all but one to it and use Nvidia Inspector to force P8, which works totally fine and it means the 980Ti will idle and then ramp up when needed, saving a significant amount of power and heat. (As a side note, I did try turning off the Nvidia Inspector power saving mode for the 680 for troubleshooting; it didn't help at all). No game or other software has ever had any issue with this set up, including OBS in the past.
 
That's pretty much how it goes on OBS, since you can't prioritize the GPU usage on OBS. Interestingly if OBS is on top and you're playing a game that doesn't cap the FPS when in the background it doesn't show the slowdowns on OBS. I'm thinking this give more GPU priority on the program on top. Given OBS Studio has an option to set to "Always on top" I'm not sure how that would go when gaming at the same time. I currently only have one monitor at this time so I can't test this out right now.
 

Waffles13

New Member
Given OBS Studio has an option to set to "Always on top" I'm not sure how that would go when gaming at the same time.

Unfortunately I'm not seeing any change with "Always on top" enabled.

I have to wonder if a recent patch for Titanfall that added some graphics options happens to increase the GPU requirements to the point where it's not screwing with OBS in a way that it previously wasn't. I was already planning to upgrade to a 1080 Ti soon which should fix the issue short term, but I just worry that once another even more demanding game comes out it'll nuke my ability to stream again.
 

Waffles13

New Member
I don't mean to necro this thread, but I finally discovered that the cause of my issues was due to G-Sync, and not due to resolution, high refresh rates or multiple GPUs. There appears to be some sort of issue where the Nvidia drivers try to sync the refresh of the OBS window instead of the game, forcing the game to lock to an odd framerate and stutter heavily. Disabling G-Sync completely has 100% fixed the issue and now I can run with the GPU at 100% usage in multiple modern games and retain a solid 60fps stream at the same time, even when using display capture at 1440p. I'm still messing around with Nvidia Inspector to see if there are ways to enable G-Sync for the game .exe while disabling it for OBS, but thus far it seems the most consistent solution is to disable it altogether.

There also appears to be some sort of side issue with the "Multi-display adapter" setting in Game/Window Capture, where if enabled I still receive a slight (although less severe) version of the stuttering. Unticking Multi-display adapter seems to fix the issue, however.

I know it's not a perfect solution, but I'll happily take no G-Sync over being completely unable to stream various games.
 
Last edited:

aaceace

New Member
I'm having this same issue. OBS slows down when My GPU usage goes to 100% Usage. Was a fix or a work around for this ever figured out? Its extremely annoying.
 

RytoEX

Forum Admin
Forum Moderator
Developer
I'm having this same issue. OBS slows down when My GPU usage goes to 100% Usage. Was a fix or a work around for this ever figured out? Its extremely annoying.
I don't mean to necro this thread, but I finally discovered that the cause of my issues was due to G-Sync, and not due to resolution, high refresh rates or multiple GPUs.
According to the OP and thread title, the solution was disabling G-Sync.

If you are having a specific problem, the best recommendation I can give is to create your own thread and provide a detailed description and OBS log files.
 
I don't mean to necro this thread.....

I do! So I've got gsync on my asus rog pq..27 gaming monitor with my nvidia gefore 1080ti and i'm trying to resolve 1440p streaming to my streaming pc with NDI plugin and the framerates with Black Ops4 are atrocious because it uses over 90% of the GPU's processing power. I could downgrade to 1080p and go through my old capture card which worked for a year of streaming when i played on a 1080p mionitor, but i don't want to do that hence NDI pluging. Have you noticed a lot of screen tearing or v-sync stuttering since you did this? I don't want to turn off gsync and have a horrible gaming experience just to stream. thanks for your reply
 
Top