I use a short time format that displays the available data:
TIMEFORMAT='%2Rsec %2Uusr %2Ssys (%P%% cpu)'

I was running some timing tests under Cygwin/Windows (but similar exists on SuSE-Linux).

The CPU% isn't display the correct value:
Examples:
15.78sec 21.32usr 10.77sys (100.00% cpu)
11.15sec 20.35usr 07.63sys (100.00% cpu)
 8.37sec 13.77usr  5.42sys (100.00% cpu)
 4.97sec  2.12usr  3.06sys (100.00% cpu)
---

    In each of the above examples (last line from linux, obvious, huh? :-)).
The usr + sys values are > sec, so so why am I seeing a "faked-up value?"
The real %cpu should have numbers all over 100%.
From the manpage:
    %P        The CPU percentage, computed as (%U + %S) / %R.

I should see something like these for cpu%:
    (203.36% cpu)
    (250.94% cpu)
    (229.27% cpu)
    (103.26% cpu)

It would be more useful than fixing the manpage to say:

        %P = percentage except when it would be over 100, in
        which case we throw away the real value and display,
        the completely wrong and un-useful value of 100.00%.

It tells me how much parallelism is going on, and also tells me how much
it might slow down on single-cpu machines.  But it certainly isn't telling
me how busy any single cpu was (which was probably the context of
decision to hard-code 100.00% as the max).

:^? :)



Reply via email to