linux-rt-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: Daniel Bristot de Oliveira <daniel@bristot.me>,
	Chris Friesen <chris.friesen@windriver.com>,
	linux-rt-users@vger.kernel.org
Subject: Re: question about rcuc/X tasks
Date: Thu, 15 Dec 2016 11:01:08 -0800	[thread overview]
Message-ID: <20161215190108.GY3924@linux.vnet.ibm.com> (raw)
In-Reply-To: <20161215090714.0b62cc03@gandalf.local.home>

On Thu, Dec 15, 2016 at 09:07:14AM -0500, Steven Rostedt wrote:
> On Thu, 15 Dec 2016 14:47:37 +0100
> Daniel Bristot de Oliveira <daniel@bristot.me> wrote:
> 
> > Hi Chris,
> > 
> > On 12/12/2016 11:42 PM, Chris Friesen wrote:
> > > Based on the fact that Documentation/kernel-per-CPU-kthreads.txt
> > > describes CONFIG_RCU_NOCB_CPU_ALL=y as a solution by preventing the
> > > rcuc/%u kthreads from having any work to do, I had expected that the
> > > "rcu_nocbs=1-15" kernel parameter would have a similar effect.  
> 
> Paul, would rcu_nocbs=1-15 work? Or should ALL be used ? I'm assuming
> this is on a 16 CPUs box, in which case I don't see much of a difference
> for not just using ALL as it is almost there anyway ;-)

Using ALL is equivalent to rcu_nocbs=0-15 (as opposed to rcu_nocbs=1-15) on
a 16-CPU box, assuming that the CPUs are numbered consecutively.  The only
case where I could see a difference is if you were running something like
Rik's nasty Java workload on CPU 0, in which case rcu_nocbs=1-15 would be
the better choice.

							Thanx, Paul

> -- Steve
> 
> > 
> > As far as I recall, using CONFIG_RCU_NOCB_CPU_ALL=y will prevent the RCU
> > callbacks from running on rcuc/X threads (which are pinned to the CPU
> > X), but the rcuc/X thread is still in charge of awaking the ruco*
> > threads of the CPU X.
> > 
> > > Does anyone have any idea what's going on here, and how I can prevent
> > > the rcuc/<cpu> tasks from waking up?  
> > 
> > You can try to use rcu_nocb_poll kernel parameter to unload the rcuc/X
> > thread of the task of awaking its respective ruco*s threads.
> > 
> > >From [1]:  
> > 
> > rcu_nocb_poll	[KNL]
> > 			Rather than requiring that offloaded CPUs
> > 			(specified by rcu_nocbs= above) explicitly
> > 			awaken the corresponding "rcuoN" kthreads,
> > 			make these kthreads poll for callbacks.
> > 			This improves the real-time response for the
> > 			offloaded CPUs by relieving them of the need to
> > 			wake up the corresponding kthread, but degrades
> > 			energy efficiency by requiring that the kthreads
> > 			periodically wake up to do the polling.
> > 
> > [1] https://www.kernel.org/doc/Documentation/kernel-parameters.txt
> > 
> > -- Daniel
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 


      parent reply	other threads:[~2016-12-15 19:01 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-12 22:42 question about rcuc/X tasks Chris Friesen
2016-12-15 13:47 ` Daniel Bristot de Oliveira
2016-12-15 14:07   ` Steven Rostedt
2016-12-15 15:20     ` Chris Friesen
2016-12-15 19:04       ` Paul E. McKenney
2016-12-15 22:23         ` Chris Friesen
2016-12-15 23:34           ` Paul E. McKenney
2016-12-16  2:43             ` Chris Friesen
2016-12-15 19:01     ` Paul E. McKenney [this message]

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=20161215190108.GY3924@linux.vnet.ibm.com \
    --to=paulmck@linux.vnet.ibm.com \
    --cc=chris.friesen@windriver.com \
    --cc=daniel@bristot.me \
    --cc=linux-rt-users@vger.kernel.org \
    --cc=rostedt@goodmis.org \
    /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).