© Foto: Intel

Software-Design
02/22/2011

Multicore-CPUs bremsen Programme aus

Im Zeitalter der Multicore-Prozessoren macht sich langsam aber sicher ein seltsames Phänomen breit. Trotz laufend verbesserter Hardware brauchen moderne Rechner mit Vier- und Achtkernprozessoren für aufwendige Rechenoperationen mitunter länger als ältere Geräte. Professor Thomas Fahringer von der Universität Innsbruck erklärt im Gespräch mit der FUTUREZONE die Ursachen.

von Martin Stepanek

"Die Software-Entwicklung wird immer mehr zur problematischen Schnittstelle", warnte Fahringer anlässlich der Vorstellung eines neuen 48-Kern-Prozesserchips von Intel in Wien. "Denn obwohl heute alle Computer aufgrund ihrer Multicore-Prozessoren de facto als Parallelrechner operieren, funktioniert die überwiegende Mehrheit von Software immer noch seriell", so Fahringer, der als Informatik-Institutsvorstand an der Universität Innsbruck tätig ist.

Mehr Kerne, aber leistungsschwächer
Das Multicore-Konzept sieht vor, dass die auf dem Chip integrierten Prozessorkerne sich die Last der Rechenoperationen teilen. Bei seriell arbeitender Software entsteht allerdings das Problem, dass eine aufwändige Rechenoperation nicht auf die Prozesserkerne aufgeteilt, sondern nur mittels eines Kernes abgearbeit werden kann. Je mehr Prozessorkerne verbaut sind, desto niedriger fällt aber die Taktung und somit die Leistung der jeweiligen Einzelkerne aus.

Isoliert betrachtet muss ein seriell arbeitendes Programm in einer Vierkern-Architektur folglich mit einer schwächeren Einzel-Prozessorleistung als etwa in einem leistungsstarken Dual-Core-System auskommen. Die Abarbeitung einer aufwändigen Rechenaufgabe, wie etwa das 3D-Rendering eines Gebäudes, kann daher über die modernere Vier- oder Achtkern-Architektur sogar länger dauern, da eben die Einzelkerne schwächer ausgerüstet sind.

Niedrige Taktung hilft Energiesparen
Dass die Tendenz eher in Richtung niedrig getakteter Prozessorkomponenten geht, zeigt auch ein neuer Intel-Forschungs-Chip, der mit 48 voll programmierbaren Kernen bestückt ist. Der unter dem Namen "Single-Chip Cloud Computer" (SCC) entwickelte Prototyp wird derzeit von Forschungseinrichtungen wie der Universität Innsbruck, aber auch der Universität Wien eingesetzt, um neue Erkenntnisse für Multicore-Architekturen und Parallel-Computing zu gewinnen.

Die Taktung der einzelnen Kerne ist mit maximal 800 Megahertz gering gehalten. "Neben der Laufzeit, in der Rechenoperationen durchgeführt werden, geht es in unserer Forschungsarbeit auch um die Optimierung des Energieverbrauchs", erklärt Fahringer im Gespräch mit der FUTUREZONE. Dies sei etwa für eine verbesserte Akkuleistung von mobilen Geräten entscheidend.

Automatisches Übersetzungstool
Über ein Test-Tool fanden die Innsbrucker heraus, dass der minimale Energieverbrauch eines parallelen Programmes auf dem SCC bei etwa 320 Megahertz liegt. Damit Programme zukünftig besser von den Multicore-Architekturen profitieren können, arbeitet die Universität Innsbruck zudem an einem automatischen Übersetzungstool, das die Parallelisierung von Software vereinfachen soll.

(Martin Stepanek)