Informationstechnik in Europa

Parallelismus spielt wichtige Rolle in zukünftiger Forschung

22.02.1991

Parallele Hardware ist im Kommen. Die Auswahl an "massiv" parallelen Rechnern ist bereits sehr groß. Den höchsten Wirkungsgrad erreicht man jedoch erst in einer Konstruktion, die "Parallelismus" in alle Stufen, von der Hardware-Architektur bis hin zur Anwendersoftware, integriert. Cor Baayen skizziert, was Parallelismus ist und in welcher Beziehung Computer dazu stehen.

In "The Devil's Dictionary" von Ambrose Bierce kann man eine alte Bemerkung über den Parallelismus finden. Der Eintrag unter "Logik" lautet wie folgt: "Logik. Die Kunst, im Rahmen der Grenzen und Unzulänglichkeiten des menschlichen Mißverständnisses zu denken und folgerichtig zu schließen. Die Basis der Logik ist der Syllogismus, der aus einer übergeordneten und einer untergeordneten Prämisse sowie einer Schlußfolgerung besteht - somit:

Erste Prämisse: 60 Männer können eine Arbeit 60mal schneller verrichten als ein Mann.

Zweite Prämisse: Ein Mann braucht 60 Sekunden, um ein Loch zu graben; deshalb die Schlußfolgerung: 60 Männer brauchen eine Sekunde, um ein Loch zu graben.

Dies kann als arithmetischer Syllogismus bezeichnet werden, bei dem wir, wenn wir gemäß logischer und mathematischer Grundsätze fortfahren, doppelte Gewißheit erhalten und uns doppelt glücklich schätzen können."

Bei dieser Bemerkung werden bereits ein oder zwei Probleme des Parallelismus deutlich. Das Konzept des Parallelismus ist extrem einfach und seine Anwendung kann in der Tat äußerst effektiv sein, aber seine Realisierung bringt möglicherweise Schwierigkeiten mit sich. Die erste Frage, die wir uns jedoch stellen sollten, lautet: Warum sollten wir uns überhaupt für den Parallelismus interessieren? Die meisten Benutzer sind nicht am Parallelismus, sondern an der Leistungsfähigkeit interessiert. Sie benötigen den Computer für ihre tägliche Arbeit und möchten, daß er ihre Aufgaben so effizient wie möglich ausführt.

Die Informationstechnik-Industrie (Hardware, Software, Kommunikationstechnik) ist nicht nur an sich, sondern auch für andere Industriezweige von wachsender Bedeutung. Insbesondere die Leistungsfähigkeit von Großrechnern ist in vielen Industriezweigen äußerst wichtig. Kein Automobilhersteller kann es sich leisten, das Unfallverhalten der neuen Modelle, die er konstruiert, nicht zu analysieren. Kein Flugzeugbauer kann die Berechnung der Tragfläche der Konkurrenz überlassen, er muß sie selbst durchführen. Und höchstwahrscheinlich möchte er auch den gesamten Rumpf des Flugzeugs numerisch simulieren, bevor dies die i Konkurrenz tut. Ölkonzerne wollen Erdöllagerstätten und das Verhalten des Öls beim Ein pumpen von Wasser oder Gas simulieren. Darüber hinaus benötigen sie geologische Karten der Erdschichten, bei denen "inverse Methoden" auf seismische Daten angewandt werden, die man auf ähnliche Weise erhält wie bei der Tomographie in der Medizin. In der Chemie, hier seien als Beispiele die petrochemische Industrie und die Pharmazie erwähnt, muß man, um ein effektives Verfahren zu entwickeln, mit dem jeweiligen Prozeß, den Molekülen und Katalysatoren experimentieren. Die Theorie liefert noch keine Informationen darüber, was zu verwenden ist, folglich muß man sich auf die numerische Simulation verlassen, für die eine hohe Rechenleistung erforderlich ist.

Auch außerhalb der Industrie gibt es viele Probleme, die große Anforderungen an die Forschung stellen; aber mit ziemlicher Sicherheit sind solche Forschungsarbeiten auch von mehr oder weniger großem Nutzen für die Industrie. Bei einigen dieser Probleme muß man sich mangels anderer Möglichkeiten auf die numerische Simulation verlassen. Umweltprobleme gehören in großem Maße in diese Kategorie. Globale Veränderungen können lediglich mit Hilfe der Simulation untersucht werden - man kann schließlich nicht mit dem Treibhauseffekt experimentieren. Für das Verständnis des globalen Klimas werden Modelle benötigt, die die Wechselwirkung zwischen Ozean und Atmosphäre berücksichtigen. Diese Modelle, die verschiedenste Zeitmaßstäbe und Gittergrößen enthalten, stoßen an die Grenzen der vorhandenen Rechnerleistung. Um etwa die Wettervorhersage um einen Tag zu erweitern, muß die Computerleistung um ein Vielfaches gesteigert werden.

