High CPU usage after upgrade from 1.34.26

Current Development version likely to have breaking changes
Post Reply
Mamonick
Posts: 5
Joined: Mon Sep 27, 2021 12:07 pm

High CPU usage after upgrade from 1.34.26

Post by Mamonick »

I have i9-10850K, 64GB ram on Fedora34 with 22 cameras 720p 10fps - Record, 17 cameras 1080p 10fps - Record, 78 cameras 1080p 8fps - Nodect.

All cameras are setup
source: ffmpeg
Target colorspace: 24 bit colour (to lower comsumption /dev/shm on 1.34.26 it took about 17GB on 1.37.1 2GB)
Save JPEGs: disable
Video Writer: Camera Passthrough
clear Timestamp Label Format
Maximum Image Buffer Size : 500 (change from 0 because log warning "Keyframe interval may be larger than MaxImageBufferCount and PreEventCount. Please increase MaxImageBufferCount" but doesnt help)
Pre Event Image Count: 8
Post Event Image Count: 8

On version 1.36.24 tooks abou 50% CPU with decoding all cameras.
On version 1.37.1 zoneminder handle max 90 cameras with DecodingEnabled it tooks about 40% CPU. With more cameras with DecodingEnabled it tooks 100% and doesnt start recording.

With disabled decoding it tooks about 2% CPU which is great, but I use liveview to check if camera is working and no one turned the camera in another direction. There are no alarms on many cameras all day. If zoneminder refresh snapshoot every hour as liveview preview it would be great.

Any ideas how to solve it?
dougmccrary
Posts: 1322
Joined: Sat Aug 31, 2019 7:35 am
Location: San Diego

Re: High CPU usage after upgrade from 1.34.26

Post by dougmccrary »

Maximum Image Buffer Size : 500 (change from 0 because log warning "Keyframe interval may be larger than MaxImageBufferCount and PreEventCount. Please increase MaxImageBufferCount" but doesnt help)
That might be because MaxImageBufferCount = 0 = unlimited


BTW, notice 1.37 is a development version, so you may rather use 1.36.8, the current release version.
Mamonick
Posts: 5
Joined: Mon Sep 27, 2021 12:07 pm

Re: High CPU usage after upgrade from 1.34.26

Post by Mamonick »

That might be because MaxImageBufferCount = 0 = unlimited
I tried many MaxImageBufferCount values and it doesnt seems to affect CPU usage.

Same issue with clear install of 1.36.5 with Target colorspace: 32 bit, then I tried development version with 32bit colorspace too.
dougmccrary
Posts: 1322
Joined: Sat Aug 31, 2019 7:35 am
Location: San Diego

Re: High CPU usage after upgrade from 1.34.26

Post by dougmccrary »

I tried many MaxImageBufferCount values and it doesnt seems to affect CPU usage.
Right. It may affect memory usage. The idea was you can't allocate more than unlimited buffers, so the message is a tad misleading in that case.

I wanted to clarify something.
Those cameras that are in nodect - you have analysis and decode turned off, and passthrough, or no recording?
Mamonick
Posts: 5
Joined: Mon Sep 27, 2021 12:07 pm

Re: High CPU usage after upgrade from 1.34.26

Post by Mamonick »

Those cameras that are in nodect - you have analysis and decode turned off, and passthrough, or no recording?
I am using python script to read motion detection alarm directly from cameras and turn on and off recording by telnet trigger. Analysis have to be on to make events.
I have disabled Save JPEGs, dont use any Optional Encoder Parameters, I have clear Timestamp and deleted Zones. I tried to use incoming stream without any changes and save it when alarm comes.
Post Reply