lkml.org 
[lkml]   [2009]   [Apr]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH] v3 RCU: the bloatwatch edition
Date
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 about 900 bytes compared to Classic RCU, and a
> couple kilobytes compared to Hierarchical RCU:

On FRV, CLASSIC_RCU:

text data bss dec hex filename
2616 184 0 2800 af0 kernel/rcuclassic.o
884 32 20 936 3a8 kernel/rcupdate.o

TREE_RCU:

3940 328 0 4268 10ac kernel/rcutree.o
884 32 20 936 3a8 kernel/rcupdate.o

TINY_RCU:

1152 32 0 1184 4a0 kernel/rcutiny.o
836 32 20 888 378 kernel/rcupdate.o

It works on my FRV board.

Possibly TINY_RCU could be shrunk a bit more by a judicious bit of inlining of
some of the very small functions.

Acked-by: David Howells <dhowells@redhat.com>


\
 
 \ /
  Last update: 2009-04-28 16:27    [W:0.097 / U:0.104 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site