Interview zur Parallelprogrammierung

Steiniger Weg zur parallelen Software

16. Juni 2010, 15:02 Uhr | Joachim Kroll
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

Die Bedeutung des Betriebssystems

Sie hätten es also lieber, wenn sich der Embedded-Softwaremarkt etwas konsolidieren würde?

Es gibt gute und schlechte Konsolidierung. Wenn Vielfalt und Wettbewerb verschwinden, dann ist das schlecht. Wenn es Konsolidierung im Sinne von Standardisierung gibt und dadurch Innovationen beschleunigt werden, dann ist das gut. Industriestandards können auch dazu führen, dass viele kleine Teilmärkte zu einem großen Markt werden und erst dann eine kritische Größe erreichen.

Welche Bedeutung haben die Betriebssysteme bei der Unterstützung von Multicore-Prozessoren?

Die Aufgabe der Betriebssysteme ändert sich grundlegend. Betriebssysteme haben durch Multitasking lange Zeit die Illusion von Parallelität auf seriell arbeitenden Prozessoren erzeugt. Jetzt können die Prozessoren tatsächlich Dinge parallel ausführen. Die Betriebssysteme müssen weg vom Multiplexing, hin zu einer Art Partitionierung. Wenn man auf einer 16-Core-Maschine vier Anwendungen startet, will man schließlich nicht, dass alle vier sämtliche 16 Kerne nutzen und sich nur in die Quere kommen. Es würde mich wundern, wenn Microsoft mit Windows 8 nicht effektive Methoden der Ressourcenzuteilung entwickeln würde und mit Linux ist es genauso. Und das geht bestimmt noch eine Weile so weiter, denn selbst bei Windows 8 werden wir noch über eine relativ geringe Zahl von Prozessoren sprechen.

Gibt es wegen der Skalierungseffekte eine Obergrenze für die Zahl der Cores in einem Multicore-System?

Das kommt darauf an, wieviel man gleichzeitig machen will. Ich glaube nicht, dass es sehr schwer sein wird, 50 Cores auszulasten. Schwer wird es allerdings, eine einzige Anwendung auf 50 Cores zu verteilen.

Wir sollten uns vielleicht von der Vorstellung verabschieden, dass jeder Prozessorkern alles können muss. Viel wahrscheinlicher ist, dass es spezialisierte Kerne geben wird. Das erste, wo wir eine Spezialisierung sehen werden, ist Grafik. Heute haben wir die Kombination aus CPU und Grafikprozessor, aber Grafikprozessoren sind nicht sehr flexibel. Auf dem Bildschirm kann man nur das darstellen, was der Grafikprozessor berechnen kann. Raytracing gehört z.B. nicht dazu. Deshalb wird Raytracing kaum angewandt, weil es so rechenintensiv ist. Ein bisschen mehr Flexibitlät bei der Grafik wäre also sehr sinnvoll. Wenn man sich bei der Grafikverarbeitung von der festen Pipeline der Grafikkerne lösen könnte und diese Kerne etwas programmierbarer wären, könnte man wesentlich mehr damit machen. Das würde sehr schnell zu Systemen mit einer hohen Anzahl von Cores führen. Darunter sind aber nur wenige Universal-Cores, so wie wir sie heute ausschließlich in den CPUs haben.

passend zum Thema


  1. Steiniger Weg zur parallelen Software
  2. Die Bedeutung des Betriebssystems

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu INTEL GmbH