cpu usage in 7.0
Barney Cordoba
barney_cordoba at yahoo.com
Tue Feb 26 18:25:30 UTC 2008
--- Jeff Roberson <jroberson at chesapeake.net> wrote:
> On Mon, 25 Feb 2008, Daniel Gerzo wrote:
>
> > Hello Jeff,
> >
> > Sunday, February 24, 2008, 11:47:39 PM, you wrote:
> >
> >>> So how does a multithreaded process get 458% CPU
> on a quad-core machine? :)
> >>> (Really, I want to know; I thought thread CPU
> accounting was fixed in 7.x.
> >>> Unless I'm mistaken, 4 CPU-intensive threads in
> a single process should
> >>> account as 4 CPU-intensive single-thread
> processes; i.e. each could only take
> >>> up to 100% of a core/CPU, accounting for
> NCPU*100% total).
> >>>
> >>>
> >
> >> It is possible for the sum of all threads in the
> system to exceed 100%
> >> cpu. This is because the decay function is not
> precise. 15% over is a
> >> bit more than I would expect but I suppose it's
> possible. We also inhert
> >> pcpu information from the parent on fork/thread
> creation so the child
> >> isn't created with a priority as if it had been
> idle. So for a moment the
> >> utilization is duplicated.
> >
> > I have a box running mysqld, which sometimes
> exeeds 130%, what about
> > this? ;)
> >
> > Also the mysqld is alsmost all the time in the
> "ucond" state, what
> > does it mean? I've been told that it is probably
> waiting for I/O, but
> > then, I have another box which is currently
> completely idle, but
> > running mysql shows that it is "ucond" as well.
>
> You should switch top to display threads. 'H' is
> the key to do it.
> Otherwise you only get the wait channel for one of
> the threads. Others
> may be busy doing things.
>
> 'ucond' means the thread is waiting on a userland
> condition variable.
> This is a type of synchronization point in userland
> accessed via the
> pthread_cond_*(3) api. It may indicate a thread
> that is waiting for work
> but other threads may be busy.
>
> Do you only have one CPU? If you're seeing 130% on
> a single cpu system we
> may need to take some steps to improve the
> reporting.
>
>
> >
> > --
> > Best regards,
> > Daniel
> mailto:danger at FreeBSD.org
I'd like to note that I find it confusing and
inconsistent to have Top average the cpu usage as the
main usage figure, but use a different formula for the
processes themselves.
Barney
____________________________________________________________________________________
Looking for last minute shopping deals?
Find them fast with Yahoo! Search. http://tools.search.yahoo.com/newsearch/category.php?category=shopping
More information about the freebsd-current
mailing list