All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: David Howells <dhowells@redhat.com>,
	linux-kernel@vger.kernel.org, akpm@linux-foundation.org,
	niv@us.ibm.com, dvhltc@us.ibm.com, lethal@linux-sh.org,
	kernel@wantstofly.org, matthew@wil.cx
Subject: Re: [PATCH] v5 RCU: the bloatwatch edition
Date: Tue, 23 Jun 2009 05:58:32 -0700	[thread overview]
Message-ID: <20090623125832.GA6872@linux.vnet.ibm.com> (raw)
In-Reply-To: <20090623093208.GD23698@elte.hu>

On Tue, Jun 23, 2009 at 11:32:08AM +0200, Ingo Molnar wrote:
> 
> * David Howells <dhowells@redhat.com> wrote:
> 
> > Paul E. McKenney <paulmck@linux.vnet.ibm.com> wrote:
> > 
> > > This patch is a version of RCU designed for (!SMP && EMBEDDED)
> > > provided as a proof of concept of a small-footprint RCU implementation.
> > > In particular, the implementation of synchronize_rcu() is extremely
> > > lightweight and high performance.  It passes rcutorture testing in each
> > > of the four relevant configurations (combinations of NO_HZ and PREEMPT)
> > > on x86.  This saves 1263 bytes compared to Classic RCU, and more than
> > > three kilobytes compared to Hierarchical RCU (updated to 2.6.30):
> > 
> > On FRV:
> > 
> > 	CONFIG_CLASSIC_RCU=y
> > 
> > 	   text    data     bss     dec     hex filename
> > 	    884      32      20     936     3a8 kernel/rcupdate.o
> > 	   2616     184       0    2800     af0 kernel/rcuclassic.o
> > 
> > 	CONFIG_TREE_RCU=y
> > 
> > 	   text    data     bss     dec     hex filename
> > 	    884      32      20     936     3a8 kernel/rcupdate.o
> > 	   4068     384       0    4452    1164 kernel/rcutree.o
> > 
> > 	CONFIG_TINY_RCU=y
> > 
> > 	   text    data     bss     dec     hex filename
> > 	    836      32      20     888     378 kernel/rcupdate.o
> > 	    816      24       0     840     348 kernel/rcutiny.o
> > 
> > On MN10300:
> > 
> > 	CONFIG_CLASSIC_RCU=y
> > 
> > 	   text    data     bss     dec     hex filename
> > 	    900      28      48     976     3d0 kernel/rcupdate.o
> > 	   1777     184       0    1961     7a9 kernel/rcuclassic.o
> > 
> > 	CONFIG_TREE_RCU=y
> > 
> > 	   text    data     bss     dec     hex filename
> > 	    900      28      48     976     3d0 kernel/rcupdate.o
> > 	   2733     384       0    3117     c2d kernel/rcutree.o
> > 
> > 	CONFIG_PREEMPT_RCU=y
> > 
> > 	   text    data     bss     dec     hex filename
> > 	    961      28      48    1037     40d kernel/rcupdate.o
> > 	   3314     128       8    3450     d7a kernel/rcupreempt.o
> > 
> > 	CONFIG_TINY_RCU=y
> > 
> > 	   text    data     bss     dec     hex filename
> > 	    865      28      48     941     3ad kernel/rcupdate.o
> > 	    500      24       0     524     20c kernel/rcutiny.o
> > 
> > > Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
> > 
> > Acked-by: David Howells <dhowells@redhat.com
> 
> Ok, that's more convincing than 900 bytes on x86.

It used to be 900 bytes.  In 2.6.30, it is 1263 bytes.  ;-)

That said, I agree that FRV and MN10300 savings are more impressive.

> Paul, i guess this is .32 material anyway, right?

I am personally OK with it being .32, as long as David Howells,
Lennert Buytenhek, and Paul Mundt are OK with that schedule.

> Since there's plenty of time, could we perhaps also do the 
> classic-rcu removal and integrate-rcupreempt-into-tree-rcu steps, to 
> reduce the (significant) config complexity perhaps?

Classic-RCU removal most certainly.  I am hoping to get the
integrate-rcupreempt-into-tree-rcu piece done in .32 timeframe, but
there is a chance that it may be a bit later.

							Thanx, Paul

  reply	other threads:[~2009-06-23 12:58 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-23  4:24 [PATCH] v5 RCU: the bloatwatch edition Paul E. McKenney
2009-06-23  9:12 ` David Howells
2009-06-23  9:32   ` Ingo Molnar
2009-06-23 12:58     ` Paul E. McKenney [this message]
2009-06-23 13:46       ` Paul Mundt
2009-06-23 14:07       ` David Howells
2009-06-23 15:47       ` Lennert Buytenhek
2009-06-23 16:10         ` Paul E. McKenney
2009-06-23 16:12 ` [PATCH -tip] " Paul E. McKenney
2009-06-23 16:39   ` Paul Mundt

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=20090623125832.GA6872@linux.vnet.ibm.com \
    --to=paulmck@linux.vnet.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=dhowells@redhat.com \
    --cc=dvhltc@us.ibm.com \
    --cc=kernel@wantstofly.org \
    --cc=lethal@linux-sh.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=matthew@wil.cx \
    --cc=mingo@elte.hu \
    --cc=niv@us.ibm.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.