Zum Hauptinhalt Zur Navigation

Linux 2.6.13 könnte Cell unterstützen

Unterstützung für die Synergistic Processing Units des Cell kommt später. Der von Sony, Toshiba und IBM entwickelte Cell-Prozessor, der auch in der PlayStation 3 zum Einsatz kommt, unterscheidet sich in seiner Architektur auf Basis eines 64-Bit-PowerPC-Kerns sowie acht Synergistic Processing Units (SPUs) zum Teil deutlich von den Prozessoren, die von Linux unterstützt werden. Entwickler von IBM haben mittlerweile aber Linux auf den Cell portiert und hoffen, ihre Patches im kommenden Linux-Kernel 2.6.13 unterbringen zu können.
/ Jens Ihlenfeld
14 Kommentare News folgen (öffnet im neuen Fenster)

Linux auf den PowerPC-Kern des Cell zu portieren war dabei recht einfach, unterscheidet sich dieser doch kaum von Plattformen wie IBMs pSeries, den in Apples PowerMacs eingesetzten Chips. Doch damit erhält man noch keinen Zugriff auf die SPUs, die den Cell unter anderem so besonders machen – und nur der Kernel kann direkt mit den SPUs in Kontakt treten. Es sind also unter anderem Userspace-Funktionen notwendig, mit denen Programme in die SPUs geladen, Speicher zwischen den SPU-Programmen transferiert und die Ausführung der Programme synchronisiert werden kann. Zudem muss die SPU-Integration in existierende Werkzeuge wie GDB oder Oprofile umgesetzt werden.

Mitarbeiter von Sony, IBM und Toshiba haben mittlerweile in Austin (Texas) die Arbeiten an einer grundlegenden Linux-Portierung auf Cell abgeschlossen. Es liegt ein Patchset für die aktuelle Version des Linux-Kernels 2.6 vor, das künftig von IBMs Linux Technology Center (LTC) in Böblingen gepflegt wird. Die Entwickler hoffen, die meisten ihrer Änderungen in Linux 2.6.13 integrieren zu können, so dass diverse Linux-Distributionen Cell schon bald unterstützen könnten, wenn auch zunächst ohne Zugriff auf die SPUs.

IBMs LTC hat eine lauffähige Linux-Distribution für das PowerPC-Processing-Element (PPE) des Cell, für die nur wenige Änderungen am Kernel notwendig sind. Vor allem der Interrupt-Controller und die IOMMU-Implementierung des Cell sind mit älteren Linux-Versionen nicht kompatibel. Finden diese ihren Weg in den Linux-Kernel, wird es möglich sein, ein einzelnes Binary für 64-bittige PowerPC-Prozessoren auf Cell, Apple PowerMac und IBMs pSeries auszuführen.

Die SPUs sollen später über ein Dateisystem angesprochen werden, das aber noch nicht ganz reif ist, so dass es erst in späteren Versionen des Linux-Kernels integriert werden soll. Programme, die in den SPUs laufen sollen, werden getrennt vom PPE-Code kompiliert und direkt in die SPUs geladen, worin die IBM-Entwickler ein enormes Potenzial für künftige Spezialanwendungen sehen, auch wenn aktuell Applikationen auf Cell nicht besser laufen als auf anderen Prozessoren.

Pläne, ein 32-Bit-Linux auf Cell zu portieren, gibt es nicht, aber Cell erlaubt es, auch 32-Bit-Applikationen damit zu nutzen. Dabei läuft Linux auf dem Prototypen eines Cell-Prozessors auf einem Blade mit zwei Cell-Prozessoren in einer SMP-Konfiguration und mit 512 MByte Speicher.


Relevante Themen