Marco Trevisan "(Treviño)" <m...@3v1n0.net> writes:
>
> Il giorno gio, 16/09/2010 alle 17.23 +0100, Al Johnson ha scritto:
> > kdbus is proof-of-concept at the moment, the idea being to reduce the 
> > number 
> > of context switches needed for each dbus message. One synthetic benchmark 
> > shows a 3x speed increase on the n900 but speedup in real world 
> > applications 
> > seems much more modest.
> > 
> > http://alban.apinc.org/blog/2010/09/15/d-bus-in-the-kernel-faster/
> 
> Some days ago I've tried to port this patch to the Openmoko kernel,
> after applying it to the SHR 2.6.32 kernel (patches at [1]), I got
> these results (in average):
> 
> dbus-ping-pong test:
> Ping          dbus-daemon (s)         kdbus (s)       speedup
> 500 ping      3.33                    2.13            36.2%
> 5000 ping     32.59                   26.09           19.9%
> 50000 ping    313.56                  176.35          43.8%
> 
> 
> Adrien Bustany’s ipc-performances tool with 60000 random 10 char
> strings:
> 
> dbus-daemon query (s) kdbus query (s)         speedup
> 102.75                        74.71                   27.29%
> 
> So, the results are quite good, but the code is actually buggy...
[...]
> I guess that this system could give us a nice speedup when with many
> core applications with very few sources changes.
> 
> Comments?

Looking at your numbers, we're talking about shaving `up to 43.8%' off
of something that's already down in the singe-digit milliseconds range
to start with: in the best case above, it goes from 6.3 ms per query
to 3.5 ms per query; in the worse cases, it goes from 6.5 ms down to
5.2 ms. In your last test with Adrien's tool, the 27.29% improvement
is from 1.7 ms to 1.2 ms.

Is D-Bus actually enough of a bottleneck in, say, the FSO or SHR designs
that we should expect to accumulate enough of these ~2-ms reductions
quickly enough for them to actually become noticeable? An improvement of
`2 ms per' can be worthwhile if it adds up quickly enough--but does it?
How long does it take, under normal operating conditions, before even
50 D-Bus calls are made (a total of 0.1 seconds of accumulated savings)?

I don't know the answers to these questions, so they're not rhetorical :)

-- 
"Don't be afraid to ask (λf.((λx.xx) (λr.f(rr))))."


_______________________________________________
Openmoko community mailing list
community@lists.openmoko.org
http://lists.openmoko.org/mailman/listinfo/community

Reply via email to