As distributions decided to move to the modesetting driver, we started looking into its 2D performance and power efficiency.
The results yielded interesting results as using the CPU to render cairo demos could be up to 10 times faster than using X or 3 times more power efficient. More importantly, most cases tested were comparable in performance with the CPU backend.
For the tested cases, the 2D acceleration primitives provided by the DDX also failed to reduce the CPU usage, because of the overhead of feeding comands to the GPU which is not amortised by having a huge number of primitives to render. This explains the resulting poor GPU utilisation which in turns prevents to power gate the GPU.
In light of these issues, the fact that Qt is mostly using its own rasterizer, GTK moving towards their own GL-based 2D acceleration and the fact that Wayland applications cannot rely on X to provide 2D acceleration, client-side libraries should now be recommended to application developers and we should make sure that the performance of current application stays good-enough.
This talk will present the results and hopes to spark discussions about this widely-ignored topic.