I get suspicious when anyone uses "real world benchmarks" and X in the same sentence because there is such a mix of drawing paths used in a running system today. My experience was that XAA ran benchmarks faster but the user experience was better with EXA (although that would obviously be biased by my own usage patterns).
One of the depressing things was that shadowfb still outperformed pretty much everything in a lot of scenarios, especially benchmarks, although it is obviously not a complete solution on its own. IIRC we've looked at accelerating just a couple of functions as you suggested (basically targetting fills, scrolls and blits) but that doesn't really work for discrete GPUs since the cost of moving between CPU and GPU domains is so much higher.
Some days I wish the trend towards drawing everything in OpenGL and ignoring X's drawing functions would move a little faster
One of the depressing things was that shadowfb still outperformed pretty much everything in a lot of scenarios, especially benchmarks, although it is obviously not a complete solution on its own. IIRC we've looked at accelerating just a couple of functions as you suggested (basically targetting fills, scrolls and blits) but that doesn't really work for discrete GPUs since the cost of moving between CPU and GPU domains is so much higher.
Some days I wish the trend towards drawing everything in OpenGL and ignoring X's drawing functions would move a little faster
Comment