Asterisk Raspian Htop top

I know it only has something indirectly to do with Asterisk, but does anyone know about “htop” or “top”?

If I measure the performance here, I get over 100%.!
Anmerkung 2020-08-05 204158|690x226

best regards

That value represents the total amount of CPU time assigned to this set of processes and threads per CPU core.
So, if these threads are spread over multiple cores, they can consume more time than a single core could give.
Thus, you can theretically expect up to 400% CPU time on a quadcore CPU for multi-threaded processes like Asterisk.


If I divide my measured value of 104% by 4, that’s 26%.
Can I say that the Raspberry CPU is 26% fully occupied?

More or less: Yes.
But you shouldn’t be relying too much on the CPU time value, but on the “Load average” value.
The load average takes also into account, if many read/write requests to slow storage devices are queued, also if there are many system interrupts (i.e. those from network adapters at very high packet rates), and a lot more.
As a general rule, that load average value (1 min) should not be greater than the total count of CPU cores.
If it’s greater, you should look what is causing the load, since it’s not necesserily the CPU.
On a raspberry, high load can also be caused by too many requests pending and waiting to be answered by a slow SD card, for example.
But a high load average value is also not a definite indicator, that something is overloading the system and causing calls to be interrupted or audio to be stuttering.

1 Like

Linux Load Averages: Solving the Mystery may help.

I would be very cautious extrapolating expected values from observed values, especially in a Raspberry environment where substantial compromises have to be made to keep within price constraints.

You have a lot of resources to consider:

) Number of cores
) Single core capacity - not all tasks can be spread out across cores
) Memory bandwidth
) Memory size - performance (especially on a Pi) can go to hell quickly if swapping
) Network capacity - especially if Ethernet shares limited bandwidth with USB
) Disk (MicroSD) - which have ‘on the card’ controller and cache limits

Running out of any may be a limiting factor.

The only way to know the percentage of ‘occupancy’ would be to max out your workload on your hardware.

Also, how you define the acceptable limits may be audience dependent. Your CEO in a high level conference call may be less tolerant of a few dropouts than your co-workers listening to on-hold music.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.