Anwendungen paralleler Systeme |
|
Editorial |
Bekanntlich ist der Trend zu immer noch größeren
Rechenleistungen ungebrochen. Galten bis vor kurzem Prozessoren mit
Taktraten von 100 MHz noch als Novität, so wird bald eine
Steigerung um eine weitere Zehnerpotenz erfolgen. Nicht nur die hohen
Taktraten trugen zur Leistungssteigerung bei, sondern auch effektivere
interne Architekturen. Um aber dem Bedarf der immer noch
größeren Rechenleistungen gerecht zu werden, finden
Parallelarchitekturen mit einigen wenigen Prozessoren bis hin zu
Prozessor-Arrays immer mehr Anwendungen. Waren diese Architekturen in
erster Linie den technisch-wissenschaftlichen Anwendungen vorbehalten,
wie beispielsweise in der Bildverarbeitung, bei der Lösung
finiter Systeme, bei der Wettervorhersage usw., so ist zunehmend auch
der Einsatz bei kommerziellen Anwendungen zu beobachten. Sogar
Arbeitsplatzrechner können zur Leistungssteigerung mit zwei und
mehr Prozessoren ausgestattet werden.
Hauptproblem bei parallelen Systemen ist bekanntlich deren effiziente
Organisation. Beispielsweise galt die "van Holland-Maschine" bis in
die 70er Jahre als technisch machbar, jedoch organisatorisch
äußerst schwer verwaltbar; sie weist ein Prozessor-Array
von n x n Prozessoren mit bidirektionalen Verbindungen zu den
jeweiligen Nachbarn auf. Die Situation hat sich in den vergangenen
Jahren aber deutlich geändert. Betriebssysteme, die
lastabhängig die einzelnen Prozessoren bedienen, wie sie zuerst
bei Echtzeitsystemen zum Einsatz gelangten, sind keine Seltenheit
mehr. Sind mehrere Prozessoren vorhanden, werden während des
Betriebs die zur Verarbeitung anstehenden Tasks durch das
Betriebssystem auf die verschiedenen Prozessoren verteilt. Solche
Systeme können heutzutage beispielsweise bei leistungsstarken
Servern eingesetzt werden. Ganz anders sieht es dabei bei der
automatisierten Parallelisierung von Algorithmen aus. Hier tritt das
Grundproblem auf, daß sich nicht jeder Algorithmus
parallelisieren läßt. Dies mag auch einer der Gründe
dafür sein, daß die anfangs große Euphorie der
Realität wich und man an dieser Stelle statt Parallelisierung
einfach schnellere Prozessoren einsetzte. Ziel ist es aber weiterhin,
dem Anwender Systeme und Programmiersprachen zur Verfügung zu
stellen, bei denen er bereits bei der Programmerstellung -
losgelöst von jeglicher Prozessorarchitektur - auf einfache Weise
parallele Elemente einbringen kann, die dann automatisiert auf ein
Mehrprozessor-System umgesetzt werden können.
Aufgrund der Fülle und Komplexität des Themas "Anwendungen
paralleler Systeme" können in den Beiträgen des Heftes nur
Teilgebiete kurz angerissen werden. Dabei beschäftigt sich ein
Beitrag mit Prozessorarchitekturen und deren Möglichkeiten zur
parallelen Verarbeitung. Zwei Artikel widmen sich der
programmtechnischen Seite, wie sie sich dem Anwender darstellt.
Prinzipielle Betrachtungen und Anwendungsbeispiele runden das
Schwerpunktthema ab. Für eingehende Betrachtungen wird der Leser
auf die in den Beiträgen erwähnte weiterführende
Literatur verwiesen.
Dieses Heft ist vergriffen, d.h. nicht mehr lieferbar. Eine Neuauflage ist nicht geplant.
Die Beiträge aus diesem Heft sind jedoch noch separat und kostenpflichtig unter
www.genios.de erhältlich.
HMD, Heft 203, Oktober 1998
|