Speicherbandbreite

Viele Prozessor-Kerne lähmen Supercomputer

16.01.2009
Von pte pte
Bei Multi-Core-Prozessoren immer mehr Rechenkerne auf einen einzelnen Chip zu packen, macht Supercomputer nicht unbedingt schneller.

Das haben Simulationen des konventionellen Multi-Core-Designs ergeben, die von Sandia, einer für die US-Regierung arbeitenden Lockheed-Martin-Tochter, durchgeführt wurden. Vielmehr ist es so, dass die Performance bei komplexen Anwendungen durch zu viele Kerne leidet und die Geschwindigkeit von bei 16 und mehr Kernen deutlich sinkt. Das zugrunde liegende Problem ist die begrenzte Bandbreite für den Speicherzugriff. Denn um diese Ressource konkurrieren die einzelnen Rechenkerne letztendlich miteinander. "Diese Simulation bedeutet sicher nicht, dass das Problem grundsätzlich nicht lösbar wäre", betont Thomas Lippert, Leiter des Jülich Supercomputing Centre, im Gespräch mit pressetext.

Die Ergebnisse des Sandia-Teams zeigen zwar, dass vier statt zwei Rechenkerne eine klare Steigerung der Geschwindigkeit bringen. Bereits die nächste Verdoppelung der Zahl bringt nur noch wenig und danach geht es bergab. Mit 16 Kernen sind Berechnungen nur etwa so schnell wie mit zwei und bei noch mehr Rechenkernen sinkt die Performance drastisch. Das liegt den Forschern zufolge daran, dass in einem konventionellen Prozessor alle Rechenkerne Speicher über den gleichen Kanal anfordern. "Das ist, als würden ein, zwei, vier oder acht Personen gleichzeitig mit einem reden und sagen: 'Ich will diese Information.' Sie müssen dann auf die Antwort zu ihrer Anfrage warten", beschreibt James Peery, Direktor von Sandias Computations, Computers, Information and Mathematics Center. Das führt zu Verzögerungen und mit genau diesem Problem kämpfen auch die Multi-Core-Prozessoren.

Aufgekommen sind Multi-Cores, weil immer höher getaktete Einzelkern-Prozessoren durch ihren Strombedarf, steigende Wärmeentwicklung und andere physikalische Effekte an ihre Grenzen gestoßen sind. "Die Chipdesign-Community hat sich nicht für Multi-Cores entschieden, weil sie fehlerfrei sind", sagt Sandia-Mitarbeiter Mike Heroux. Vielmehr habe man keinen besseren Zugang gesehen. Das Multi-Core-Design ermöglicht es, die vielen Transistoren auf Prozessoren immer kleinerer Strukturgrößen auch zu nutzen. Jedoch begrenzt die Kommunikation mit dem Speicher die Leistungsfähigkeit.

Theoretisch ist das von den Sandia-Forschern untersuchte Problem lösbar. "Als Faustregel wäre ein Byte pro Flop und Core Speicherbandbreite eine gute Lösung", erklärt Lippert. Solang das umgesetzt werden könne, wären auch hunderte Rechenkerne kein Problem. Aktuell entsprächen aber nur die Prozessoren für IBMs "Blue Gene/P" dieser Faustregel. "Wir werden aber mit Nehalem eine wichtige Weiterentwicklung erleben", meint Lippert. Der Intel-Chip werde immerhin ein halbes Byte pro Flop und Kern Speicherbandbreite bieten und es bestehe die Hoffnung, dass AMD ähnliches leisten könne. "Wir sehen derzeit Speicher-Designs, die eine drastische Verbesserung gegenüber den vor zwölf Monaten verfügbaren darstellen", meint auch Sandias Heroux. Sandia-Simulationen für bestimmte, spezialisierte Prozessor-Designs haben auch ergeben, dass bei diesen Chips die Geschwindigkeit bei acht und mehr Kernen zwar nicht mehr wirklich steigt, aber zumindest auch nicht abfällt. (pte)