Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1376446

Re: sched: tweak select_idle_sibling to look for idle threads

From Mike Galbraith <mgalbraith@suse.de>
Newsgroups linux.kernel
Subject Re: sched: tweak select_idle_sibling to look for idle threads
Date 2016-04-12 06:50 +0200
Message-ID <rmYr0-1aa-9@gated-at.bofh.it> (permalink)
References (1 earlier) <rm6qC-1mn-7@gated-at.bofh.it> <rmktA-3le-17@gated-at.bofh.it> <rmtGy-1Fh-15@gated-at.bofh.it> <rmC78-6h-1@gated-at.bofh.it> <rmUx3-6uV-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Mon, 2016-04-11 at 20:30 -0400, Chris Mason wrote:
> On Mon, Apr 11, 2016 at 06:54:21AM +0200, Mike Galbraith wrote:

> > > Ok, I was able to reproduce this by stuffing tbench_srv and tbench onto
> > > just socket 0.  Version 2 below fixes things for me, but I'm hoping
> > > someone can suggest a way to get task_hot() buddy checks without the rq
> > > lock.
> > > 
> > > I haven't run this on production loads yet, but our 4.0 patch for this
> > > uses task_hot(), so I'd expect it to be on par.  If this doesn't fix it
> > > for you, I'll dig up a similar machine on Monday.
> > 
> > My box stopped caring.  I personally would be reluctant to apply it
> > without a "you asked for it" button or a large pile of benchmark
> > results.  Lock banging or not, full scan existing makes me nervous.
> 
> 
> We can use a bitmap at the socket level to keep track of which cpus are
> idle.  I'm sure there are better places for the array and better ways to
> allocate, this is just a rough cut to make sure the idle tracking works.

See e0a79f529d5b:

      pre   15.22 MB/sec 1 procs
      post 252.01 MB/sec 1 procs

You can make traverse cycles go away, but those cycles, while precious,
are not the most costly cycles.  The above was 1 tbench pair in an
otherwise idle box.. ie it wasn't traverse cycles that demolished it.

	-Mike

(p.s. SCHED_IDLE is dinky bandwidth fair class)

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH RFC] select_idle_sibling experiments Chris Mason <clm@fb.com> - 2016-04-05 20:20 +0200
  Re: [PATCH RFC] select_idle_sibling experiments Bastien Bastien Philbert <bastienphilbert@gmail.com> - 2016-04-05 20:50 +0200
    Re: [PATCH RFC] select_idle_sibling experiments Chris Mason <clm@fb.com> - 2016-04-05 21:30 +0200
  Re: [PATCH RFC] select_idle_sibling experiments Matt Fleming <matt@codeblueprint.co.uk> - 2016-04-05 22:10 +0200
    Re: [PATCH RFC] select_idle_sibling experiments Bastien Philbert <bastienphilbert@gmail.com> - 2016-04-05 23:10 +0200
    Re: [PATCH RFC] select_idle_sibling experiments Chris Mason <clm@fb.com> - 2016-04-06 02:50 +0200
  Re: [PATCH RFC] select_idle_sibling experiments Mike Galbraith <mgalbraith@suse.de> - 2016-04-06 09:30 +0200
    Re: [PATCH RFC] select_idle_sibling experiments Chris Mason <clm@fb.com> - 2016-04-06 15:40 +0200
    Re: [PATCH RFC] select_idle_sibling experiments Chris Mason <clm@fb.com> - 2016-04-09 19:40 +0200
      Re: [PATCH RFC] select_idle_sibling experiments Matt Fleming <matt@codeblueprint.co.uk> - 2016-04-12 23:50 +0200
        Re: [PATCH RFC] select_idle_sibling experiments Mike Galbraith <mgalbraith@suse.de> - 2016-04-13 05:50 +0200
          Re: [PATCH RFC] select_idle_sibling experiments Chris Mason <clm@fb.com> - 2016-04-13 18:00 +0200
  Re: [PATCH RFC] select_idle_sibling experiments Chris Mason <clm@fb.com> - 2016-04-07 17:20 +0200
  sched: tweak select_idle_sibling to look for idle threads Chris Mason <clm@fb.com> - 2016-04-09 21:10 +0200
    Re: sched: tweak select_idle_sibling to look for idle threads Mike Galbraith <mgalbraith@suse.de> - 2016-04-10 12:10 +0200
      Re: sched: tweak select_idle_sibling to look for idle threads Chris Mason <clm@fb.com> - 2016-04-10 14:40 +0200
        Re: sched: tweak select_idle_sibling to look for idle threads Mike Galbraith <mgalbraith@suse.de> - 2016-04-10 14:50 +0200
      Re: sched: tweak select_idle_sibling to look for idle threads Chris Mason <clm@fb.com> - 2016-04-10 22:00 +0200
        Re: sched: tweak select_idle_sibling to look for idle threads Mike Galbraith <mgalbraith@suse.de> - 2016-04-11 07:00 +0200
          Re: sched: tweak select_idle_sibling to look for idle threads Chris Mason <clm@fb.com> - 2016-04-12 02:40 +0200
            Re: sched: tweak select_idle_sibling to look for idle threads Mike Galbraith <mgalbraith@suse.de> - 2016-04-12 06:50 +0200
              Re: sched: tweak select_idle_sibling to look for idle threads Chris Mason <clm@fb.com> - 2016-04-12 15:30 +0200
                Re: sched: tweak select_idle_sibling to look for idle threads Mike Galbraith <mgalbraith@suse.de> - 2016-04-12 20:20 +0200
                Re: sched: tweak select_idle_sibling to look for idle threads Chris Mason <clm@fb.com> - 2016-04-12 22:10 +0200
                Re: sched: tweak select_idle_sibling to look for idle threads Mike Galbraith <mgalbraith@suse.de> - 2016-04-13 05:20 +0200
                Re: sched: tweak select_idle_sibling to look for idle threads Chris Mason <clm@fb.com> - 2016-04-13 15:50 +0200
                Re: sched: tweak select_idle_sibling to look for idle threads Mike Galbraith <mgalbraith@suse.de> - 2016-04-13 16:30 +0200
                Re: sched: tweak select_idle_sibling to look for idle threads Chris Mason <clm@fb.com> - 2016-04-13 16:40 +0200
                Re: sched: tweak select_idle_sibling to look for idle threads Mike Galbraith <mgalbraith@suse.de> - 2016-04-13 17:10 +0200
                Re: sched: tweak select_idle_sibling to look for idle threads Mike Galbraith <mgalbraith@suse.de> - 2016-04-13 17:40 +0200

csiph-web