80% processor usage with 9 cameras (direct to disk)

skysurf76

n3wb
Joined
Jul 12, 2021
Messages
9
Reaction score
7
Location
MIssouri
I have to be missing something. I have 9 cameras on my system, all direct do disk, no motion analysis, and on a Ryzen 5 5600 the 9 cameras are eating 80% of the processor. What do I need to look for?
 

Rob2020

Known around here
Joined
Oct 2, 2020
Messages
1,005
Reaction score
2,579
Location
OR USA
Someone smarter than me will be along I am sure to offer helpful advice.

My system;

Ryzen 7 2700, 4 Dahua (mix of 2/4 MP) recording 24/7, I have had an additional 2 - 3 Dahua hooked up at times and recording (still considering placement locations). I have yet to cross 14% CPU with 7 cams recording, also less than 4GB usage on the above.

This might help;

 

SouthernYankee

IPCT Contributor
Joined
Feb 15, 2018
Messages
5,170
Reaction score
5,320
Location
Houston Tx
Did you do a clean install of wins before install BI ?

do everything in the write up. I mean everything do not skip a step. Your CPU usage will be a little higher as it is not an Intel CPU with quick sync.



Look at similar CPUs of your type for there load.
 

skysurf76

n3wb
Joined
Jul 12, 2021
Messages
9
Reaction score
7
Location
MIssouri
Did you do a clean install of wins before install BI ?

do everything in the write up. I mean everything do not skip a step. Your CPU usage will be a little higher as it is not an Intel CPU with quick sync.



Look at similar CPUs of your type for there load.
I did a fresh windows install using the flash stick that came with the copy of windows 10 home.

I tried looking around for the install guide you mentioned but I can't seem to find it. If you could point me to it I would appreciate it. If you just meant the link in your response about CPU usage I did read that.

Just for some more info, I have 9 Annke 4k cameras running at 15FPS. All are direct to disk, and they all record continuously so there should be no analysis of any type happening. I have them set to record to BVR format.
 

sebastiantombs

Known around here
Joined
Dec 28, 2019
Messages
11,511
Reaction score
27,700
Location
New Jersey
Did you implement any of the suggestions in that link? Like using hardware acceleration? Like using sub streams, assuming the cameras are capable of sub streams?
 

skysurf76

n3wb
Joined
Jul 12, 2021
Messages
9
Reaction score
7
Location
MIssouri
Did you implement any of the suggestions in that link? Like using hardware acceleration? Like using sub streams, assuming the cameras are capable of sub streams?
No, not yet. I'm going to try substreams as soon as I get a chance. I'm skeptical about how much substreams will help though. I can understand that substreams would be beneficial if you're doing motion analysis as it presents much less data that has to be processed. However in my case I'm not doing any analysis. Additionally I read that the substreams make the live view use less CPU, however the CPU usage is 80% even without the GUI open. I'll give it a shot though.
 

looney2ns

IPCT Contributor
Joined
Sep 25, 2016
Messages
15,676
Reaction score
22,972
Location
Evansville, In. USA
No, not yet. I'm going to try substreams as soon as I get a chance. I'm skeptical about how much substreams will help though. I can understand that substreams would be beneficial if you're doing motion analysis as it presents much less data that has to be processed. However in my case I'm not doing any analysis. Additionally I read that the substreams make the live view use less CPU, however the CPU usage is 80% even without the GUI open. I'll give it a shot though.
You're not understanding the benefits of substreams. Either read The help file in Blue Iris or at the top of this page in the wiki read how to set up substrings
 

sebastiantombs

Known around here
Joined
Dec 28, 2019
Messages
11,511
Reaction score
27,700
Location
New Jersey
You can expect sub streams to reduce CPU utilization by a factor of anything from three to six. In other words, you're 80% will drop to ~30% or less. The same is true with hardware acceleration although the savings are not nearly as great.
 

skysurf76

n3wb
Joined
Jul 12, 2021
Messages
9
Reaction score
7
Location
MIssouri
You can expect sub streams to reduce CPU utilization by a factor of anything from three to six. In other words, you're 80% will drop to ~30% or less. The same is true with hardware acceleration although the savings are not nearly as great.
Okie dokie, I don't exactly understand it, but it seems to be the consensus so I'm going to do it :)
 

skysurf76