Wie erhält man nun diese Rechenleistung? Eine Möglichkeit besteht darin, die vorhandene Technik weiterzuentwickeln das heißt schnellere Computer zu bauen, die Speicherkapazität zu erweitern sowie die Takt- und Kommunikationszeit zu verkürzen. Hier stößt man jedoch auf physikalische Grenzen. Die Taktzeit liegt bereits jetzt im Nanosekundenbereich und wird sich nur noch schwer verkürzen lassen. Die Grenzen der Lichtgeschwindigkeit machen sich sogar bei den kurzen kommunikationsleitungen auf einem Chip bemerkbar. Die Granularietet der Materie setzt Grenzen, wenn es darum geht, Informationen in einen Speicher zu geben. Die Weiterentwicklung vorhandener Techniken wird immer schwieriger und kostenintensiver und scheint in absehbarer Zeit nahezu unmöglich zu sein. Natürlich gibt es neue Techniken, und an einigen war Europa maßgeblich beteiligt. Als Beispiele möchte ich hier die supraleitenden und die optischen Bausteine nennen. Werden aber diese Techniken zusammen mit der traditionellen Computerarchitektur eingesetzt, so ist es nicht möglich, die Leistungsfähigkeit zu erzielen, die wir heute schon haben und sicherlich morgen brauchen werden.

Daher müssen wir nach anderen Wegen suchen, um unser Ziel zu erreichen. Eine Möglichkeit - und das ist eine äußerst vielversprechende - besteht darin, wie Bierce sich ausdrückte, mit 60 Männern in einer Sekunde ein Loch zu graben, mit anderen Worten: Parallelismus anzuwenden. Das Konzept des Parallelismus ist so einfach wie dieses Beispiel, aber seine Konsequenzen sind weitreichend. Wir wenden uns dem Parallelismus nicht nur aufgrund der physikalischen Grenzen vorhandener Techniken zu, sondern auch wegen seiner grundsätzlichen Bedeutung.

Parallelismus in allen Stufen nötig

Der Parallelismus führt zu einer Reorganisation des Denkens, wenn es darum geht, Berechnungen anzustellen, Modelle anzufertigen, Algorithmen aufzustellen, Hardware zu entwerfen und Computersysteme und ihre Kommunikation zu organisieren. Lassen Sie mich dies anhand eines Beispiels aus der Flugzeugindustrie verdeutlichen, ein Problem, das auch im Centrum voor Wiskunde en Informatica untersucht wird: die numerische Simulation der Strömung, der ein Flugzeug ausgesetzt ist, mittels der Gleichungen von Euler und Naiver- Stokes. Den Möglichkeiten der Simulation sind aufgrund der Technik Grenzen gesetzt, aber für eine Flugzeuggesellschaft ist es unumgänglich, diese Möglichkeiten auszubauen, um wettbewerbsfähig zu bleiben, denn Windkanalexperimente sind sehr teuer. Das Problem haben wir nun erkannt, aber wo sollen wir nach einer Lösung suchen?

Ohne Zweifel ist parallele Hardware ein wichtiger Faktor. Die derzeitigen parallelen Mehrzweck-Hochleistungsrechner - wie beispielsweise die Cray Y-MP mit acht Prozessoren - arbeiten nur in vergleichsweise bescheidenem Ausmaß mit dem Prinzip des Parallelismus. Betrachtet man die massiv parallelen Rechner, so stellt man fest, daß die Auswahl dort sehr groß ist denn es gibt derzeit weder eine Standardarchitektur noch einen Programmierungsansatz. Bei einigen Aufgaben erweist sich der massive Parallelismus als besonders nützlich. Ein bekanntes Beispiel hierfür ist die Eignung neuronaler Netze für die Mustererkennung. Ein auf dem massiven Parallelismus beruhendes System kann durchaus rentabel sein. Der Ölkonzern Royal Dutch-Shell beispielsweise baute ein komplettes Transputer-System (Hardware plus Software) für Berechnungen im Bereich der Erdölsuche. Das System ist relativ kostengünstig und im wahrsten Sinne des Wortes transportabel: Man kann es zur Suchstelle, sei sie in der Wüste oder im tropischen Regenwald, mitnehmen. An dieser Stelle möchte ich auch erwähnen, daß die Möglichkeit der Skalierung ein Thema von wachsender Bedeutung ist.

