All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Zijlstra <peterz@infradead.org>
To: Dave Hansen <dave@sr71.net>
Cc: linux-kernel@vger.kernel.org, mingo@kernel.org,
	hpa@linux.intel.com, ak@linux.intel.com,
	Alex Chiang <achiang@hp.com>, Borislav Petkov <bp@suse.de>,
	Rusty Russell <rusty@rustcorp.com.au>,
	Mike Travis <travis@sgi.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Heiko Carstens <heiko.carstens@de.ibm.com>
Subject: Re: [PATCH] x86: Consider multiple nodes in a single socket to be "sane"
Date: Thu, 18 Sep 2014 00:57:26 +0200	[thread overview]
Message-ID: <20140917225726.GH2848@worktop.localdomain> (raw)
In-Reply-To: <5418CC6F.2040803@sr71.net>

On Tue, Sep 16, 2014 at 04:49:03PM -0700, Dave Hansen wrote:
> On 09/16/2014 10:58 AM, Peter Zijlstra wrote:
> > the 'problem' is that we currently have the static order of
> > the masks, if we were to flip the MC and NUMA masks we need a condition
> > to do that on and make sure everything is aware of that.
> > 
> > CoD not being detectable sucks arse for sure :/
> 
> It's not like we can't detect it.  We just can't detect it *explicitly*.

That's still suckage :-)

>  I think when we see nodes inside a package now, we have to trust that
> they're OK.

Its all we can do.

> One other data point here.  With an unpatched mainline, here's how the
> sched domains look with cluster-on-die enabled:
> 
> # grep . /proc/sys/kernel/sched_domain/cpu9/domain?/name
> /proc/sys/kernel/sched_domain/cpu9/domain0/name:SMT  // 2 threads
> /proc/sys/kernel/sched_domain/cpu9/domain1/name:MC   // 18 threads cores
> /proc/sys/kernel/sched_domain/cpu9/domain2/name:NUMA // 36 threads
> /proc/sys/kernel/sched_domain/cpu9/domain3/name:NUMA // 72 threads
> 
> and with cluster-on-die disabled:
> 
> # grep . /proc/sys/kernel/sched_domain/cpu9/domain?/name
> /proc/sys/kernel/sched_domain/cpu9/domain0/name:SMT
> /proc/sys/kernel/sched_domain/cpu9/domain1/name:MC
> /proc/sys/kernel/sched_domain/cpu9/domain2/name:NUMA
> 
> So, shockingly, the domains seem to be set up at at least conceptually
> OK in both cases.

Yeah, it works out by accident. It had to otherwise these patches
wouldn't work.

> We could probably rig up sched_init_numa() to mix topology levels
> between the ones that come out of sched_domain_topology and the NUMA
> levels, although that doesn't sound very appealing.
> 
> Another option would be to:
> 1. Add a new "PKG" level and actually _build_ it with phys_proc_id
> 2. Make sure to tie the sysfs 'core_siblings' file to PKG
> 3. Leave the "MC" level as it is now, but define it as being the lowest-
>    common-denominator of core grouping.  In other words, the "MC" group
>    will stop at a NUMA node or a socket boundary, whichever it sees
>    first.
> 4. Chop the "COD_NUMA" level off in sched_init_numa()

No, we should provide an arch override for sched_domain_topology which
has the right setup for the detected topology.

See arm,powerpc and s390, which already have his.

  reply	other threads:[~2014-09-17 22:57 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-15 22:26 [PATCH] x86: Consider multiple nodes in a single socket to be "sane" Dave Hansen
2014-09-16  3:29 ` Peter Zijlstra
2014-09-16  6:38   ` Chuck Ebbert
2014-09-16  6:44     ` Ingo Molnar
2014-09-16  7:03       ` Chuck Ebbert
2014-09-16  7:05         ` Ingo Molnar
2014-09-16 16:01         ` Peter Zijlstra
2014-09-16 16:46           ` Dave Hansen
2014-09-16 15:59       ` Peter Zijlstra
2014-09-16 16:36         ` Dave Hansen
2014-09-16  8:17   ` Dave Hansen
2014-09-16 10:07     ` Heiko Carstens
2014-09-16 17:58     ` Peter Zijlstra
2014-09-16 23:49       ` Dave Hansen
2014-09-17 22:57         ` Peter Zijlstra [this message]
2014-09-18  0:33           ` Dave Hansen
2014-09-17 12:55     ` Borislav Petkov
2014-09-18  7:32       ` Borislav Petkov
2014-09-16 16:59   ` Brice Goglin

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=20140917225726.GH2848@worktop.localdomain \
    --to=peterz@infradead.org \
    --cc=achiang@hp.com \
    --cc=ak@linux.intel.com \
    --cc=bp@suse.de \
    --cc=dave@sr71.net \
    --cc=gregkh@linuxfoundation.org \
    --cc=heiko.carstens@de.ibm.com \
    --cc=hpa@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=rusty@rustcorp.com.au \
    --cc=travis@sgi.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.