Login
Newsletter
Werbung

So, 26. Juni 2005, 22:12

Software::Desktop

Neue Beschleunigungsarchitektur für X.Org

Zack Rusin hat eine erste Version der neuen Beschleunigungsarchitektur für X.Org veröffentlicht.

Schon länger arbeitet KDE-Entwickler Zack Rusin daran, die derzeit in X.Org verwendete »XFree86 Acceleration Architecture« (XAA) zu ersetzten. Wie Rusin erklärte, sei diese denkbar ungeeignet für moderne Desktopsysteme. Sie sei nicht nur sehr komplex, sondern könne XRender auch nicht richtig beschleunigen. XAA nutzt die 2D-Engine der Grafikkarte stark, um nur selten verwendete Operationen, wie den Bresenham-Algorithmus, zu beschleunigen. Dadurch setzt XAA jeden vorhandenen Zusatzspeicher außer Kraft. Zudem wird die Beschleunigung von XRender durch den XAA-Memory-Manager selbst eingeschränkt. Diese Probleme haben Rusin animiert, eine neue Beschleunigungsarchitektur für X.Org zu entwickeln. Für dieses Vorhaben entschied er, die neue Architektur auf der »KDrive Acceleration Architecture« (KAA) des KDrive-X-Servers aufzubauen. Von diesem stammt auch der eingesetzte KDrive-Memory-Manager, der laut Rusin wahre Wunder für die normale Desktop-Nutzung vollbringt.

Zumindest vorerst hat die neue Architektur den Namen »Exa« bekommen - ob sie diesen weiter tragen wird, ist noch nicht sicher. Die Anforderungen an Exa sind, XRender richtig zu beschleunigen und so einfach wie möglich zu sein. Der erste Punkt soll sicherstellen, dass Nutzer den Composite Manager auch auf langsamer Hardware nutzen können, solange der auf OpenGL basierende Xgl-Server nicht zum Mainstream werden kann. Der zweite Punkt hingegen richtet sich an die Treiberentwickler, für die der Übergang so einfach wie möglich sein soll. Beide Anforderungen soll Exa bereits zum jetzigen Zeitpunkt erfüllen.

Exa und XAA können koexistieren - der Code für beide kann in einem Treiber vorhanden sein, um so bestmögliche Kompatibilität zu gewährleisten. Ferner verlangt Exa keine Änderungen am X-Server. Sollte es einmal überholt sein, so kann einfach das Exa-Verzeichnis sowie der zugehörige Exa-Code aus dem Treiber entfernt werden. Dadurch werden keine Reste im Server verbleiben. Laut Rusin ist es außerdem trivial, einen Treiber mit vorhandenem XAA-Support um Exa-Unterstützung zu erweitern.

Wer Exa ausprobieren möchte, kann sich einen Snapshot herunterladen. In seiner E-Mail erklärt Rusin bereits, wie man Exa Installiert. Nächste Woche möchte er außerdem eine Beispiel-Implementation eines ATI R200-Treibers und eine Dokumentation, wie man Composite-Beschleunigung implementiert, veröffentlichen. Er plant weiterhin, alle Treiber, die XAA nutzen, derzeit aber keinen Maintainer haben, selber zu portieren. Voraussetzung ist jedoch, dass er passende Hardware bekommt.

Zack Rusin meint, dass X.Org durch Exa fortan mit den Desktops von Microsoft und Apple konkurrieren kann, während die Entwickler weiter an Xgl arbeiten.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung