Rubriken

FernUni-News - Forschung und Entwicklung

Super-Prozessor „tunen“ und Energie einsparen - Software für neuen SCC

FernUni-Forscher in exklusivem Club

Der FernUni-Professor Jörg Keller und sein schwedischer Partner gehören zu den Projektteams, die Intel dabei unterstützen können, seinen produktionsreifen Prozessor SCC für Anwendungen in der Praxis reif zu machen. Zwar gibt es kein Geld dafür, „aber der Zugang zu diesem Rechner ist eine Exklusivität, die man sich nicht kaufen kann“, schwärmt der Hagener Prozessor-Professor.

„Immer schneller“ war in den 1990-iger Jahren die Prämisse der Prozessor-Entwickler, ein Taktfrequenzrekord jagte den nächsten. Dann wurden zwei statt einer CPU eingebaut, dann vier. Inzwischen ist ein Hauptprozessor (CPU) von Intel mit sage und schreibe 48 Cores (Kerne, CPU-Blocks eines Prozessors) produktionsreif: „Ein riesiger Sprung“, erkennt Prof. Dr. Jörg Keller an, „die Frage des Herstellers Intel ist nur: Was machen wir überhaupt mit so vielen Prozessoren?“ Die Leistung ist da. Und jetzt? „Wer arbeitet schon gleichzeitig an 48 Anwendungen?“ fragt der Leiter des Lehrgebiets Parallelität und VLSI an der FernUniversität in Hagen, „schon bei zwei CPUs läuft eine Einzelanwendung nicht schneller ab, erst bei einer Anwendung pro CPU ist eine höhere Geschwindigkeit zu erkennen.“ 48 Anwendungsmöglichkeiten findet man nur im Hochleistungsbereich.

Prof. Dr. Jörg Keller Prof. Dr. Jörg Keller

Daher ermöglichte Intel es Forschergruppen in aller Welt, den neuen Prozessor SCC (Single Chip Cloud) zu testen, anzuwenden und (Nutzungs-)Ideen einzubringen. Prof. Dr. Jörg Keller gehört mit Prof. Dr. Christoph W. Keßler (Universität Linköping) zu denjenigen Gruppen, deren Projektvorschläge Intel fördert.

Schneller als IBM auf dem CELL-Prozessor

Das Projekt, mit dem die beiden Professoren zum Zuge kamen, untersucht das Sortieren von Zahlen. Dabei handelt es sich um eine von zwei Hochleistungs-Analyseverfahren. Bei „klassischen“ Anwendungen wie Wettervorhersagen werden rechnerische Höchstleistungen verlangt. Im Fokus der Forschung stehen jedoch zunehmend große Datenmengen, die nur bewegt werden: „Bei einem Flug-Buchungssystem z.B. werden riesige Datenmengen hin- und hergeschoben“, erläutert Jörg Keller, „viel gerechnet wird dabei nicht“. Das Sortieren ist ein guter Indikator dafür, wie neue Anwendungen auf dem Prozessor funktionieren. Er hat dieses „Zahlenschieben“ kürzlich auf einem anderen Prozessor, dem CELL von IBM, untersucht: „Wir waren die Schnellsten, sogar schneller als IBM.“

Anhand des Sortierens von 80 Karten verdeutlicht Keller, was sein Projektteam auf der CELL-CPU gemacht hat, Hat man 8 Prozessoren wie im CELL, sortiert jeder zuerst 10 Karten sequentiell, dann werden jeweils zwei sortierte Kartenstöße zu einem größeren zusammengemischt, bis nur ein sortierter Stapel übrig bleibt. Normalerweise werden die Zwischenergebnisse dabei im Speicher außerhalb des CELL-Chips abgelegt, was einen Engpass darstellt.

Das deutsch-schwedische Forscherteam ließ sich etwas Neues einfallen: Jeder Prozessor „erkundigt“ sich beim nächsten, ob dort noch zwei Stapel sind, die er zusammenfügen kann, erläutert Jörg Keller. Die sortierten Stapel werden nicht in einen externen Speicher geschoben, sondern direkt in die nächste CPU: „Die Kommunikation auf einem Chip verläuft natürlich viel schneller, wenn man ihn überhaupt nicht mehr verlassen muss.“ Die Entwickler waren damit schneller als alle anderen – Weltrekord.

Dreiecke in Pyramiden

Auf dem CELL-Prozessor sind die 8 CPUs in Form eines Rings angeordnet. Die 48 CPUs des SCC-Prozessors dagegen sind – vereinfacht ausgedrückt – gitterförmig angeordnet. Die Kommunikation und das Verschieben der Daten erfolgt entlang der Gitterlinien und damit erheblich schneller als auf einem Ring. Jeweils drei CPUs bilden beim SCC eine Arbeitsgruppe. Zwei von ihnen sortieren einen Teil der Karten in einen gemeinsamen Stapel. Diesen schieben sie der dritten CPU zu. Diese sortiert die erhaltenen Daten zusammen mit der dritten CPU einer anderen Arbeitsgruppe zusammen. Dieser neu entstandene Stapel wird dann ebenfalls wieder auf die nächst höhere CPU-Ebene zum Weitersortieren verschoben. Um vier Stapel zu einem zusammen zu fügen sind also gleichzeitig sieben SCC-CPUs beschäftigt..

Bildlich kann man sich diese Arbeitsstruktur als eine Pyramide aus Dreiecken vorstellen. Der jeweils obere Punkt bildet zusammen mit der Spitze einer anderen Gruppe die Grundlinie des nächsten Dreiecks. Die Fragestellung des neuen Projekts beschäftigt sich damit, wie man die Dreiecke so auf das Gitter abbildet, dass die Eckpunkte möglichst nahe bei einander liegen, um möglichst schnell Daten verschieben zu können.

Geschwindigkeit braucht Energie

Doch mit der Geschwindigkeit ist ein Problem verbunden: Je schneller ein Prozessor arbeitet, desto mehr Strom verbraucht er. Laut Siegfried Behrendt vom Institut für Zukunftsstudien und Technologiebewertung in Berlin entfielen schon 2001 fünf Prozent des Elektroenergieverbrauchs in Deutschland auf die Informations- und Kommunikationstechnik (23,2 Terawattstunden). Für 2010 werde mit 29, für 2015 mit 31 Terawattstunden gerechnet (vgl. „Wie viel Energie kostet eine Google-Suche?“ www.Stern.de, 8.08.2008). Rechner setzen zudem Energie ganz wesentlich in Wärme um. Daher müssen z.B. Rechenzentren immer kostenintensiver gekühlt werden.

Keller will daher den Energieverbrauch minimieren: „Wir müssen ausrechnen, wie schnell jede einzelne CPU laufen soll, um eine hohe Arbeitsleistung bei minimalem Energieverbrauch zu erreichen.“ Für eine maximale Leistung bei minimalem Verbrauch ist für jede einzelne CPU ein „Feintuning“ notwendig.

Gerd Dapprich | 08.12.2010
FernUni-Logo FernUniversität in Hagen, 58084 Hagen, Telefon: +49 2331 987-01, E-Mail: fernuni@fernuni-hagen.de