If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

2D Performance Also Impacted By Unity On XMir

06-29-2013, 01:20 AM

Phoronix: 2D Performance Also Impacted By Unity On XMir

Earlier today I delivered the first benchmarks of Ubuntu's Unity 7 running over XMir to run the current X11 desktop atop the Mir Display Server via this compatibility layer. These benchmarks documented the performance impact of running OpenGL games when having to deal with XMir rather than just a clean X.Org Server running on the hardware. The extra step in the rendering process did result in a measurable performance impact, especially when the performance of the open-source Linux graphics drivers is already lower than their proprietary brethren. The benchmarks to now show illustrate that the 2D rendering performance also takes a hit when running Unity on XMir.

Comment

But what's the 2D performance on pure Mir? Faster, same, worse than on X.org?

After all, we're all looking forward to use pure Mir or Wayland as much as possible, with X.org on top of them as little as possible.

Yes, but currently there is nothing where it's easy to perform benchmarks of native Mir (i.e., at least an alpha distro using it directly).
Also, that's what will be used by default in both 13.10 and 14.04, so that comparison is much more interesting in the short term than the native one, from a user's perspective.

Comment

But what's the 2D performance on pure Mir? Faster, same, worse than on X.org?

After all, we're all looking forward to use pure Mir or Wayland as much as possible, with X.org on top of them as little as possible.

Even worse. If we use cairo as a yard stick for measuring acceleration across the different solutions, then cairo-xlib is many times faster (when supported by a good driver i.e. sna or nvidia, and even when supported by bad drivers such as uxa and fglrx) than cairo-gl (with their respective OpenGL drivers). We are back to looking at using the CPU and pushing images around.

Pure client side rendering also has higher memory overheads as what the display server does cache between multiple clients, is now allocated separately in every client.

Comment

Even worse. If we use cairo as a yard stick for measuring acceleration across the different solutions, then cairo-xlib is many times faster (when supported by a good driver i.e. sna or nvidia

(OT)
Unfortunately proprietary nvidia drivers performs really poor when it comes to draw gradients through cairo.
...At the point that if you scroll a webpage containing native widgets (firefox) and your theme uses gradients for them, you have a very choppy scrolling.
Cairo needs then to be patched to explicitely rely on CPU only for such operations.
Works good with OSS drivers instead.

Comment

anyone with G945 intel driver should be aware that due to the newly gained features of mesa 9.2 (opengl 2.1) it takes about half a minute to open unity dash (pushing the super key) ... i guess..
and its quite interesting that on the intel driver the SW mouse popinter does not move whereas it does move on nouveau nv50 and radeon r500

Comment

(OT)
Unfortunately proprietary nvidia drivers performs really poor when it comes to draw gradients through cairo.
...At the point that if you scroll a webpage containing native widgets (firefox) and your theme uses gradients for them, you have a very choppy scrolling.
Cairo needs then to be patched to explicitely rely on CPU only for such operations.
Works good with OSS drivers instead.

Which is odd since they accelerated gradients since the 295 series of drivers - except for a few corner cases iirc. Their driver developers are very active, have you spoken to them about this? Perhaps provide them with a cairo-trace so they can analyse the failure path?