All of lore.kernel.org
 help / color / mirror / Atom feed
From: Joel Schopp <jschopp@austin.ibm.com>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: linux-kernel@vger.kernel.org, Ingo Molnar <mingo@elte.hu>,
	linuxppc-dev@lists.ozlabs.org,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	ego@in.ibm.com
Subject: Re: [PATCHv3 2/2] powerpc: implement arch_scale_smt_power for Power7
Date: Fri, 29 Jan 2010 12:41:38 -0600	[thread overview]
Message-ID: <4B632BE2.9020106@austin.ibm.com> (raw)
In-Reply-To: <1264728185.20211.34.camel@pasglop>

Benjamin Herrenschmidt wrote:
> On Thu, 2010-01-28 at 17:24 -0600, Joel Schopp wrote:
>   
>> On Power7 processors running in SMT4 mode with 2, 3, or 4 idle threads 
>> there is performance benefit to idling the higher numbered threads in
>> the core.  
>>
>> This patch implements arch_scale_smt_power to dynamically update smt
>> thread power in these idle cases in order to prefer threads 0,1 over
>> threads 2,3 within a core.
>>     
>
> Almost there :-) Joel, Peter, can you help me figure something out tho ?
>
> On machine that don't have SMT, I would like to avoid calling
> arch_scale_smt_power() at all if possible (in addition to not compiling
> it in if SMT is not enabled in .config).
>
> Now, I must say I'm utterly confused by how the domains are setup and I
> haven't quite managed to sort it out... it looks to me that
> SD_SHARE_CPUPOWER is always going to be set on all CPUs when the config
> option is set (though each CPU will have its own domain) or am I
> misguided ? IE. Is there any sense in having at least a fast exit path
> out of arch_scale_smt_power() for non-SMT CPUs ?
>
> Joel, can you look at compiling it out when SMT is not set ? We don't
> want to bloat SMP kernels for 32-bit non-SMT embedded platforms.
>   
I can wrap the powerpc definition of arch_scale_smt in an #ifdef, if 
it's not there the scheduler uses the default, which is the same as it 
uses if SMT isn't compiled. 

WARNING: multiple messages have this Message-ID (diff)
From: Joel Schopp <jschopp@austin.ibm.com>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>,
	ego@in.ibm.com, linuxppc-dev@lists.ozlabs.org,
	Ingo Molnar <mingo@elte.hu>,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCHv3 2/2] powerpc: implement arch_scale_smt_power for Power7
Date: Fri, 29 Jan 2010 12:41:38 -0600	[thread overview]
Message-ID: <4B632BE2.9020106@austin.ibm.com> (raw)
In-Reply-To: <1264728185.20211.34.camel@pasglop>

Benjamin Herrenschmidt wrote:
> On Thu, 2010-01-28 at 17:24 -0600, Joel Schopp wrote:
>   
>> On Power7 processors running in SMT4 mode with 2, 3, or 4 idle threads 
>> there is performance benefit to idling the higher numbered threads in
>> the core.  
>>
>> This patch implements arch_scale_smt_power to dynamically update smt
>> thread power in these idle cases in order to prefer threads 0,1 over
>> threads 2,3 within a core.
>>     
>
> Almost there :-) Joel, Peter, can you help me figure something out tho ?
>
> On machine that don't have SMT, I would like to avoid calling
> arch_scale_smt_power() at all if possible (in addition to not compiling
> it in if SMT is not enabled in .config).
>
> Now, I must say I'm utterly confused by how the domains are setup and I
> haven't quite managed to sort it out... it looks to me that
> SD_SHARE_CPUPOWER is always going to be set on all CPUs when the config
> option is set (though each CPU will have its own domain) or am I
> misguided ? IE. Is there any sense in having at least a fast exit path
> out of arch_scale_smt_power() for non-SMT CPUs ?
>
> Joel, can you look at compiling it out when SMT is not set ? We don't
> want to bloat SMP kernels for 32-bit non-SMT embedded platforms.
>   
I can wrap the powerpc definition of arch_scale_smt in an #ifdef, if 
it's not there the scheduler uses the default, which is the same as it 
uses if SMT isn't compiled. 



  parent reply	other threads:[~2010-01-29 18:41 UTC|newest]

