PDA

View Full Version : A New Acceleration Architecture For X


phoronix
08-06-2008, 08:50 AM
Phoronix: A New Acceleration Architecture For X

XAA, or the XFree86 Acceleration Architecture, is over twelve years old and finally in 2005 it was greeted by a replacement, EXA. XAA is nearing an end-of-life and Intel is prepared to remove XAA acceleration within their next Intel graphics driver release later this year...

http://www.phoronix.com/vr.php?view=NjY0MA

FunkyRider
08-06-2008, 09:07 AM
He's better make it really, really good. Otherwise he looks like a jerk to me, always wiping out other's code using his code

Regenwald
08-06-2008, 09:31 AM
mh, i'm getting some troubles. what about glucose? is exa/glucose/uxa usable with gallium3d? or are they going to be obsolete and will be substituted? why do they have such big plans when it doesn't makt *that* much sense to put lots of efforts into the "old" dri-model?

oyvind
08-06-2008, 10:43 AM
Xorg development looks very chaotic from the outside. Can't be much fun to program GFX device drivers using a framework in complete limbo all the time. I'll go with nothing but NVidia's proprietary solution, since they pretty much rip out DRI, and it works so blazingly well (and they are working on the 2D-problems for GF8000/9000-gen cards). When will the free next-gen-DRI stack ever mature ? Let's hope the over-night trashing-and-introducing-a-new-API process works out well in the end for *all* graphics-card brands (not just Intel). However long that will be.

puelocesar
08-06-2008, 11:29 AM
Well, if that means that 2d acceleration in Linux will not suck anymore, I'm in all for it!

Pickup
08-06-2008, 11:33 AM
Let me see: Intel had a memory manager done by Tungsten graphics (TTM) and then they threw it away and replaced with their own GEM. After 12 years we finally have a better 2d acceleration architecture, and just the time for it to be ready and Intel threws in a replacement. And now anyone who was going on working to EXA and TTM based drivers must stop and redo all the work from start.
Which technology will be shot dead next? Gallium3d looks the best candidate in the line.
Going on this way, X.org may
1) become an Intel-only graphix server or
2) fork (again) into an Intel-X and exa-ttm-gallium-Y.

remm
08-06-2008, 11:42 AM
Actually, it does more look like TTM took forever and got nowhere. GEM is already virtually included in the kernel. Similarly, EXA was not that successful, it seems ...

