9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Jessica Yu <jyu@cowsay.org>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] nix scheduler changes
Date: Tue, 27 May 2014 14:15:01 -0400	[thread overview]
Message-ID: <CACebkGNqEiGXqAornUx7aXTW3WARoSU-yqBTuA2gkpsHhg0C7A@mail.gmail.com> (raw)
In-Reply-To: <2f40e8ca50e83137d89718948b1b2c4b@brasstown.quanstro.net>

On Mon, May 26, 2014 at 1:14 PM, erik quanstrom <quanstro@quanstro.net> wrote:
> so, i've done a little bit more work characterizing the performance
> of the scheduler correctness changes, and i know have some understanding
> on why e.g. ping times are a bit slower.
>
> the old code essentially let processor 0 spin in runproc, other processors called
> halt.  the new code uses monmwait to wait for a change on all processors.
> this has some significant impacts on performance and power use.  for example,
> on my test box with 4c/8t:
>
>         spin/halt               monmwait        spin/monmwait
> ping    8µs                    14µs            8µs             # ip/ping -n10 $sysname
> mk      6.26s                 3.98s           3.80            # make nix kernel
> fans    audible               silent           audible
> δpower  -                      -24w            0                 # resolution = .1A = 12w @ 120v)
>
> this seems to indicate the latency is all in runproc(), and not waiting for things
> to be ready and assuming they will be has a big performance boost.
>
> (the third column, testing spin on mach 0, plus monmwait on the others was done
> to tell if monmwait has high latency or not.)
>
> i'd really be interested to see what this does on 24c/48t machines.  something
> tells me the performance impacts would be huge, and different.
>
> - erik
>
> ---
> ps. hzsched in the distribution is 10% off for HZ=100, since
> schedticks = m->ticks + HZ/10, and delaysched tests
> for > not the expected >=.
>

Nice. Excited to see how a cleaned up + simplified runproc() and the
per-Mach queues could also change things. Any reason why the ping test
w/ monmwait wasn't consistent with the performance improvement in
other areas?



  reply	other threads:[~2014-05-27 18:15 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-26 17:14 erik quanstrom
2014-05-27 18:15 ` Jessica Yu [this message]
2014-05-27 19:02   ` erik quanstrom

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CACebkGNqEiGXqAornUx7aXTW3WARoSU-yqBTuA2gkpsHhg0C7A@mail.gmail.com \
    --to=jyu@cowsay.org \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).