the total cpu maximum (summary for all CPU core resources) is 100% in Monit.
Single threaded application (such as soffice) which uses 100% of single CPU will count for 100/number_of_cpus [%]
For example if you have 8 CPUs/cores:
- multithreaded application (e.g. MySQL) or application with multiple child processes (Apache) which which will hog all cpus will show up as 100% cpu usage
- if single threaded application will hog cpu, it will show as 100/8=12.5%
The way how monit counts the cpu usage is similar to how memory and disk usage is presented by the system: 100% memory usage = summary of all memory sticks in the system, 100% filesystem usage = summary of free subdisks capacity (in case of RAID 0/5/6). If we'll go with the model where every CPU will be 100%, then multi-CPU systems will report for example 800%
CPU usage in above described multithreaded application case, which will be less natural.
On Jan 20, 2013, at 5:31 PM, Aaron <address@hidden> wrote:
I am having trouble with config for process cpu testing.
I have an occasional runaway soffice process that literally consumes > 90% cpu until restarted. That would mean it's using one core fully.
In "top" this process doesn't dip under 95%, but my test where >90% for 4 cycles, restart never fires.
Is monit looking at some other number to base its percentage calculation?
Thanks for any tips.