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