Skip to content

New Acceleration Architecture for X.org

Tuesday, 28 June 2005  |  Binner

At the recent European X.Org Developers Meeting KDE developer and Trolltech employee Zack Rusin presented a new acceleration architecture named Exa (eyecandy X architecture) for X.org. Being based on KAA (KDrive acceleration architecture) it's designed to be an alternative to the currently used XAA (XFree86 acceleration architecture) with better acceleration of XRender which is used by composite managers for desktop eyecandy effects. The next X.org release which is expected to contain Exa is planned to be released in September.

Making existing graphic card drivers using XAA take advantage of Exa is said to be easy and Zack volunteered to, besides bringing Exa into X.org, to port all unmaintained graphic card drivers as soon as he gets the respective hardware in his hands. Exa is meant to improve the desktop experience and bring users some much needed eye-candy while Xgl, an X-Server layered on top of OpenGL is being worked on.

Comments:

All eyecandy progress is good - Erik - 2005-06-28

Outstanding. The instant-gratification part of me is happy this is being done on two stages (KAA then Xgl) as opposed to having to wait for Xgl. Any news about the Unichrome chipset's support? I could perhaps lend a hand.

Xgl - Simon Edwards - 2005-06-28

What kind of timetable is Xgl running on? Anyone know when we can expect it to come out? -- Simon

Re: Xgl - cl - 2005-06-28

> Anyone know when we can expect it to come out? When it's done. ;)

Re: Xgl - cies breijs - 2005-06-28

and even if Xgl is out we still depend on the proprietary/binary-only drivers that come with the graphic cards... if those drivers continue to be unoptimised and of poor quality the real power of our modern graphic monsters will remain unused. anyway, what zack is doing will probably help pushing X' desktop graphics to an acceptable level. thanks zack! _cies.

Re: Xgl - Tom - 2005-06-28

Well, apart from those of us getting reasonable performance out of the free drivers in Xorg :)

Re: Xgl - cies breijs - 2005-06-28

i dont know, but, is there any free (as in Freedom) driver for the recent 3D graph cards?

Re: Xgl - Brandybuck - 2005-06-28

No, not really. Next time don't throw away your video card just because some pimply kid makes fun of your "obsolete" system :-)

Re: Xgl - Zak Jensen - 2005-06-28

Hey- that statement isn't exactly fair to those of us who (inexplicably or accidentally, of course!) destroy our hardware. ;) As far as the nVidia cards go, the (proprietary) linux drivers have performed very well. I have yet to have an issue with the speed of my rendering, and I've been using their driver for a few years now. It supports all of the features available on windows, and it even has its own configuration program. :) nVidia seems quite devoted to the cause. Note: I have a desktop card (GeForce), not a workstation card (Quatro (?)).

Re: Xgl - Jonas - 2005-06-28

You can still buy the (DRI supported) Radeon 9200s. They're really cheap, needs no fans, and some models comes with DVI so it's a perfect product right now. But they probably won't be available in another 6 months, since they will stop producing the chipsets.

Re: Xgl - Lurchi - 2005-06-28