n3wb
Joined
Jul 12, 2021
Messages
9
Reaction score
7
Location
MIssouri
80% to 8% CPU usage. Unbelievable.

I wasn't trying to be argumentative, I just don't understand it. I ran into this same issue when I first tried using Zoneminder. When making a system that constantly records there should be virtually no CPU usage. The data just comes in the network card and gets put straight on a hard drive. I can understand when you have the GUI open that it takes alot of CPU to resize and display the streams as they are coming in, but with the GUI closed it makes no sense. Its almost like Zoneminder and BlueIris both have processes that are doing something with the streams even if you don't have any motion analysis on. In fact the massive CPU reduction kind of proves my point. In essence by switching the analysis (that it shouldn't even be doing because no analysis should be on) to the substream from the main stream you are massively reducing the data the "analysis" takes place on. So I still say there is a bug, or an architectural problem in the BlueIris software. Even with direct to disc on and no analysis of any form setup its still doing some kind of unnecessary processing on the incoming stream.

But...80% to 8%....I'll take it :)
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
25,375
Reaction score
49,403
Location
USA
We try to tell people substreams are a must, and people resist it LOL...A member here with 50 cameras on a 4th generation was pegged at 100% CPU and we got him to reluctantly agree to try the substreams and his usage dropped to 30%.

And no it isn't a bug in Blue Iris and your statement of "In fact the massive CPU reduction kind of proves my point." and "When making a system that constantly records there should be virtually no CPU usage" shows that you still do not understand how BI (or Zoneminder or any other VMS platform) uses the main and substream or how the program even works.

You seem to think that we can just throw unlimited cameras at a VMS and the CPU shouldn't be used in the process if you are not doing any analysis and just recording to HDD and that just isn't how computers and programs work. Heck downloading a movie will use the CPU and that isn't going through any program but a web browser, but in your analogy that shouldn't be the case and I should be able to download 100 movies at the same time with zero CPU usage... Heck just copying files from one folder to another uses CPU. Just moving the mouse around and not opening any programs uses CPU. Every action in a computer uses CPU to varying degrees.

Even using direct-to-disc, Blue Iris is still taking that video and processing it into proprietary BVR format. Any VMS system needs to process the video data into a format that the program can read and do something with.

Just like your car idling in park is still using gas even if you are not going anywhere, the computer needs to use CPU to handle all the data being thrown into the VMS. An NVR is basically a watered down CPU and it is being taxed as well with just video coming in.

I asked you to provide a screenshot of your BI Camera status page which you didn't do, but what drives up the CPU is the MP/s value down at the bottom. The higher that number, the harder the CPU has to work. And this number is independent of any video analysis. A computer and program cannot just accept unlimited video data without using the CPU. And the CPU goes up in usage with analysis. Your number without substreams was probably 8-10 times what it is now. All this data cannot just come into a VMS software with no load on a CPU.

Turn off the substreams and see what your MP/s value is and then turn them back on see that reduction in number - that is how CPU % is saved and the number is probably a factor of 10 difference.

In particular, substreams greatly reduce the number of MP/s your system needs to process. For example two "D1" resolution sub streams at 15 FPS each would be only around 10 MP/s (versus 249 MP/s for 4K main streams!).

My system was at 2,000MP/s before the substreams was introduced. It is now under 200MP/s. And that is how the CPU % savings is achieved. You are actually changing the MP/s that the program is dealing with.

You can accomplish the same thing by downrezing the mainstream to ridiculous low resolution and bitrates, but why would we want to do that.

When you configure a camera in Blue Iris to use a sub stream, Blue Iris pulls the video from both the "main" and "sub" streams. Each stream is used for different purposes and have different impacts to CPU usage.

The main stream is used for:
  • direct-to-disc recording
  • single-camera live viewing and recording playback
  • audio

The sub stream is used for everything else:
  • multiple-camera live viewing and multiple-camera playback
  • motion detection
  • alert snapshots
  • etc.
 
Last edited:

looney2ns

IPCT Contributor
Joined
Sep 25, 2016
Messages
15,676
Reaction score
22,972
Location
Evansville, In. USA
The blue Iris author has been doing this for over 20 years, I kind of think he probably knows what he's doing by now. Who cares if we understand, it works and it's a measly $60 program which is a pittance in the VMS world. Don't over think it.
 
Top