EXA and UXA were designed years ago when a much smaller subset of operations could be accelerated to provide decent performance for most desktops. As the number of features and complexity of those features used on newer desktops has grown, the "2D" acceleration architectures have not kept up. Expanding EXA (or UXA) is a lot of work and the complexity is getting to the level where a good "2D" acceleration driver begins to rival a 3D driver. That's why something like glamor makes sense. You only have to write one hw driver (for GL) and you can take advantage of it for "2D" as well. The xorg gallium state tracker works similarly, but since it uses EXA, it is stuck with the inherent limitations of that older acceleration architecture. Since glamor uses GL directly, it can take advantage of all the flexibility offered by GL.
Another thing to note is that "2D" APIs are not as relevant today as they once were. A lot of apps use GL directly now so putting a lot of effort into "2D" it not always a good use of time. Benchmarks often have little bearing decent desktop performance.
Another thing to note is that "2D" APIs are not as relevant today as they once were. A lot of apps use GL directly now so putting a lot of effort into "2D" it not always a good use of time. Benchmarks often have little bearing decent desktop performance.
Comment