Bought an 9250 some days ago. Works fine with the OS drivers, has DVI+VGA+TV, 128MB and passive cooling. It also work with AGP 2x-8x (3.3V, 1.5V and 0.8V signal level), which I needed for my really old motherboard (GA-7ixe4, SDR-RAM, Duron 700). Nice and cheap card. If you need more power, there is the 9550, which is supported by the r200 driver, and for newer cards (r(v)3xx and r4xx series) support is on its way (http://r300.sf.net/), Quake3 already working.

Re: Xgl - KDE User - 2005-06-29

Haha, I love the comment about the no fans. They should hype that as a feature in fact. I hate the fans. So noisy and annoying.

So - thom - 2005-06-28

So it's a new 2D acceleration layer which doesn't use OpenGL, how is it different from Evas ? Is it specific to Qt and does it need any modifications beside video drivers ?

Re: So - Morty - 2005-06-28

Its not dependent on any toolkit, not like Evas which is part of a toolkit. It's in the Xserver and not specific to Qt. It does not sound like it needs any modifications besides the video driver, it's a replacement for xaa.

Re: So - superstoned - 2005-06-28

well, it is part of X11, and evas is not. i guess evas is specific for enlightenment... it has nothing to do with QT, afaik, all it has to do is replace XAA (and be faster).

Re: So - Anonymous - 2005-06-28

evas is a generic graphics library, it doesn't depend on Enlightenment, much like imlib which was also created by E crew.

Evas is a canvas - Craig Ringer - 2005-06-28

Because evas is a fast canvas library. This is an in-driver architecture to let drivers accelerate primitive drawing operations they couldn't before, and do existing ones much more simply. Evas (and Cairo) provide a simple and optimised way to do things like say "draw an antialiased line at 50 pt width on a 1m canvas scaled to fit my 400x400 px window" without the app author descending into sobbing fits. XAA and friends help the graphics card driver do the underlying "draw this antialiased 5pt line from (x1,y1)px to (x2,y2)px on :0.0" *really* *fast*. Evas, Cairo, etc can't reach into the graphics driver level and use hardware specific graphics tricks. XAA and friends aren't a drawing API, they're an acceleration framework. The two really have basically nothing in common, except in that the former can use tha latter.

Re: Evas is a canvas - jenga - 2005-06-28

nice post. to all others doing a "what about debian" in a slack topic, leap.

Re: Evas is a canvas - superstoned - 2005-06-28

well, i think it is not bad to ask about technology that seems to be related. not only because it can be informative (i didn't exactly know the diferences as the parent did), but also point to duplication off efforts - which CAN be a bad thing.

Re: Evas is a canvas - ac - 2005-06-28

Everything of E17 is duplication, otherwise it would be a concerted effort together with X, GNOME and KDE.

Re: Evas is a canvas - illogic-al - 2005-06-29

since the things in E17 came first they are being duplicated. Try getting your facts straight before troll... wait nm. Trolls don't get there facts straight.

Re: Evas is a canvas - thom - 2005-06-29

Thanks for your answer, So will Qt use Cairo or something similar (is it arthur) on top of EXA ?

Re: Evas is a canvas - Anonymous - 2005-06-29

Qt4 has Arthur: http://doc.trolltech.com/4.0/qt4-arthur.html

Re: Evas is a canvas - ac - 2005-06-29

Qt Arthur will use XRender that is accelatered by the graphics drivers use of EXA.

Thanks Zack! - fast_rizwaan - 2005-06-28

Thanks for improving X and Desktop experience. Thanks in advance :)

Re: Thanks Zack! - blacksheep - 2005-06-28

Yeah, Thanks Zack! This guy is really a talanted hacker! Trolltech: pay him good!

Sweet! - Ryan - 2005-06-28

Plasma here we come!

Wunderkind? - ac - 2005-06-28

"Zack volunteered to port all unmaintained graphic card drivers as soon as he gets the respective hardware in his hands" Where did Zack suddenly get the whole knowledge to promise and do something like that? I didn't know him doing any hardware driver development before...

Re: Wunderkind? - Anonymous - 2005-06-28

Do you think that he knew something about Mozilla code before hacking on it at aKademy? :-)

Re: Wunderkind? - Nicolai Haehnle - 2005-06-28

When he says "port", he really means switch some function calls around so it uses the Exa framework instead of XAA. Only the most basic primitive will actually be accelerated in hardware (and even then, only if the driver already accelerated them before). Porting a driver to Exa appears to be really simple, due to clever design by Zack, so porting a driver is mostly a formality. Still, you obviously need to have the hardware and do testing on it (which is usually the far more time-consuming part in driver development if it's to be done right).

Re: Wunderkind? - Morty - 2005-06-28

It's not needed because of the way he implemented Exa, from the anoncement "Note that you don't have to be a driver developer to switch any of those drivers."

Re: Wunderkind? - ac - 2005-06-28

But it's Zack himself who made that possible so he has to already have quite a knowledge about the whole graphic card driver architecture which again involves plenty of hardware details.

Re: Wunderkind? - clee - 2005-06-28

Zack is not really human. He's the last member of an advanced überprogramming alien race, kind of like Superman but with a text editor instead of laser eyes. His only weakness? Battlestar Galactica.

Re: Wunderkind? - superstoned - 2005-06-29

+5 funny

So... - Leon Mergen - 2005-06-28

... let the Slashdot begin...

subpixel antialiasing - mm - 2005-06-28

Will there be any progress with subpixel antialiasing? What does Eye Candy help when the fonts are still ugly displayed (yes, I switched subpixel hinting on in KDE) Best wishes mm

Re: subpixel antialiasing - asdasd - 2005-06-28

qt4 has all the features you need , help coding / porting today !!!

Re: subpixel antialiasing - Hans - 2005-06-29

> Will there be any progress with subpixel antialiasing? No. Subpixel hinting is ready to use. Maybe you should select another hinting modus or activate the bytecode interpreter. > What does Eye Candy help when the fonts are still ugly displayed ?? subpixel hinting + hinting=full gives very clear fonts. subpixel hinting + bytecode interpreter gives *sometimes* even better fonts.

Re: subpixel antialiasing - zxcvzxvcv - 2005-06-29

This has absolutely NOTHING to do with what's mentioned in this article. Try enableing the Freetype Bytcode Interpreter to improve your fonts.

KAA and KDrive - Renato Sousa - 2005-06-28

Anyone find it funny that these K-initial technologies are in no way related to KDE (in the sense that the K in their name is not from KDE)

Re: KAA and KDrive - ac - 2005-06-28

Nope, it's just like with the Linux kernel which uses k all the time as well. (Maybe I'm just unfunny.)

