D-Bus Performance: Observations and Solutions
Session information has not yet been published for this event.
One Line Summary
Results of performance analysis of D-Bus, with suggestions for improvement.
D-Bus is a software framework for inter-process communication. It is used by Avahi, BlueZ, Evolution, libffado, gconf2, HAL, GNOME VFS, NetworkManager, oFono, Rhythmbox, Tracker, and others.
This is a presentation of the results of a thorough performance analysis of D-Bus. Collabora has constructed numerous metrics of D-Bus performance, and we present those metrics in opposition to related, non-D-Bus performance metrics. We measure context switch time, message send latency, message throughput, process priority issues, and process scheduling behaviour resulting from the D-Bus architecture.
Serious performance flaws were discovered, with their causes. The solutions are not simple.
As one solution to the problems, we propose multicast Unix domain sockets. We also present alternate solutions.
Robin is a software developer who specializes in performance analysis, memory management, concurrency control, Haskell programming, and C++ development. He works for Collabora (Canada) Ltd.