Re: ULE and current.

From: Andy Farkas (andyf_at_speednet.com.au)
Date: 12/11/03

  • Next message: Robin P. Blanchard: "Device bge watchdog timeouts"
    Date: Fri, 12 Dec 2003 00:03:06 +1000 (EST)
    To: Bruce Evans <bde@zeta.org.au>
    
    

    Bruce Evans wrote:
    > On Thu, 11 Dec 2003, Jeff Roberson wrote:
    > > On Thu, 11 Dec 2003, Andy Farkas wrote:
    > > > Jeff Roberson wrote:
    > > ...
    > > > And at this point I would expect something like:
    > > >
    > > > sh #0 using 66.3%,
    > > > sh #1 using 66.3%,
    > > > sh #2 using 66.3%,
    > > > idle: cpu0 to be 0%,
    > > > idle: cpu1 to be 0%.
    > >
    > > This is actually very difficult to get exactly right. Since all processes
    > > want to run all the time, you have to force alternating pairs to share the
    > > second cpu. Otherwise they wont run for an even amount of time.
    >
    > Perhaps add some randomness. Busting the caches every second or so
    > shouldn't make much difference. It happens anyway if there are more
    > processes.

    Ah, a fundamental misconceptualisation of how SMP works on my part. I'll
    leave it up to you guys to figure out how best to do it.

    I also have a quad cpu box to test with, so beware :)

    ...
    > > The vm has an idle thread that zeros pages. This is the third thread.
    > >
    > > > /0 /10 /20 /30 /40 /50 /60 /70 /80 /90 /100
    > > > root idle: cpu0 XXXXXXXXXXXXXXXX
    > > > root idle: cpu1 XXXXXXXXXXXXXXXX
    > > > <idle> XXXXXXXXXXXXXXXX
    >
    > No, <idle> is just cp_time[CP_IDLE] scaled incorrectly. It is bogus now that
    > we have actual idle processes. The scaling for the idle processes seems to
    > be almost correct (it is apparently scaled by the number of CPUs), but the
    > scaling or the value for <idle> is apparently off by a factor of the number
    > of CPUs.
    ...
    > > > So, where *I* get confused is that top(1) thinks that the system can be up
    > > > to 200% idle, whereas systat(1) thinks there are 3 threads each consuming
    > > > a third of 100% idleness... who is right?
    > >
    > > Both, they just display different statistics. ;-)
    >
    > Neither; they have different bugs :-). top actually seems to be
    > bug-free here, except it intentionally displays percentages that add
    > up to a multiple of 100%. This seems to be best. You just have to
    > get used to the percentages in the CPU stat line being scaled and the
    > others not being scaled.

    So the almost-bug in top(1) is that some CPU percentages are scaled and
    some are not scaled?

    > I now understand the case of an idle system:
    >
    > /0 /10 /20 /30 /40 /50 /60 /70 /80 /90 /100
    > root idle: cpu0 XXXXXXXXXXXXXXXX
    > root idle: cpu1 XXXXXXXXXXXXXXXX
    > <idle> XXXXXXXXXXXXXXXX
    >
    > This should show 50% for each "idle: cpuN" process.

    Yes.

    > Instead, it tries
    > to show 33.3% for each idle process including the pseudo one, but has
    > some rounding errors that make it display 30%. The factor of 3 to get
    > 33.3% instead of 2 to get 50% for the real idle processes is from
    > bogusly counting the pseudo-idle process. The factor of 3 to get 33.3%
    > instead of 1 to get 100% for the pseudo-idle process is from bogusly
    > counting the real idle processes.
    >
    > None of these bugs except the percentages being slightly too high are
    > scheduler-dependent.

    ps. You mentioned "jitter". Thats why I 'sleep 120' in the above tests.
    It tends to take about that long for top(1) to settle down. Why is that
    so?

    >
    > Bruce

    --
     :{ andyf@speednet.com.au
            Andy Farkas
        System Administrator
       Speednet Communications
     http://www.speednet.com.au/
    _______________________________________________
    freebsd-current@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-current
    To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
    

  • Next message: Robin P. Blanchard: "Device bge watchdog timeouts"

    Relevant Pages

    • Re: top
      ... >> I think you want to press the i key to toggle display of idle processes. ... multi-gigahertz CPU. ... snapshot will not be reported by top. ...
      (Fedora)
    • Re: DEFUNCT Processes
      ... I was misled because Pedd was talking of "defunct" processes. ... Jurjen pointed out they are just the idle processes, one for each cpu. ... > improved to a great extend when it comes to zombies. ...
      (comp.unix.aix)
    • Re: Windows xp sux for cadcam!
      ... So I'm turning things off when I realize my cam system cpu usage is ... at 50% and my "idleprocesses" is at 50%. ... I even turned the cpu usuage up to real time on the cam, ... idle processes. ...
      (alt.machines.cnc)
    • Re: More ULE bugs fixed.
      ... On Fri, 17 Oct 2003, Bruce Evans wrote: ... I'll sort it out soon. ... Apache benchmarked at 30% greater throughput due the cpu affinity some ... I don't use my SMP machine much anymore. ...
      (freebsd-current)