On Mon, 2007-11-26 at 12:33 -0500, Aaron Leventhal wrote: > Mark, thank you for the report.
Hi Aaron, > The report says: > > D-Bus is faster than ORBit at sending an object reference but slower > at sending simple arguments. > Some naive questions: > Do we know why there is such a big difference? What can D-Bus do to > improve performance for simple arguments? If ORBit can be fast for > simple arguments, why can't D-Bus use the same technique? They are not naive questions at all. I'm afraid that I'm not able to answer them all. Do note, The report is not yet complete. I intend to do some more tests this week, both on GOK and a D-Bus / Orbit comparison over a more varied set of method calls. Finding out why D-Bus is slower than ORBit at the simple calls could be an involved process. There is no intrinsic reason why it should be slower than ORBit. Havoc Pennington talks about D-Bus performance at: http://lists.freedesktop.org/archives/dbus/2007-October/008822.html He makes a few points of interest, firstly all of the results posted have been with each message being validated. I will try to post the results without validation of the messages. The speedup I have seen with this previously is about 20%. More importantly, we do not think that D-Bus has had much optimisation work performed on it. As Havoc said, in most cases the IPC mechanism isn't the most important factor for application performance. Orca, itself may be different, it seems to be a pretty heavy user. I think the reason ORBit is slower at passing object references is that it marshals more complicated data. It seems to marshal a variable array of IOP strings, as well as a type code in place of an object reference. We decided that the equivalent of an Object reference in D-Bus was a bus name and object path, which is simpler, and will be able to locate any object attached to the bus. > > - Aaron Thanks Mark _______________________________________________ Gnome-accessibility-devel mailing list Gnome-accessibility-devel@gnome.org http://mail.gnome.org/mailman/listinfo/gnome-accessibility-devel