Re: KAA and KDrive - Jake - 2005-06-28

Which brings up a good point, we should port the kernel to Qt :)

Re: KAA and KDrive - Zak Jensen - 2005-06-28

Dude. Just imagine the power of QT signals in the kernel, and you can see the potential. *ducks*

Re: KAA and KDrive - Hans - 2005-06-29

"make xconfig" is using qt...

Re: KAA and KDrive - Anonymous - 2005-06-28

That's the reason why it had to be replaced/improved ;-)...

With Nvidia - ac - 2005-06-28

I use the binary 2d and 3d hardware accelerated driver from Nvidia. Will I still see a speed/flicker improvement in X?

Re: With Nvidia - Anonymous - 2005-06-28

Nvidia signaled to support Exa in their driver.

Is it stable? - wangxiaohu - 2005-06-28

Current COMPOSITE feature crashes a lot of applications. How about this one?

Re: Is it stable? - Jack - 2005-06-29

Here here! Stability of the composite extension is erm... non existant? :) I've gone through two graphic cards (granted, both nVidia (GeForceMX460, GeForce2GTS), and two completely different hardware platforms (Athlon 1.3, and Athlon64bit3200+), both give lockups consistantly after using xorg with the composite extension enabled after about 1Sec-1Min of use.. I want my pretty desktop damnit :P

Re: Is it stable? - superstoned - 2005-06-29

the kde composition support is much more stable for me. maybe it helps... (so dont use xcompositemgr but enable shadows and transparancy in kwin)

Re: Is it stable? - Vlad Blanton - 2005-10-03

works good for me! nvidia geforce 6800GT with the kde configuration tool in control center. I don't get any crashes but sometimes windows forget to stop being transparent after I move them or change the size. Oh, and some games flicker a bit.

My - aNDY - 2005-06-29

I dont think X.org will be fine

Re: My - Anonymous - 2005-06-29

Pardon? What do you mean?

re - aNDY - 2005-06-29

Oh My God

Wow. Good news !! - Jesus Franco - 2005-06-29

AWESOME. I bet kde withh be the first to take advantage of the features. Then Enlightenment then Xfce and gn0m3 :p

Re: Wow. Good news !! - someone300 - 2005-07-11

Well GTK 2.7 already has support for cairo, and cairo can use glitz. Glitz matches the XRender specification, so will take full advantage of all this sort of stuff. As far as I know kde is estimated to have cairo support in KDE 4.. At least that's the info I've pieced together ;) so don't take my word for it

Re: Wow. Good news !! - Anonymous - 2005-07-11

Gtk+ 2.7 is a development version. So better wait until it's released and the first GNOME version depending on it and tested against Gtk+ 2.8 is released.

Re: Wow. Good news !! - cl - 2005-07-11

KDE doesn't need cairo because Qt4 offers the painting framework Arthur (http://doc.trolltech.com/4.0/qt4-arthur.html) that can also use OpenGL. Somebody will probably create an cairo backend for Arthur but it will be only one of the choice.

blow to xgl - MamiyaOtaru - 2005-08-12

mission accomplished! http://lists.freedesktop.org/archives/xorg/2005-August/009168.html Good thing someone is working on this now that xgl has had a bit of a setback. Of course, exa seems to be part of the reason for the setback. boo hoo.