[Coco] CPU utilization calculation in NitrOS-9

Johann Klasek johann+coco at klasek.at
Tue Jan 26 03:34:36 EST 2021


On Mon, Jan 25, 2021 at 11:22:52PM -0500, Alex Evans wrote:
> Just waiting, not waiting for I/O. If you run completely CPU bound
> processes, they will push up the load, but processes that are delayed
> by I/O can also push up the load.

It's an interpretation of Linux that counts uninterruptible device wait
processes as "to run" processes in context of load evaluation. This is
not the way all Unix system are calculating the load, especially
historically. E.g. Solaris, Ultrix, HPUX all etc. all consider just the
processes in ready (to run) state. In the days we switched from Solaris
to Linux many were wondering why Linux servers shows that much load. The
Linux server's hardware (except the CPU) had not that throughput of a
Solaris HW, slower disk leads to more device waits which drove the load
up. 
What I want to say is: Don't think that only what Linux does is "Unix".

The load shows the contention of a system. Even there are multiple cores
or CPUs, a load of 1 means that all CPUs/cores are utilized with a
running process. If a 4 core machine has load 1, 4 processes are currently
running, no other process is ready to run (just waiting on I/O or a
some other "event").

Johann



More information about the Coco mailing list