Some Trolltech programmers are doing some optimization work in the x.org RENDER extension. RENDER has been used with COMPOSITE to make “transparency” and “shadow” effects, and its slowness has stopped it from being widely adopted. Hopefully, this optimization work will make things better, although it’s not clear in the email if this addresses the “XAA sucks, someone needs to take KAA to x.org” problem which is often said to be the real problem of render slowness. RENDER is also often used to do more things, like AA fonts, so this will be good for X desktop in general.
NICE!!!!
They claim a speed improvement of factor 3-4 when not using transformations, and 8 times otherwise! That’s really great news.
These two are among the best programmers that the KDE/Qt community has produced. Lars wrote the bulk of KHTML and Zack’s contributions are legion. Zack is now going to be working on X11 and Qt4’s graphics subsystem full time and Lars already has been the main guy behind Arthur.
KDE in particular and the entire free desktop community in general are going to be on the winning side having these two devoting attention to X.org
http://www.kdedevelopers.org/node/view/978
Hi,
Maybe they should ask Rasterman, of Enlightenment, to take a look? *grin*
Just a thought…considering all the work he’s done in this area, and his track record (eg imlib, imlib2, now the EFL etc.) And his infamous XRender vs Evas benchmark.
cya,
Victor
Is this a speedup for all, or is this just composited things? Because I could care less about composite speed, I’ve never had a slow down on a geforce mx 440, so it must be decent enough. But cpu bound X could be quicker!
Thanks for the other link. Xserver still has lots of cruft that has to be ripped out. But with Xgl, Luminocity, and other things around the corner things are looking good. Oh, and with GCC 4.0 around the corner Render should get another speedup. Search around for Keith Packard and his comments about Render and GCC 4.0.
I’ve been playing around with Luminocity on my gentoo partition. Impressive stuff. I love how the menus fold over like a piece of paper when opening them and the expose type stuff in the workspace windows.
But the real question is how do these Render optimizations tie into the fact that ATI still hasn’t exposed any functionality in their drivers for hardware acceleration ala NVidia (RenderAcceleration)?
I always get excited when I hear about aggressive X-related developments; hell, ANY tinkering on X catches my attention. After years and years of virtually stagnant xfree development, fervent discussions like these keeps my hopes high for the future of the free *NIX desktops.
I thought going from Xfree to x.org would be a performance increase. I don’t really care about eye candy like shadows,transparency, but one thing I did want is vsync on the desktop, Does x.org provide that?
And if one turns off the composite extension does x.org bring anything to the table that xfree doesn’t? Being from the point of view of an end user. And I use nvidia binaries btw, not sure how all that ties in, but I’ve read that you can’t use RENDER and still have opengl available for games.
Just not sure what the current improvements/limitations x.org brings to the table.
Using the following works with the (few) games that I have tried.
Section “DRI”
Mode 0666
EndSection
Section “Extensions”
Option “Composite” “Enable”
Option “RENDER” “Enable”
EndSection
Section “Device”
Identifier “Card0”
Driver “nvidia”
VendorName “nVidia Corporation”
BoardName “NV17 [GeForce4 MX 440]”
BusID “PCI:1:0:0”
Option “NoLogo” “true”
# Option “DigitalVibrance” “32”
Option “RenderAccel” “true”
Option “AllowGLXWithComposite” “true”
EndSection
remove this part
Section “DRI”
Mode 0666
EndSection
DRI isn’t needed by nvidia.
what is xserver? how does it relate to Xorg ? Will the former kill the latter ?
xserver is currently mainly a testbed for x.org development – it won’t replace x.org, it might even die sooner or later…
NVIDIA has Xrender acceleration, wich means that all Xrender stuff in nvidia cards can be hardware accelerated, if you enable the right option in the xorg configuration file.
So, in non-NVIDIA cards, Xrender is much slower. You just didn’t noticed the slowness because of this particular reason.
Weren’t they moving to modular xorg development at some point?
I’m sure raster has better things to do with his time.
Though maybe a leaf can be taken from his book and this team might actually be able to produce something effective.
I put code where my mouth was and wrote some code and gave it off to ajax on #freedesktop.org a few weeks ago:
http://www.rasterman.com/files/blend.tar.gz
these routines should be able to be drop-in replacements for xrender’s blending. i’m leaving it to others to integrate them into x’s actual codebase – but this is the nuts and bolts. high-speed C and ASM routines here should cover a shunk of xrender paths and get some speedups.
cool hope they intergrate them
<blockquote>NVIDIA has Xrender acceleration, wich means that all Xrender stuff in nvidia cards can be hardware accelerated, if you enable the right option in the xorg configuration file.</blockquote>
Unfortunately it is horribly buggy and unstable ATM. Using the most recent NV drivers (7174) with x.org 6.8.2 caused X to hard lock whenever I used Mozilla/Epiphany/Firefox for an extended period of time.
So use 6629 instead
Hi,
are these routines from imlib2?
if render improves, would imlib2 start using render?
imlib2’s blending is really great, it’s astounding to see imlib blend with an alpha gradient, 30 fps, and have a really low cpu usage:
http://fopref.meinungsverstaerker.de/div/rootvis.png
(you can’t count on the stuff top reports on that screenshot)
regards
Ford
I figure that for this stuff to be realy accepted you’d have to move it to OpenGL-based for the real performance enhancement…
The 2d portions of a GPU core are tiny compared to the 3d portions.. they are much more capable.
>Unfortunately it is horribly buggy and unstable ATM. >Using the most recent NV drivers (7174) with x.org 6.8.2 >caused X to hard lock whenever I used >Mozilla/Epiphany/Firefox >for an extended period of time.
Yes,I used the 6629 nvidia drive ,but it like a shit,when I open the firefox,the firefox crashed ,the screen and key locked and screen turn to black.
This is being worked on, originally it was daniels and ajax hacking on this. I’ve started to move their work from DebriX over to xc-HEAD and it’s starting to come alive
Shawn.
Maybe if you keep piling on hack after hack over the X11 protocol, you’ll finally have something halfway decent. 10 years of “hacking” indicates that is very unlikely.
And on another note: Seriously, you guys still have to edit configuration files to get stuff working? Are fonts even sorted out yet? Must be the year of the Linux desktop!
True that config files are still involved, but they’re a lot less of a failing point now. You can now have your config auto-generated most of the time, and you can even set up so that you can plug ‘n’ play keyboards / mice. A big part of the problem is still the whole driver issue. If hardware manufacturers contributed more, auto configuration would be a lot more dependable. Fonts I don’t know much about
Maybe if you keep piling on hack after hack over the X11 protocol, you’ll finally have something halfway decent. 10 years of “hacking” indicates that is very unlikely.
Obviously you know what you’re talking about, and you’ve profiled X and found that the X11 protocol is the cause of the slowness? Weird, because people has found to be the CONTRARY