[PATCH spice-gtk 00/10] clean-ups and performance (hopefully)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Marc-André Lureau <marcandre.lureau@xxxxxxxxx>

Hi,

Some profiling results show rather obvious bottlenecks that I try to
optimize.  In general, the patch series is mostly clean-ups, and the
performance difference is mostly the change in the coroutine loop,
which will now treat all incoming messages before returning to main
coroutine, to avoid GMainLoop overhead.

Please don't ask exacts results, there is no reliable measurements
tools. We are getting there eventually. But in the meantime, the whole
series improves by ~10% cpu usage according to my tests using the
development version of Alon replay tool. Either we consider those
patches good clean-ups, or I'll keep them in a branch until we have
better tools, but that might take a while.

Obvious slowdowns are now mostly in spice-common canvas: quic decode,
spice_pixman_copy_rect, glyphs.

Marc-André Lureau (10):
  display: use bitfields for surface flags
  Add SPICE_DISABLE_CHANNELS
  display: replace ring with hashtable
  display: make the hashtable to destroy the surface
  display: keep a reference to the primary surface
  util: avoid calling getenv for every SPICE_DEBUG
  channel: do not reenter the mainloop at every iteration
  gtk: use GHashTable in display_cache
  gtk: use slices for frequently allocated objects
  gtk: simplify spice_channel_recv_msg

 gtk/channel-base.c         |   1 +
 gtk/channel-cursor.c       |  56 +++++----------
 gtk/channel-display-priv.h |   1 -
 gtk/channel-display.c      | 175 +++++++++++++++++----------------------------
 gtk/spice-channel-cache.h  | 111 +++++++++++-----------------
 gtk/spice-channel-priv.h   |   5 +-
 gtk/spice-channel.c        | 107 +++++++++++++--------------
 gtk/spice-session-priv.h   |   4 +-
 gtk/spice-session.c        |  58 +++++----------
 gtk/spice-util.c           |  13 +++-
 spice-common               |   2 +-
 11 files changed, 204 insertions(+), 329 deletions(-)

--
1.8.3.1
_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/spice-devel





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]