User cpu time VS system cpu time

Ivan Voras ivoras at freebsd.org
Thu May 6 12:21:05 UTC 2010


On 05/06/10 13:33, cronfy wrote:
> Hello,
>
>>> I want to understand difference between user CPU time and system CPU
>>> time in system accounting.
>> But keep in mind that "kernel time" is a broad category - while IO time in
>> itself does not count as CPU time, file system operations for example do,
>> because they really can be CPU intensive.
>
> Ivan, thanks for the great explanation.
>
> I think that I can measure user filesystem usage with sa - it reports
> number of IO operations per user/command. In which other cases kernel
> time is used instead of user time for a process? I do not mean all of
> them - just that usually occur in practice.

Everything the kernel does when requested by the user is counted as 
kernel time - file system access, network access, getpid(), 
gettimeofday(), process scheduling, memory management, etc.

> I've noticed that there are moments when system load in top for system
> time is very high (60-80% while user load is 15-25%, this produces
> very high LA also). All processes that were run at this time show high
> kernel time usage, although they usually do not. System is getting
> back to normal after Apache restart (I think this is related to Apache
> shared memory somehow, but not sure).

As I told you before - monitor the "top" line for the processes you 
suspect and you will get a fairly good idea what they are doing. Look at 
the "STATE" column.

When you are looking at per-process statistics, the system time is also 
accounted. For example, if a process takes 50% of a CPU, it is possible 
that it takes 25% in userspace and 25% in kernel (the reverse is not 
true - kernel can take system CPU time without it being accounted on 
behalf of processes).

> This makes me suspect that system time in sa can not be relied on
> while measuring user system usage, because it notably varies under
> some circumstances for same operations. Am I wrong?

Everything can be accounted for by enough statistics :)



More information about the freebsd-questions mailing list