The First Benchmarks Of Unity On XMir: There's A Performance Hit
With Thursday's announcement that Mir will ship by default in Ubuntu 13.10 on the desktop, many Ubuntu users were caught by surprise that this experimental display server will be ready by October. Up to now, Ubuntu 13.10 was expected to continue using an X.Org Server by default on the desktop (with only an experimental option for Mir) while the new Ubuntu Touch project would be using Mir on mobile devices, until next year. With the pressed timeline for the migration to Mir, at Phoronix we have already carried out our first Mir benchmarks. In this article are the first benchmarks of Intel graphics when running on Ubuntu 13.10 with a native X.Org Server (as done now on current Ubuntu Linux releases) and then when deploying the same Unity desktop environment atop XMir with the Mir unity-system-compositor.
Unity in Ubuntu 13.10 is using XMir, the X11 compatibility layer for Mir, to run the current Unity 7 desktop environment atop Mir. XMir allows X11 applications to run on Mir in a similar fashion to XWayland and the X window application contents are then passed to Mir as just a single window. Without the desktop natively supporting Mir, there's an extra step in the rendering process with going through XMir, which is where curiosity arises about any performance penalties compared to just running an X.Org Server outright on the hardware.
The Mir stack can be tested atop Ubuntu 13.10 development snapshots right now through a separate Personal Package Archive (PPA) while soon it will likely be integrated into the main archive. When installing Mir from the PPA, users can still switch back to using an X.Org Server without Mir, which is how today's benchmarks were conducted. When running the same Unity desktop atop Mir, there really aren’t any end-user differences to note. For testing purposes, a secondary software cursor is rendered in the upper-left hand corner as a simple indicator that Mir is being used. Canonical says though a better Mir watermark is forthcoming for indicating Mir is in use rather than just X. The other way to find out if XMir/Mir is in use is by checking the /var/log/Xorg.0.log for XMir and also seeing if the "unity-system-compositor" process is active on the system.
Unity on XMir looks the same as without Mir... The only visible difference really comes down to a persistent software cursor icon (a better icon is forthcoming) being rendered in the corner of the screen as a simple way for letting the user know Mir is running (it's not rendered in the screenshot so a quick photo was done for reference purposes).