lkml.org 
[lkml]   [2014]   [Jul]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC PATCH 1/1] rcu: Use rcu_gp_kthread_wake() to wake up kthreads
On Fri, Jul 25, 2014 at 07:29:37PM -0400, Pranith Kumar wrote:
>
> On 07/25/2014 07:15 PM, Paul E. McKenney wrote:
> > On Fri, Jul 25, 2014 at 06:23:41PM -0400, Pranith Kumar wrote:
> >> Here total is the total number of times we enter th function rcu_report_qs_rsp()
> >> and unnecessary is the times we call wake_up() unnecessarily.
> >> case1, 2, 3 are the cases I listed above.
> >>
> >> Note that the frequency has gone way up than before, I am not sure why that is.
> >>
> >> *ALL* the wakeups seem to be unnecessary from that location. And the
> >> main reason is that gp_flags is 0.
> >>
> >> My rcugp file has the following:
> >>
> >> completed=257515 gpnum=257516 age=1 max=1684
> >>
> >> Thoughts?
> > Hard to believe in the rcutorture case. My guess was that rcutorture was
> > doing about 9000 wakeups, 2000 of which were unnecessary. Which would
> > of course still tilt things very much in favor of your patch.
> >
> > I am not surprised in the mostly-idle case, as the RCU grace-period
> > kthread would most likely be the one ending the grace period, which
> > would therefore almost always be a self-wakeup.
> >
> > Any chance of a peek at your debugging code?
>
> Sure, I am also attaching my dmesg output. Hope it helps!

Looks legit. I guess that having even one CPU idle for the duration
of the grace period will cause a self wakeup, so perhaps I should not
have been surprised.

In any case, please summarize the data down to no more than 30 lines of
text and resend your wakeup-elimination patch with this text included
as the change log.

Thanx, Paul



\
 
 \ /
  Last update: 2014-07-27 20:01    [W:0.048 / U:0.564 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site