1.36.5 higher load vs 1.30.4

Discussions related to the 1.36.x series of ZoneMinder
Post Reply
rtochip
Posts: 8
Joined: Thu Nov 22, 2018 1:21 am

1.36.5 higher load vs 1.30.4

Post by rtochip »

HARDWARE:
Intel(R) Core(TM) i5-4460 CPU @ 3.20GHz
MemTotal: 8048476 kB


SOFTWARE:
We have 2 HDD (both WD 4TB Purple)
System A:
Welcome to Ubuntu 16.04.7 LTS (GNU/Linux 4.4.0-210-generic x86_64)

uname -a
Linux ***-*** 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
zoneminder 1.30.4

mysql show variables like '%version%';
| innodb_version | 5.7.33 |
| protocol_version | 10 |
| slave_type_conversions | |
| tls_version | TLSv1,TLSv1.1,TLSv1.2 |
| version | 5.7.33-0ubuntu0.16.04.1 |
| version_comment | (Ubuntu) |
| version_compile_machine | x86_64 |
| version_compile_os | Linux |
+-------------------------+-------------------------+

System B:
Ubuntu 20.04 Server
uname -a
Linux ??-?? 5.4.0-80-generic #90-Ubuntu SMP Fri Jul 9 22:49:44 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
zoneminder 1.36.5
copied zm database from 1.30.4 and run zmupdate.pl up to 1.36.5

mysql show variables like '%version%';
| admin_tls_version | TLSv1,TLSv1.1,TLSv1.2,TLSv1.3 |
| immediate_server_version | 999999 |
| innodb_version | 8.0.25 |
| original_server_version | 999999 |
| protocol_version | 10 |
| slave_type_conversions | |
| tls_version | TLSv1,TLSv1.1,TLSv1.2,TLSv1.3 |
| version | 8.0.25-0ubuntu0.20.04.1 |
| version_comment | (Ubuntu) |
| version_compile_machine | x86_64 |
| version_compile_os | Linux |
| version_compile_zlib | 1.2.11 |



ISSUES:
- Running system A described above: Load average around 0.8 and around 10% wa. The CPU load occasionally goes up to 1.2 (audit/filters run).
- With the same hardware, running system B shows load average around 1.8 and 20-30% wa.
- WIth System B, mysql command 'show processlist' shows "waiting for handler commit" status for the Insert Logs command.
- WIth System B, running iostat shows typical iowait of 20%.


QUESTIONS:
- Is this normal behaviour for zm 1.36.5?
- If not, what can we do to reduce load on system B?
bbunge
Posts: 2930
Joined: Mon Mar 26, 2012 11:40 am
Location: Pennsylvania

Re: 1.36.5 higher load vs 1.30.4

Post by bbunge »

Looks normal to me. 1.36.x is a lot different from 1.30.x especially in the memory usage area. Also consider if you are recording video on 1.36.x and not just .jpeg images. Video uses more processes.

You might also do better using Mariadb in place of MySQL.
rtochip
Posts: 8
Joined: Thu Nov 22, 2018 1:21 am

Re: 1.36.5 higher load vs 1.30.4

Post by rtochip »

1.30.4 = 24 analog recording + 6 ip monitor + 1 ip recording to jpeg

1.36.5 = 24 analog recording + 6 ip monitor + 1 ip recording with h264 passthrough

I will try using mariadb and see if there is any load differences vs mysql.

Thanks for the quick reply.
User avatar
burger
Posts: 390
Joined: Mon May 11, 2020 4:32 pm

Re: 1.36.5 higher load vs 1.30.4

Post by burger »

Try lowering analysis FPS (on ZM) and or lower resolution or framerates (on the cameras, not zm). This will lower CPU / ram usage.

The above technique is used for SBCs / ARM based boards to some effect.
fastest way to test streams:
ffmpeg -i rtsp://<user>:<pass>@<ipaddress>:554/path ./output.mp4 (if terminal only)
ffplay rtsp://<user>:<pass>@<ipaddress>:554/path (gui)
find paths on ispydb or in zm hcl

If you are new to security software, read:
https://wiki.zoneminder.com/Dummies_Guide
rtochip
Posts: 8
Joined: Thu Nov 22, 2018 1:21 am

Re: 1.36.5 higher load vs 1.30.4

Post by rtochip »

To: burger:
Try lowering analysis FPS (on ZM) and or lower resolution or framerates (on the cameras, not zm). This will lower CPU / ram usage.

= the load is tolerable. i am just curious why with the same setup (hardware, fps, resolution, number of cameras etc) has the 1.36.5 showing higher cpu load and iowait compared to 1.30.4.
ergamus
Posts: 27
Joined: Sat May 29, 2021 10:09 am

Re: 1.36.5 higher load vs 1.30.4

Post by ergamus »

rtochip wrote: Sat Jul 24, 2021 12:09 am To: burger:
Try lowering analysis FPS (on ZM) and or lower resolution or framerates (on the cameras, not zm). This will lower CPU / ram usage.

= the load is tolerable. i am just curious why with the same setup (hardware, fps, resolution, number of cameras etc) has the 1.36.5 showing higher cpu load and iowait compared to 1.30.4.
Because there has been a regression in performance. See the other threads talking about increased CPU load/memory usage/memory leaks, etc.
User avatar
Acewiza
Posts: 72
Joined: Thu Dec 31, 2020 4:52 pm

Re: 1.36.5 higher load vs 1.30.4

Post by Acewiza »

rtochip wrote: Sat Jul 24, 2021 12:09 am i am just curious why with the same setup (hardware, fps, resolution, number of cameras etc) has the 1.36.5 showing higher cpu load and iowait compared to 1.30.4.
Timing. The faster code simply has time to do more work. There's alot going on after you start recording a dozen or more cams. I proved my situation by upgrading a 7/27 to a 9/39 Ryzen. The log runs green almost all the time now, and average CPU utilization rates cut almost in half with 4 more cores. Not gonna worry about the code, just hardware.
User avatar
Acewiza
Posts: 72
Joined: Thu Dec 31, 2020 4:52 pm

Re: 1.36.5 higher load vs 1.30.4

Post by Acewiza »

It's trivially telling how CPU temp tracks across a 30°F range, depending on what ZM features are active at any given time.
rtochip
Posts: 8
Joined: Thu Nov 22, 2018 1:21 am

Re: 1.36.5 higher load vs 1.30.4

Post by rtochip »

Sorry for the late reply but i got busy and just finished dropping mysql and replaced it with mariadb as suggested by bbunge.

Please see observations below for zm 1.36.5 with mariadb Ver 15.1 Distrib 10.3.29-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2:

The iowait is now down to 7.2% to 13% after about 20 minutes of running. It sometimes goes up to 20-30% occasionally presumably due to mp4 file processing?

The CPU is also down to 0.9 to 1.55.

Thanks for the advises, replies and suggestions.
Post Reply