26.08.2005, 08:43 Uhr
Software spaltet Doppelkern
Prozessoren mit mehreren Kernen gelten als wegweisende Architektur für die weitere Leistungssteigerung von Computerchips. Softwareseitig wirft dieser Hardwaretyp jedoch verzwickte Fragen auf.
Im Jahr 2007 werden die meisten Prozessoren zwei Kerne haben, sagt Martin Reynolds von der Marktanalysefirma Gartner Group. Dazu passen die Prognosen von Chipkönigin Intel, die meint, dass bereits Ende 2006 rund 40 Prozent aller ihrer neu ausgelieferten Desktop-, 70 Prozent der Mobil- und 85 Prozent der Serverprozessoren mehr als einen Kern haben werden. Gartner-Mann Reynolds zufolge bedeutet das Dual-Core-Konzept den wichtigsten Entwicklungsschritt in der Chiptechnik seit Einführung der 386-er Architektur. Und zwar deshalb, weil sich damit die Performance massiv und langfristig steigern lasse. Das Leistungsvermögen eines doppelkernigen Chips, so Reynolds" Rechnung, sei dem eines normalen, gleich schnell getakteten um rund 70 Prozent überlegen.
Dieses Rechenexempel geht allerdings nicht immer und nicht für jeden Einsatzzweck auf, denn eine lineare Performance-Steigerung ist nur in Ausnahmefällen zu erreichen. Am meisten profitieren Servermaschinen mit hoher Auslastung, wie sie etwa für Virtualisierungssoftware typisch ist. Für Desktops lohnt sich der Doppelkern vor allem bei Multimedia- und CAD-Applikationen (Computer-Aided Design) sowie bei Simulationsprogrammen.
Dennoch bergen Multicores für die Zukunft viele Versprechungen. Wenn es gelingt, die Software passend zu tunen, wird sich die Investition in die Doppelkerne schnell amortisieren. Fachleute gehen zudem davon aus, dass der Stromverbrauch solcher Prozessoren nur moderat steigen wird. Vorstellbar ist auch, dass mehrere Kerne einen Teil der bisherigen Hardware überflüssig machen, etwa in Fällen, wo an einem Arbeitsplatz sowohl Windows als auch Linux benötigt werden, die künftig auf je einem Kern laufen könnten.
Kernfrage Lizenzierung
Ob sich das Leistungspotenzial von Prozessoren mit zwei oder noch mehr Kernen ausschöpfen lässt, hängt entscheidend vom Geschick der Programmierer ab, die Software entsprechend anzupassen.Die meisten Betriebssysteme sind bisher darauf ausgelegt, auf einem einzigen Prozessor zu laufen. Und während symmetrisches Multiprocessing noch vergleichsweise einfach machbar ist, weil das Betriebssystem dabei nur das Load-Balancing bewältigen muss, erfordert asymmetrisches Multiprocessing erheblich mehr Know-how, weil das Partitioning der Tasks über mehrere Threads hinweg beim Codieren vorgesehen werden muss. Nicht zu vergessen ist die Auslegung der Subsysteme wie Arbeitsspeicher, I/O, Datenleitungen - Komponenten, die oft genug flinke Prozessorenleistungen ausbremsen.