Bug Report OBS v0.655b CPU usage and FPS.

Cryonic

Member
Right now i try to stream LoL at the highest settings possible.
But i hit the CPU limit with 1080p 60FPS faster preset, with nothing more than my stream running in the background (its a +1 viewer + i can check it live), LoL, TS3 and some other background stuff, mostly windows internal crap and drivers.
LoL eats max 19% of the CPU, Chrome can jump up to 20% while watching something heavy in the flash player (damn twitch move dat thing called HTML5 finally in).
OBS is hitting the 60% peak, leading to FPS drops ingame. But i dont get the "high CPU usage" warning and on stream everything looks fine, i can just see the FPS ingame dropping all over the place, i see double digits pretty often and thats far away from being smooth.
So i had to roll back to veryfast, but even this is producing up to 30% load with a simple game like LoL.
Stuff that is harder to encode (something like Rust) will produce even more CPU-load, pushing OBS up into the 50% load zone while using the veryfast preset.

This is how it looks like with veryfast:
https://gist.github.com/anonymous/72f0e28071e7c671f29f

What the log doesnt tell you:
CPU is overclocked to 4,3GHz, properly cooled and primestable.
GPU is also overclocked by ~200Mhz on both VRAM and GPU itself.
16GB of DDR4 are used, with slight OC (2400) and sharp timings around CL12.
SSD is used for every programm running, recording is placed on a fast HDD.

My problem is not that i cant stream, my problem is just the overall too high CPU usage compared to what i had under Windows 8.1. And i need a solution for this, specially because some games actually use more CPU than LoL and i cant stream them with 1080p 60FPS anymore without crippling the preset. Going back to 8.1 is an option, but i like windows 10 and i need stability, decent performance and everything else just working.

P.S. i also get a ton of errors using the CLR browser/CLR host plugin and Ubiquitous2 Chat with the modified version of this plugin. Cant replace them so OBS MP is not an option (just for testing - i have it). And i get some memory leak errors in the log O_o
 

Osiris

Active Member
Hmmm, "02:54:54: successfully capturing d3d9 frames via CPU", it's supposed to say "via GPU"
Do you have a log from today? Wonder if it says the same thing there.

capturing via CPU is way slower. Do you have any logs from other games also? Mayb it's also dependent on the game.

When i capture CSGO it says it's capturing via the GPU.
 

Cryonic

Member
I can give you that:
https://gist.github.com/28097344d17ce6b65eb3

Thats the last log i have, was messing around there.
I just tryed LoL, but i can get some logs from other games, just recording them with same settings on the same scene.
I have no idea why the heck is this thing capturing via CPU. I know its slower, my rig is powerful enough to pull it off, but anyway that should not happen.
 

Cryonic

Member
The problem is still present.
Had a stream with just my Logitech C920 running fullscreen, set as global source and it was the only source in the scene.
1080p resolution, 60FPS (forgot to turn it down to 30, ignored it while streaming), Fast preset.
Average CPU usage: ~50% for OBS only. With a goddamn webcam in a pretty dark room, with way less stuff to encode than in games. Was a DJ-session, just to say what was captured.
That actually suprised me, how hungry OBS is without anything special going on. I know these settings would produce around 30-35% CPU-load under Windows 8.1, so where are the extra 15-20% CPU-load are coming from?
I dont mind it, its just interesting what is it and will it be fixed some day or not. My hardware is fast enough to keep 1080p 60fps with any game or application that i want to stream, but the idea behind my CPU and the heavy overclocking was: how far can i crank up the preset and how much quality can i squeeze out of the 3500 bitrate...
 

R1CH

Forum Admin
Developer
Using the fast preset is expected to increase CPU load. That's why there's a gigantic warning when you try to change it.
 

Cryonic

Member
Using the fast preset is expected to increase CPU load. That's why there's a gigantic warning when you try to change it.

Well i know. Thats what the i7 5820k @ 4,5GHz is for. I dont say that the CPU usage is just high, i say that the CPU usage with Windows 10 and x264 is higher than under Windows 8.1 with the same settings.

Where is the extra load coming from?
The only thing changed: Windows 8.1 to Windows 10. Everything else is the same, but Windows10 should perform even better, because the 8.1 that i used was not fresh at all, it had a lot of junk running in the background.
P.S. i feel like everything is using a bit more CPU-power under Windows 10, that includes Chrome, games (mostly LoL, never saw spikes up to 22% CPU-usage from that game), but the highest difference is coming from OBS while using the x264 econder.
 

R1CH

Forum Admin
Developer
Well if everything else is the same then the extra load is coming from Windows 10. Most likely drivers are not optimized as well yet.
 

Cryonic

Member
Well if everything else is the same then the extra load is coming from Windows 10. Most likely drivers are not optimized as well yet.

Well anything else works, i get a slightly better performance out of windows 10 in games etc (mostly because thats a clean install without a lot of junk that i had on 8.1 over years).
Its happening only with OBS, so i point at OBS for performing worse than it should.
The newest driver (GPU) changed nothing (it contains mostly fixes for some games and the SDK for GameWorks VR).
And i hoped for optimization during the insider preview duration, before release.
 
Top