Wem die auf dem Markt angebotenen Systeme nicht genügen, der kann sich natürlich selbst daran machen, ein entsprechendes System zu bauen, wie man es zum Beispiel in der Bundesrepublik Deutschland beim Suprenum-Projekt gemacht hat. Beim Bau des eigenen Systems wird man sehr schnell feststellen, daß wirklicher Fortschritt nur durch eine Gesamtkonstruktion erreicht werden kann, bei der der Parallelismus in alle Stufen, von der Hardware-Architektur bis hin zur Anwendersoftware, integriert wird. Wenn von Anfang an hierarchische numerische Algorithmen verwendet werden die sich für ein Zusammenspiel von globalen und lokalen Teilen der Simulation eignen, und wenn die Hardware-Architektur derart beschaffen ist, daß sie diese Algorithmen tatsächlich unterstützt, dann ist es möglich, die Leistungsfähigkeit enorm zu verbessern.

Die Konsequenzen der Inkompatibilität von Hardware und Software wurden bei den Schwierigkeiten deutlich, die auftraten, als es darum ging, unsere Wettervorhersage zu verbessern. Das "European Centre for Medium Range Weather Forecast" in Reading (Großbritannien) - schon immer an vorderster Front im Bereich des Hochleistungsrechnens - bestellte kürzlich den neuesten parallelen Hochleistungsrechner, eine Cray Y-MP, und hat jetzt große Probleme, die alte, etwas "angestaubte" Software, in die Hunderte von Mannjahre investiert wurden, auf dem neuen Rechner effizient einzusetzen. Die Steigerung der Leistungsfähigkeit wird daher erheblich beeinträchtigt. Die Inkompatibilität von Software und Hardware war ein wichtiger Grund für das Scheitern der ETA-Hochleistungsrechner von Control Data: Die parallele Software war nicht rechtzeitig verfügbar. Eine große Herausforderung besteht darin, einen gemeinsamen Ansatz für Hardware und Software zu entwickeln und dabei die Vorteile des Parallelismus bis ins äußerste auszunutzen.

Bezogen auf das Beispiel mit der Strömungssimulation bei Flugzeugen ist es möglich, die Leistungsfähigkeit zu verbessern, indem man Parallelismus nicht nur im Bereich der Hardware, sondern bereits bei der Aufstellung der Algorithmen anwendet, wie zum Beispiel der Domänen-Komposition und der Verwendung von Mehrgittermethoden. Auf letztgenanntem Gebiet ist die Bundesrepublik Deutschland besonders erfolgreich - ich erinnere an die 3. europäische Konferenz über Mehrgittermethoden und paralleles Rechnen im Oktober 1990 in Bonn. Auch im Centrum voor Wiskunde en Informatica besteht großes Interesse an diesen Methoden, dort wurde eigens eine Forschungsgruppe gebildet, die sich mit diesem Thema beschäftigt, und die 4. europäische Konferenz wird 1993 in Amsterdam stattfinden.

Wie man den Datenstrom in den Griff bekommt

Stellen wir uns einmal vor, es gelänge, die Algorithmen und die Software an die parallele Hardware anzupassen. Dadurch wird eine Vielzahl von Daten erzeugt, und es stellt sich die Frage, wie man diesen Datenstrom in den Griff bekommt. Zunächst werden hierfür sehr schnelle Kommunikationssysteme benötigt, und in dieser Richtung muß noch viel geforscht werden. Darüber hinaus müssen die Daten interpretiert werden. Dafür ist eine Visualisierungstechnik erforderlich, die jedoch noch in den Kinderschuhen steckt. Folglich wirft die Notwendigkeit einer höheren Leistungsfähigkeit viele Probleme auf, die noch erforscht werden müssen: Parallelisierung von Algorithmen, Kompatibilität von Hardware und Software, Beschleunigung der Kommunikation und nicht zuletzt wissenschaftliche Visualisierung. Der letztgenannte Bereich, mit dem man sich seit etwa zehn Jahren beschäftigt, wird ständig weiterentwickelt, vor allem in den Hochleistungs-rechenzentren der National Science Foundation in den USA. Aber die Entwicklung geht nicht schnell genug voran, und hier sollte Europa die Gelegenheit ergreifen und zeigen, daß es der Aufgabe gewachsen ist.

