Samstag, 26. Juni 2010

IE9 to be GPU accalerated - Firefox-2.0+ too ;)

There seems to be quite a hype caused by the fact that the IE9 preview builds use Direct2D to accelerated HTML/SVG/Canvas rendering.
I always wonder why people didn't hype Firefox the same way, when FireFox-2.0 was released in Oct. 2006 it did exactly the same thing - using Cairo on top of XRender.
That was 4 years before Microsoft will release IE9 :P

FireFox-3.6 does even well on the IE9 canvas/svg demos:

(Granted, I had to scale down the background image, my weak intel-IGP has limited texture size of 2048x2048px)

Its also a good demonstration why the usual QT/KDE-Statement "we won't work on our XRender backend, the raster engine is faster anyway" isn't that clever.

Samstag, 12. Juni 2010

Xrender pipeline now in JDK7 master :)

The XRender pipeline has been integrated into the jdk7 workspace:

Thanks a lot to Phil Race who led the review-process and did many corrections and enhancements himself as I was/am rather busy right now.

This means from now on OpenJDK7/JDK7 will be shipped with the xrender pipeline included, but disabled by default for now.
The code integrated is the rewritten/new version, including the java-part of the "Jules" rasterizer-plugin which uses cairo for antialised rendering. I'll soon provide pre-built binaries of Jules for x86/amd64 as well as up-to-date sources. Whats missing is the pure-java protocol generator, its not ready yet.

In order to use the xrender pipeline simply grab a recent enough OpenJDK-7 build, or Sun's closed source JDK7-b97+ and pass -Dsun.java2d.xrender=True to the runtime.
Should work on recent Linux and Solaris distributions.

So whats next:
- Bug fixing, so grab a build and cu on OpenJDK's Bugzilla ;)
- Porting Jules to Cairo-1.10 (should improve performance when used as AATileGenerator for BufferedImage targets)
- JDK7u10 enables the pipeline by default ;)