Question / Help CPU Goes Very High

RudyWisDOT

New Member
Thanks for the information. I just had the IT person here and we made sure that the NVIDIA driver was the only thing running the graphics, and he turned off a few other nonessential items that could possibly hog some resources. We ran another test, but after 5 minutes the CPU went from around 16% (recording a full frame HD camera image through the Roland) to 60% and 70%.

HOWEVER, we also had Task Manager running at the same time and that showed that OBS never used more than 17% of the CPU - even when OBS said it was using 60 or 70 percent. Do you know why the two would not be registering the same number? I can understand them being off by a couple of percentage points one way or the other, and that one might react faster to changes than another. But this was very obviously way off. When I stopped the recording, both apps registered a CPU usage no more than a percentage point or two of each other.

I'll check with our IT person about tracking the CPU temperature and see if that corresponds with the upswing in CPU usage. But if you find any info on why Windows and OBS would deliver so vastly different CPU usage readings, please share. That has us scratching our heads - on top of everything else that's making us scratch our heads. ;-)
 

Narcogen

Active Member
There are sometimes inconsistencies around reporting of CPU load. Sometimes, 100% means 100% of one core. Sometimes, 100% means 100% of the CPU.

If OBS is reporting 60-70% CPU usage, *but is not reporting encoder overload* and you aren't seeing dropped frames, then you may have nothing to worry about at all. A hardware encoder in your GPU would absolutely eliminate this issue, but the thing to be concerned about in OBS isn't purely the CPU load, but encoder/renderer overloads and dropped frame warnings.
 

RudyWisDOT

New Member
Just as a point of proper understanding: Regarding how are setup is run for all of our meetings, conferences, etc., it sounds as if you believe the PowerPoint slides originate from the same laptop that we run OBS. But that is never the case. The only thing that runs on our webcast laptop computer is the OBS software (and a browser session to YouTube when we're streaming live). All PowerPoint slides come from some different computer that is owned and run by whomever is giving the presentation. We plug in their output directly into the Roland, mix it with any other video and audio sources and that composite goes into the OBS laptop.

So when you say it's convoluted that the PowerPoint goes out from our laptop, into the Roland device and then back to the laptop, that is not the case.
 

Narcogen

Active Member
Just as a point of proper understanding: Regarding how are setup is run for all of our meetings, conferences, etc., it sounds as if you believe the PowerPoint slides originate from the same laptop that we run OBS. But that is never the case


Yes, that was what I was asking when I wrote:

Are you... are you sending powerpoint output from the laptop running OBS out to the Roland... and then back again?


The only thing that runs on our webcast laptop computer is the OBS software (and a browser session to YouTube when we're streaming live). All PowerPoint slides come from some different computer that is owned and run by whomever is giving the presentation. We plug in their output directly into the Roland, mix it with any other video and audio sources and that composite goes into the OBS laptop.

So when you say it's convoluted that the PowerPoint goes out from our laptop, into the Roland device and then back to the laptop, that is not the case.

Then that's clear, and it's best to aggregate all sources in one place, the Roland.
 

RudyWisDOT

New Member
I have some more data that, I hope, might narrow things down a bit. I did a live test webcast this morning, focusing the camera on the laptop's screen while running a CPU temp monitor and the Task Manager's Performance tab on top of the OBS screen. And this setup was done by running the auto-configure wizard from OBS and then tweaking it for YouTube's purposes. You can view the stream here: https://youtu.be/IO0STfKVdKY.

I think it's safe to say there's no problem with CPU overheating. Throughout the entire test, all 4 cores basically stayed in the mid to upper 50 degree Celsius range, well below the maximum numbers. So if it's doing some kind of thermal throttling, it's sure doing it without cause.

And you'll also notice that the speed of the CPU changes quite a bit. I wasn't expecting it to go so slow - especially when the amount of data that's being processed from the Roland device hardly changed: the screen you see is actually what was being recorded/broadcast, and that barely changed except for the data number updates.

Another thing to note is that when the CPU runs high for a long period of time, the fps will drop from the preset 30 fps. And when I'd look at the YouTube site, it would pop up an error message stating that the amount of data flow was going too low for it to produce a good stream. So even though stats on the OBS screen or the Task Manager may indicate that there's not a "big" problem happening, YouTube is certainly detecting a problem with the stream.

Unfortunately I forgot to grab a log file of this recording. Sorry about that. But I don't think it's going to show anything different than all the rest of the logs.

Perhaps I don't understand well what's going on under the hood, but it seems to me that the media input source was a very stable and consistent video stream. Yet the OBS data reading for the CPU would go anywhere from as low as 13% up to over 50%. I could see that if there was a lot of activity happening on the screen and audio changes too, there would be changes in the data stream. But this is almost as close as you can get to a static image-only item being displayed.

Anything jumping out at you?
 

Narcogen

Active Member
Maybe check and see if some sort of power savings regime is on. The CPU slowing down is basically throttling. If it's doing that at 50C, it's either doing it unnecessarily, or not doing it because of temperature at all.

High CPU, falling FPS, complaint from YouTube = encoding overload. It may well be that OBS should be performing on this hardware better than it is, but without seeing any particular reason for it, I'd say it's something to be brought up with the manufacturer, or perhaps checking with support forums specific to that machine to see if other users are experiencing similar performance issues.

As for workarounds, the usuals would be 1) faster CPU preset to trade quality for efficiency, or 2) dedicated hardware encoder.
 

RudyWisDOT

New Member
Narcogen, just wanted to say thanks, again, for all your help, and to give you a - what appears to be - very positive update.

I began exploring more about the QuickSync option you mentioned earlier. I found a YouTube video from an OBS Studio user and they walked through how it was initialized on their computer. So I disabled the NVIDIA driver on our laptop, enabled the Intel driver and selected the QuickSync encoding option in OBS.

So far the first test of a 20-minute recording went beautifully, never cracking 7% of CPU usage. Then I streamed a 2-hour long webcast set up in our typical configuration at full 1920 x 1080 recording and streaming and it, too, never broke above 7% with the CPU. We're running another live webcast now, and so far it's behaving just as we experienced in our initial tests. We'll probably continue to do such tests for the next day or two. If all goes well, I'll use it on the road for a real production on March 4th.

Still not sure why the initial tests worked so well right out of the box and these laptops failed. Perhaps the Intel driver was the one running on those and OBS automatically detected and configured for QuickSync. We certainly didn't go through all of these changes and settings. But if what I have set up right now works fine and isn't causing any problems with something else, I'm as happy as can be.

So, thank you, thank you, thank you for your assistance!
 

Narcogen

Active Member
Glad that is working for you!

QuickSync basically takes all the encoding load off the CPU by putting it onto special hardware just for that task. (It's still actually on your CPU, just on the part of it that's actually an integrated GPU.) It's not as high quality as the similar function of Nvidia cards, but it is good enough for many tasks.
 

RudyWisDOT

New Member
Well, for our purposes, this looks great. The quality of the streamed and recorded products appears to be just as high as our initial tests, and far better than what we had before with our other system. So we're quite pleased with the results.

When we observe the GPU monitor in Task Manager, it runs very steady between 49% and 56%, regardless of what's being captured on screen. We're good with that. And throughout the broadcasts, YouTube is telling us we have "excellent" performance.

We're re-imaging the 2nd laptop so the OS version and hardware/firmware settings are identical to this laptop. We're very confident that we'll have 2 great-running webcast computers to put into production very soon!
 
Top