Xrender pipeline support merged into IcedTea6
Clemens Eisserer
linuxhippy at gmail.com
Sun Nov 30 12:33:44 PST 2008
Hi Mark,
Wow, this is _really_ cool news, thanks a lot :)
I had already thought about asking for integration at a later time, to
allow some kind of slow adoption by interested testers, but seeing it
actually happening is extremly great.
Thanks for your hard work integrating it and for your useful comments
and bug-reports.
Thanks again, Clemens
2008/11/30 Mark Wielaard <mark at klomp.org>:
> Hi,
>
> As most of you probably know Clemens Eisserer has been working on an
> alternative X11 rendering pipeline based on Xrender [1]. Although still
> a work in progress the results are already stunning. Lots of Java2D
> using applications are noticably faster (sometimes by a factor of 10!)
> and running over a remote X connection now feels like it is all local.
>
> Clemens has been pushing bug reports against the whole graphics stack
> (graphics drivers, Xorg server, etc) to get it improved and I believe
> his work is really pushing performance enhancements all over. I am
> hoping that by including xrender as a default option in IcedTea and
> being adopted by the various GNU/Linux distros these enhancements will
> be accelerated.
>
> The new Xrender pipeline is completely optional. If a user doesn't
> activate it (-Dsun.java.xrender=True) then the old X11 pipeline is being
> used. This makes it safe to include by default. With this more people
> will be able to test it out and detect performance bottlenecks still
> present. Clemens blog is a good source of information for those wanting
> to test it out and getting more background on the underlying
> technologies that make it all work (fast) [2].
>
> Backporting to IcedTea6 was pretty easy. It depends on Roman's extension
> to make the SurfaceManagerFactory allow plugging in different
> implementations (included as icedtea-xrender-000.patch) and only the
> initial drop (icedtea-xrender-001.patch) needed some adjustments to
> apply cleanly. That patch also includes one minor bug fix [3]. The rest
> of the included patches (icedtea-xrender-00[2-8].patch) are just the
> commulative patches drawn from the xrender repository [4]. This should
> make it easy to keep it up to date from the master repository by just
> adding a new icedtea-xrender-xxx+1.patch for each new commit.
>
> configure.ac and Makefile.am have been extended to check for
> --enable-xrender (default yes) and the Xrender libraries and only apply
> the patches when both are there.
>
> 2008-11-29 Mark Wielaard <mark at klomp.org>
>
> * configure.ac: Add and check --enable-xrender.
> * Makefile.am: Add XRENDER_PATCHES when ENABLE_XRENDER set.
> * patches/icedtea-xrender-00[0-8].patch: New patches.
> * HACKING: Document new patches.
>
> Changes applied attached (excluding the icedtea-xrender-xxx.patch
> files).
>
> Cheers,
>
> Mark
>
> [1]
> http://mail.openjdk.java.net/pipermail/challenge-discuss/2008-March/000054.html
> [2]
> http://linuxhippy.blogspot.com/
> [3]
> http://mail.openjdk.java.net/pipermail/xrender-dev/2008-November/000011.html
> [4]
> http://hg.openjdk.java.net/xrender/xrender/jdk/
>
More information about the xrender-dev
mailing list