xgl: x11 replacement ?

12
XGL: X11 replacement ? O.Couet, ROOT meeting 11/07/2006

Upload: kaiya

Post on 06-Jan-2016

30 views

Category:

Documents


0 download

DESCRIPTION

XGL: X11 replacement ?. O.Couet, ROOT meeting 11/07/2006. Xgl - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: XGL: X11 replacement ?

XGL: X11 replacement ?O.Couet,

ROOT meeting 11/07/2006

Page 2: XGL: X11 replacement ?

Xgl

Xgl is an X server architecture designed to take advantage of modern graphics cards via their OpenGL drivers, layered on top of OpenGL via glitz [1]. It supports hardware acceleration of all X, OpenGL applications and graphical effects by a compositing window manager such as Compiz [2].

The project was started by David Reveman (Novell) and first released on January 2, 2006.

It is at an early stage in development and a number of important pieces are still missing. For instance, Xgl uses an Opengl extension only available in the CVS version of MesaGL: GLX_EXT_texture_from_pixmap. It should be soon included in the propritary NVIDIA drivers.

Xglx was the first server that used this architecture, it requires an already existing X server and is only intended for testing and development. Xegl is the future of Xgl and a long term goal of X server development. Xegl can only be run using Radeon R200 graphics hardware and development has currently been delayed.

[1] Glitz is an OpenGL image compositing library. Glitz provides images composition and implicit mask generation for geometric primitives (trapezoids, triangles, and rectangles)

[2] “Compiz” is the new OpenGL compositing manager [3] from Novell and is the framework that enables the development of graphical plug-ins.

[3] Compositing managers manage special effects on things like windows in a graphical user interface.

Page 3: XGL: X11 replacement ?

Some videos from NOVELL: http://www.novell.com/products/desktop/features/xgl/

Click to start video:

Desktop organization

Click to start video:

Desktop spin

Click to start video:

Transparency

Click to start video:

Zoom windows

Page 4: XGL: X11 replacement ?

Justification for structuring all rendering on top of OpenGL :

It could potentially simplify video driver development.

It removes the artificial separation of 2D and 3D acceleration.

This is advantageous as 2D operations are frequently (and counter-intuitively, since 3D would imply 2D) not accelerated .

It also removes all driver-dependent code from the X server itself, and allows for accelerated Compose and Render operations independent of the graphics driver.

Additionally, compositing managers can use the OpenGL API for rendering, allowing for quite amazing effects.

Page 5: XGL: X11 replacement ?

Competitors

Hardware-accelerated OpenGL window and desktop rendering, limited to using OpenGL for texture composition, has been in use in Mac OS X, in a technology called Quartz Extreme, since Mac OS X v10.2. Quartz 2D Extreme is an enhancement of this feature and more directly comparable to Xgl. Like Xgl, Quartz 2D Extreme brings OpenGL acceleration to all 2D drawing operations (not just desktop compositing) and ships with Mac OS X v10.4, but is disabled by default pending a formal declaration of production-readiness.

Sun Microsystems' Project Looking Glass is one of the pioneer hardware-accelerated desktops. http://www.sun.com/software/looking_glass/

Microsoft is in active development of a similar technology based on DirectX, named the DWM, as part of its upcoming operating system Windows Vista.

Page 6: XGL: X11 replacement ?

Controversy

Xgl technology requires good OpenGL performance, along with several unique features of recent 3D cards, and for the most part these can only be accessed using binary-only (proprietary) kernel modules for ATI and NVIDIA cards .

There are some open source drivers for these cards but they allow 2D only, or allow primitive OpenGL 3D capabilities.

Currently this is a deadlock situation because graphics card manufacturers have stated they have no intention to sponsor fully open source drivers, as this would expose trade secrets about their hardware.

Intel, though, has recently announced that it will open source its drivers, beginning with the Intel 965 Express Chipset: http://intellinuxgraphics.org/

This is a milestone in driver development for Linux.

Page 7: XGL: X11 replacement ?

Availability

As of May 2006, the Xgl X Server ships as a non-default in one major Linux distribution, SUSE 10.1, and is included in Frugalware Linux or SUSE Linux Enterprise Desktop 10.

Xgl can be set up fairly easily for Ubuntu 6.06 (Dapper Drake) and 6.10 (Edgy Eft) and for Freespire with binary packages from unofficial repositories.

Xgl is also available as an overlayed package in Gentoo Linux.

There is also a PKGBUILD for Arch Linux available.

The latest Mandriva Linux 2007 includes official packages to run Compiz , using Xgl and AIGLX .

Page 8: XGL: X11 replacement ?

Conclusion

Today, freedesktop.org hosts the source code for the Xgl packages.

I tried to install from this page on my PC, not surprisingly it did not work, because installing a such software requires deep change in the system (xserver etc…) and I did not want to screw up my system. That’s not a easy task one can do in 5 minutes…

Anyway that is not something end user will have tomorrow on there desktop, so it cannot be seen as a X11 replacement yet. But we should follow the developments.

May be we need a dedicated machine running Suse or Ubuntu or …?

Should we spend more time on it now ?

Page 9: XGL: X11 replacement ?

Some links …

http://en.wikipedia.org/wiki/Xgl

http://en.wikipedia.org/wiki/Compiz

http://www.novell.com/products/desktop/features/xgl/

http://en.opensuse.org/Xgl

http://principe.homelinux.net/

http://freedesktop.org/wiki/Software_2fXgl

http://www.sun.com/software/looking_glass/

Page 10: XGL: X11 replacement ?

Appendix

Page 11: XGL: X11 replacement ?
Page 12: XGL: X11 replacement ?

GLUCOSE:

“It's an OpenGL based acceleration architecture, Nothing more, nothing less”

All the information I found is:

http://lists.freedesktop.org/archives/xorg/2006-August/017527.html

The other articles are either copies of this one or discussion around it. (Like

http://news.softpedia.com/news/Introducing-Glucoze-33116.shtml)

This article has a FAQ list. The two first are:Q: It is what?

A: Acceleration architecture. Nothing more, nothing less.

Q: How do i get it?

A: Do "git checkout glucose" in your xserver git tree.

I do not know git enough to understand what that mean ...

… it is a very early project also.