Der "integrierte Ansatz" hat auch Nachteile

Was das Beispiel mit der Strömungssimulation betrifft, so ist ein integrierter Ansatz, der auch solche Elemente enthält wie Domänen-Auflösung, Vermaschung, Datenflußberechnung und Visualisierung von Ergebnissen, die Voraussetzung für "wettbewerbsfähige Lösungen". Jedoch ist ein solcher Ansatz auch mit Nachteilen verbunden. Das bedeutet, daß die Parallelisierung eines Teilbereichs, zum Beispiel der Vermaschung, die anderen Teile beeinflußt. Eine solche Verbindung kann in einigen Fällen ein Hindernis bei der Realisierung des Parallelismus sein. Das "Dutch National Aerospase Laboratory" entschied sich kürzlich für den schnellsten Vektorcomputer und nicht für ein paralleles System, da man Probleme bei der- Übertragbarkeit, der Programmierung und der Datenverteilung befürchtete.

Ein anderer Aspekt der lntegration ist die Tatsache, daß ein Hochleistungsrechner heutzutage niemals als Einplatz-System benutzt wird. Er wird sowohl innerhalb als auch außerhalb des Labors immer an andere Systeme angeschlossen. Auch außerhalb des Labors gibt es eine große, wichtige Benutzergruppe. Damit meine ich die Menschen, die im Bereich "Operations Research" tätig sind und sich um Arbeitsplanung und -vorbereitung, flexible Automatisierung, Logistik etc. kümmern. Die Logistik, zum Beispiel beim Bau eines Flugzeugs, ist äußerst kompliziert, da hier mehrere hunderttausend Komponenten berücksichtigt werden müssen - hier rechne ich den kompletten Motor als eine Komponente. Die Menschen, die auf diesem Gebiet tätig sind, werden im Europa von 1993 mit dem komplexen elektronischen Nervensystem, das alle Arten von Datensystemen miteinander verbindet, viel zu tun haben, um die Kommunikation und Kooperation zu verbessern.

Lassen Sie mich zum Schluß noch ein Problem grundsätzlicher Natur erwähnen: Normen. In bezug auf die Betriebssysteme, die Sprachen, die Ausdrücke für wissenschaftliche Visualisierung etc. sollten Normen entwickelt werden, damit wir unsere Erfahrungen an andere weitergeben und umgekehrt von deren Arbeit profitieren können. Um kritische Benutzergruppen zu bilden, die gewisse Normen unterstützen, sollten wir unsere Grenzen innerhalb Europas vergessen und zusammenarbeiten, Wissenschaftler und Erfahrungen austauschen und so Mitglieder großer Benutzergruppen werden, die in der Tat nur eine Sekunde brauchen werden, um ein Loch zu graben.

Zusammenfassend läßt sich sagen, daß der Parallelismus ein interessantes und wichtiges Thema für die Forschung in europäischen Universitäten und nationalen Labors ist - interessant, weil er viele herausfordernde Probleme aufwirft, und zwar in bezug auf integrierte Konstruktionen von der Hardware bis zu Anwendungsalgorithmen - , den Bedarf an neuen Hilfsmitteln, wie zum Beispiel wissenschaftliche Visualisierung, die Forderung, gemeinsame Ansätze und Normen zu entwickeln. Wichtig ist das, weil die europäische Industrie überleben muß. Und damit dies in einer vom Konkurrenzdenken geprägten Umwelt auch geschieht, sind leistungsstarke Computer dringend erforderlich, und höhere Leistungsfähigkeit erfordert Parallelismus.

Wir brauchen den kreativen Menschen

Für eine effiziente Nutzung der neuen Generation paralleler Computer brauchen wir eine Generation von kreativen Menschen, die in der Lage ist, die Computer optimal einzusetzen oder gegebenenfalls sogar selbst bessere Computer zu bauen. Auf diesem Gebiet ist die Industrie von inländischen Labors und Universitäten abhängig. Die industrielle Revolution begann in Europa - ja, denn ich betrachte das Vereinigte Königreich als Teil Europas. Es ist eine große Herausforderung für europäische Forscher im Bereich der Informationstechnik durch kreative Kooperation dazu beizutragen, die HighTech-Industrie in Europa zu erhalten.