Hi All, On 04/23/2015 07:16 PM, Greg Kroah-Hartman wrote: > On Thu, Apr 23, 2015 at 09:46:22AM -0700, Andy Lutomirski wrote: >> - There's still an open performance question. Namely: is kdbus performant? > > Yes, I thought that was already answered. Tizen posted some numbers > with a much older version of the code, before David fixed a bunch of > issues that he and you found, and that averaged between 25-50% faster. > Details are in this presentation: > > http://download.tizen.org/misc/media/conference2014/slides/tdc2014-kdbus-in-tizen3.pdf > > The Tizen and GENIVI developers are off running numbers with the latest > code, or so they told me through emails, but I don't know when/if that > will ever happen, so I can't promise more than what is already here. >
I'm working on kdbus support for GLib ([1],[2]). I saw some questions about kdbus performance, so I've prepared simple benchmark. Because David already has posted some comparison results between kdbus and UDS, I've decided to use my GLib port with native kdbus support (it should be noted, that this port is not finished yet and there are still some places for improvements, thus please do not treat these test results as final). To perform tests I've created two simple apps: - server: http://fpaste.org/215157/ - client: http://fpaste.org/215156/ The first one (server) registers itself on the bus under well-known name ("com.test.app") and waits for calls to its objects and methods. The second one (client) makes calls and records periods of time between moment of preparing of a call to the moment of receiving an answer. The measurement is made by performing 20000 of calls and computing a sum of duration of every call (for two different sizes of message payload: 1000 and 10000 bytes). The client program returns total time of performed calls after successful execution. All tests have been run on VirtualBox with ArchLinux and latest version of systemd and kdbus. The test results are following: +--------------+--------------------+--------------------+ | | Elapsed time | Elapsed time | | Message size | GLIB WITH NATIVE | GLIB + DBUS-DAEMON | | [bytes] | KDBUS SUPPORT* | | +--------------+--------------------+--------------------+ | | 1) 2.874264 s | 1) 4.624631 s | | 1000 | 2) 2.932835 s | 2) 4.669730 s | | | 3) 2.899634 s | 3) 4.747275 s | | | 4) 2.970106 s | 4) 4.725723 s | +--------------+--------------------+--------------------+ | | 3) 3.182379 s | 3) 5.469663 s | | 10000 | 3) 3.334170 s | 3) 5.520757 s | | | 3) 3.353305 s | 3) 5.556374 s | | | 3) 3.367732 s | 3) 5.597758 s | +--------------+--------------------+--------------------+ *all tests performed without using memfd mechanism. I hope it will be useful for someone :) [1] https://github.com/lukasz-skalski/glib [2] https://bugzilla.gnome.org/show_bug.cgi?id=721861 Cheers,-- Lukasz Skalski Samsung R&D Institute Poland Samsung Electronics l.skal...@samsung.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/