Starting the kdbus discussions

Lukasz Skalski l.skalski at partner.samsung.com
Fri Jan 17 05:27:38 PST 2014


On 01/16/2014 06:28 PM, Lennart Poettering wrote:
>
> Anyway, if you care about performance measurements I certainly welcome
> any work on that!

As I mentioned yesterday I've prepared simple benchmark for my glib
port with native kdbus support. Below you can find results for first
working version (latest published patchset you can find here [1] -
below tests are based on not published yet new version my glib port
with support for protocol version 2).

===============
= Description =
===============

In order to perform tests of glib with kdbus native support I've
created two programs: gdbus_server and gdbus_client. The first of
them acts as a server, registers itself on the bus under well-known
name 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 one thousand of calls and
computing a sum of duration of every call (for different sizes of
message payload: 4kB, 8kB, 16kB, 32kB, 64kB, 128kB, 256kB, 512kB
and 1MB). The client program returns total time of performed calls
after successful execution.

Simple test applications you can find here [2]

===============
= Environment =
===============

Host: VirtualBox with Fedora 20 (3.12.5-302.fc20.x86_64)
All tests was performed in systemd-nspawn container (more info
here [3]).

kdbus module: last commit 1ab20f6f5
systemd:      last commit c4e6e2425 (systemd-nspawn container and host)
glib: 	      last commit 8bc63b0ef (+kdbus patches for native support)

===========
= Results =
===========

(all results for PAYLOAD_VEC item)

+--------------+--------------------+--------------------+
|              |    Elapsed time    |    Elapsed time    |
| Message size |  GLIB WITH KDBUS   | GLIB + DBUS_DAEMON |
|              |      SUPPORT       |                    |
+--------------+--------------------+--------------------+
| 1000 x 4kB   |     1.351737 s     |     1.870417 s     |
+--------------+--------------------+--------------------+
| 1000 x 8kB   |     1.349266 s     |     1.857693 s     |
+--------------+--------------------+--------------------+
| 1000 x 16kB  |     1.383427 s     |     2.219304 s     |
+--------------+--------------------+--------------------+
| 1000 x 32kB  |     1.358608 s     |     2.542795 s     |
+--------------+--------------------+--------------------+
| 1000 x 64kB  |     1.878409 s     |     3.062035 s     |
+--------------+--------------------+--------------------+
| 1000 x 128kB |     2.265555 s     |     4.043454 s     |
+--------------+--------------------+--------------------+
| 1000 x 256kB |     3.112191 s     |     6.657750 s     |
+--------------+--------------------+--------------------+
| 1000 x 512kB |     3.383699 s     |    11.400224 s     |
+--------------+--------------------+--------------------+
| 1000 x 1MB   |     4.703610 s     |    19.041988 s     |
+--------------+--------------------+--------------------+

[1] https://bugzilla.gnome.org/show_bug.cgi?id=721861
[2] https://github.com/lukasz-skalski/glib-kdbus-benchmark
[3] http://people.freedesktop.org/~kay/kdbus-container-install.txt

-- 
Lukasz Skalski
Samsung R&D Institute Poland
Samsung Electronics
l.skalski at partner.samsung.com


More information about the dbus mailing list