Thread overview: 103+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-20 20:00 [PATCH 0/2] sched: arch_scale_smt_powers Joel Schopp
2010-01-20 20:00 ` Joel Schopp
2010-01-20 20:02 ` [PATCH 1/2] sched: Fix the place where group powers are updated Joel Schopp
2010-01-20 20:02   ` Joel Schopp
2010-01-21 13:54   ` [tip:sched/core] " tip-bot for Gautham R Shenoy
2010-01-26 23:28   ` [PATCHv2 1/2] sched: enable ARCH_POWER Joel Schopp
2010-01-26 23:28     ` Joel Schopp
2010-01-28 23:20     ` [PATCHv3 " Joel Schopp
2010-01-28 23:20       ` Joel Schopp
2010-02-05 20:57       ` [PATCHv4 " Joel Schopp
2010-02-05 20:57         ` Joel Schopp
2010-01-20 20:04 ` [PATCH 2/2] powerpc: implement arch_scale_smt_power for Power7 Joel Schopp
2010-01-20 20:04   ` Joel Schopp
2010-01-20 20:48   ` Peter Zijlstra
2010-01-20 20:48     ` Peter Zijlstra
2010-01-20 21:58     ` Michael Neuling
2010-01-20 21:58       ` Michael Neuling
2010-01-20 22:44     ` Joel Schopp
2010-01-20 22:44       ` Joel Schopp
2010-01-21  8:27       ` Peter Zijlstra
2010-01-21  8:27         ` Peter Zijlstra
2010-01-20 21:04   ` Michael Neuling
2010-01-20 21:04     ` Michael Neuling
2010-01-20 22:09     ` Joel Schopp
2010-01-20 22:09       ` Joel Schopp
2010-01-24  3:00       ` Benjamin Herrenschmidt
2010-01-24  3:00         ` Benjamin Herrenschmidt
2010-01-25 17:50         ` Joel Schopp
2010-01-25 17:50           ` Joel Schopp
2010-01-26  4:23           ` Benjamin Herrenschmidt
2010-01-26  4:23             ` Benjamin Herrenschmidt
2010-01-20 21:33   ` Benjamin Herrenschmidt
2010-01-20 21:33     ` Benjamin Herrenschmidt
2010-01-20 22:36     ` Joel Schopp
2010-01-20 22:36       ` Joel Schopp
2010-01-26 23:28   ` [PATCHv2 " Joel Schopp
2010-01-26 23:28     ` Joel Schopp
2010-01-27  0:52     ` Benjamin Herrenschmidt
2010-01-27  0:52       ` Benjamin Herrenschmidt
2010-01-28 22:39       ` Joel Schopp
2010-01-28 22:39         ` Joel Schopp
2010-01-29  1:23         ` Benjamin Herrenschmidt
2010-01-29  1:23           ` Benjamin Herrenschmidt
2010-01-28 23:20     ` [PATCHv3 " Joel Schopp
2010-01-28 23:20       ` Joel Schopp
2010-01-28 23:24       ` Joel Schopp
2010-01-28 23:24         ` Joel Schopp
2010-01-29  1:23         ` Benjamin Herrenschmidt
2010-01-29  1:23           ` Benjamin Herrenschmidt
2010-01-29 10:13           ` Peter Zijlstra
2010-01-29 10:13             ` Peter Zijlstra
2010-01-29 18:34             ` Joel Schopp
2010-01-29 18:34               ` Joel Schopp
2010-01-29 18:41           ` Joel Schopp [this message]
2010-01-29 18:41             ` Joel Schopp
2010-02-05 20:57         ` [PATCHv4 " Joel Schopp
2010-02-05 20:57           ` Joel Schopp
2010-02-14 10:12           ` Peter Zijlstra
2010-02-14 10:12             ` Peter Zijlstra
2010-02-17 22:20             ` Michael Neuling
2010-02-17 22:20               ` Michael Neuling
2010-02-18 13:17               ` Peter Zijlstra
2010-02-18 13:17                 ` Peter Zijlstra
2010-02-18 13:19                 ` Peter Zijlstra
2010-02-18 13:19                   ` Peter Zijlstra
2010-02-18 16:28                 ` Joel Schopp
2010-02-18 16:28                   ` Joel Schopp
2010-02-18 17:08                   ` Peter Zijlstra
2010-02-18 17:08                     ` Peter Zijlstra
2010-02-19  6:05                 ` Michael Neuling
2010-02-19  6:05                   ` Michael Neuling
2010-02-19 10:01                   ` Peter Zijlstra
2010-02-19 10:01                     ` Peter Zijlstra
2010-02-19 11:01                     ` Michael Neuling
2010-02-19 11:01                       ` Michael Neuling
2010-02-23  6:08                       ` Michael Neuling
2010-02-23  6:08                         ` Michael Neuling
2010-02-23 16:24                         ` Peter Zijlstra
2010-02-23 16:24                           ` Peter Zijlstra
2010-02-23 16:30                           ` Peter Zijlstra
2010-02-23 16:30                             ` Peter Zijlstra
2010-02-24  6:07                           ` Michael Neuling
2010-02-24  6:07                             ` Michael Neuling
2010-02-24 11:13                             ` Michael Neuling
2010-02-24 11:13                               ` Michael Neuling
2010-02-24 11:58                               ` Michael Neuling
2010-02-24 11:58                                 ` Michael Neuling
2010-02-27 10:21                               ` Michael Neuling
2010-02-27 10:21                                 ` Michael Neuling
2010-03-02 14:44                                 ` Peter Zijlstra
2010-03-02 14:44                                   ` Peter Zijlstra
2010-03-04 22:28                                   ` Michael Neuling
2010-03-04 22:28                                     ` Michael Neuling
2010-01-29 12:25       ` [PATCHv3 " Gabriel Paubert
2010-01-29 12:25         ` Gabriel Paubert
2010-01-29 16:26         ` Joel Schopp
2010-01-29 16:26           ` Joel Schopp
2010-01-26 23:27 ` [PATCHv2 0/2] sched: arch_scale_smt_powers v2 Joel Schopp
2010-01-26 23:27   ` Joel Schopp
2010-01-28 23:20   ` [PATCHv3 0/2] sched: arch_scale_smt_powers Joel Schopp
2010-01-28 23:20     ` Joel Schopp
2010-02-05 20:57     ` [PATCHv4 " Joel Schopp
2010-02-05 20:57       ` Joel Schopp

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=4B632BE2.9020106@austin.ibm.com \
    --to=jschopp@austin.ibm.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=benh@kernel.crashing.org \
    --cc=ego@in.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mingo@elte.hu \
    /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.