Gallium3d could indeed be next in line, because it also failed to deliver for the time being :( Is it really something bad, I don't know.

Obviously, Intel is running the whole show to their benefit, as they're the only one of the big 3 that is directly contributing development resources.

Melcar
08-06-2008, 11:43 AM
Well, if it's "better" then why not. Still, all this wait is really annoying.

madman2k
08-06-2008, 12:53 PM
Let me see: Intel had a memory manager done by Tungsten graphics (TTM) and then they threw it away and replaced with their own GEM. After 12 years we finally have a better 2d acceleration architecture, and just the time for it to be ready and Intel threws in a replacement.
Its not like intel throws everything existing away. Both GEM and UXA are close to TTM and EXA. While the former can be seen as a subset of TTM the latter is just an enhanced version.
Better they do it now, than in 2 yers when all drivers have already been ported.

Pickup
08-06-2008, 12:57 PM
Actually, it does more look like TTM took forever and got nowhere. GEM is already virtually included in the kernel. Similarly, EXA was not that successful, it seems ...

Gallium3d could indeed be next in line, because it also failed to deliver for the time being :( Is it really something bad, I don't know.

Obviously, Intel is running the whole show to their benefit, as they're the only one of the big 3 that is directly contributing development resources.

But then, piece by piece, the whole X will be rewritten around Intel's hardware needings.
Will this drive the other manufacturers to Intel's solutions or will they say "Ah well, let Intel get those leenookz losers, we won't support anything but windoze anymore".
Will Intel be the only available choice for linux and (maybe also) Opensolaris users?
Is there a chance Intel will seize the X code and change the license?

TechMage89
08-06-2008, 12:58 PM
EXA actually works quite well when it's done properly. I'm not sure what benefits UXA really intends to offer.

It's good to keep some perspective about this: this doesn't suddenly make EXA worthless. EXA is still a good architecture and, for example, on radeon (up through r500), it provides very fast 2d. I'd like to see what benefits can be had from UXA. They'd have to be pretty darn good to justify replacing EXA in a bunch of drivers that already have it.

I keep wondering when we'll move to a unified 2d/3d stack, in other words, when 2d API is just a subset of the 3d API.

bridgman
08-06-2008, 04:12 PM
It's probably worth reading Keith's blog before getting too upset here. UXA is a prototype Keith is putting together to try to figure out the best way to integrate EXA acceleration with a GEM-style memory manager *and* make it interoperate cleanly with a compositor. Once it is done I think you will see discussion about whether the changes can be pushed back into EXA or whether a new interface is needed.

http://keithp.com/blogs/UMA_Acceleration_Architecture/

It is probably worth noticing that the drawing API is the same as EXA, it's only the bottom end of the code that is being gutted and re-written to work with the new memory manager.

_txf_
08-06-2008, 07:20 PM
I keep wondering when we'll move to a unified 2d/3d stack, in other words, when 2d API is just a subset of the 3d API.

I wonder if this is already the case with nvidia...There is a known problem with 2d on 8/9 series cards and the fact that these have far less dedicated 2d hardware causes the slowness which is less drastic under previous generations. The problem could be due to poor mapping of 2d calls to the gpu itself...

Unfortunately nvidia is not an open driver and we will never know for sure. What gets to me is just that all these acceleration architectures are a series of false starts which end up (sort of) deprecated before they go anywhere.

-Exa has been around for ages and only recently intel got it performing well.
-Where is glucose? or xorg 7.4 for that matter? :( .
-Is gallium going to survive long enough to reach critical mass? or are they just going to junk it just as drivers start to use it?

madman2k
08-06-2008, 07:25 PM
-Exa has been around for ages and only recently intel got it performing well.
EXA ist just an API an can be implemented using the 3D engine. And the recent chnages that speeded up EXA were not in the intel driver, but in the xserver - thats why radeon flys now with EXA too.

So can we stop whining now and accept that building a proper acceleration architecture takes time...

TechMage89
08-06-2008, 08:56 PM
Keith's blogs are always a bit over my head, but I gather that the purpose of UXA is to solve some of the interface issues between the 2d and 3d ends of the driver to help GLX_EXT_texture_from_pixmap work better and enable GEM to handle allocation for 2d.

In that case, it's not really a new acceleration architecture at all, but just a refactoring of some of the backend assumptions in EXA? Is that about right?

bridgman
08-06-2008, 10:15 PM
Exactly. I bet Keith is already regretting giving it a name :D

Gentooer
08-07-2008, 12:16 AM
EXA ist just an API an can be implemented using the 3D engine. And the recent chnages that speeded up EXA were not in the intel driver, but in the xserver - thats why radeon flys now with EXA too.

EXA also works great on my 6800gt with nouveau. Compositing is so much faster than with the blob! :)

leef
08-07-2008, 12:49 AM
So to recap,

NVidia bypasses X, Intel rewrites X, and AMD has good hardware.

TechMage89
08-07-2008, 01:42 AM
Yeah, basically :p

People complain about ATI's drivers a lot, but they're the only ones that actually follow standards. Intel rewrites them constantly, and Nvidia ignores them completely. I wish the devs could finally make some decisions and implement stuff.

Melcar
08-07-2008, 02:06 AM
Yeah, basically :p

People complain about ATI's drivers a lot, but they're the only ones that actually follow standards. Intel rewrites them constantly, and Nvidia ignores them completely. I wish the devs could finally make some decisions and implement stuff.

The problem then seems that the standards don't always seem to work, that's why Intel keeps re-writing them and nvidia keeps ignoring them :p:D.

Regenwald
08-07-2008, 03:22 AM
@leef
god damn good commentary. you got the point^^

colo
08-07-2008, 04:04 AM
I'm getting sick of all this, really. It's been less than a week that I caught myself thinking, "Hey, maybe with the next Ubuntu release, it's time to ged rid of manually enforcing XAA in xorg.conf, and move over towards EXA, which has been on everyone's roadmap for ages! YAY!", and now THIS?

I sure do hope implementing whatever FSCKING new-on-the-block acceleration architecture of the day does not take as long as we've seen it take with EXA. Because if it does, I might as well go back to fbterm with GNU screen, and get rid of all this annoying X11 shite for the next few years...