Strömungsmodelle
Large Eddies")?> Ein Programm zur Parallelisierung optimierter Algorithmen im Einsatz auf Hochleistungs-Vektorrechnern im Rahmen der Grundlagenforschung auf dem Gebiet der turbulenten Strömungen wurde am Institut für Physik der Atmosphäre der Deutschen Forschungsanstalt für Luft- und Raumfahrt (DLR) entwickelt und dort für den Einsatz auf Cray Vektorrechnern optimiert. Das Programm mit dem Namen Distuf (DIrect Simulation of TUrbulent Fluids) führt eine direkte numerische Simulation homogen-turbulenter Strömungen unter dem Einfluß von Scherung, Schichtung und Reibung durch. Fragen der Energieverteilung in Turbulenzen, der Dissipation oder der Vermischung von Beimengungen, zum Beispiel Flugzeugabgasen, durch Turbulenz können mit Hilfe dieses Programms untersucht werden.

Turbulente
Strömungen")?> Die Unterscheidung zwischen laminaren und turbulenten Strömungen geht auf Osborne Reynolds zurück. Er zeigte, daß eine Rohrströmung eines Fluids mit der kinematischen Viskosität nu von einem gleichmäßigen (laminaren) Strömungszustand in einen ungleichmäßigen Zustand umschlägt, wenn man den Rohrdurchmesser L oder die Strömungsgeschwindigkeit U so verändert, daß die (globale) Reynoldszahl Re = LU/nu über einen kritischen Wert von ca. 2300 ansteigt. Der sich einstellende ungleichmäßige Strömungszustand wird heute als turbulent bezeichnet. Turbulente Strömungen sind instationär, rotationsbehaftet, dreidimensional und unregelmäßig, aber nicht ohne Struktur. Sie leisten einen Energietransfer von großen zu kleinen Skalen und bewirken eine intensive Vermischung des Fluids.

In der Atmosphäre, wo die turbulente Strömung die vorherrschende Strömungsform ist, werden Turbulenzen durch starke Windscherungen, durch Konvektion, das heißt thermische Auftriebs- bzw. Abtriebskräfte, oder durch Zirkulation angeregt. Die Turbulenzelemente beschreibt man gerne als instationäre, unregelmäßige Wirbel, die von stationären Wirbeln wohl unterscheidbar sind. Ihre Größenordnung in der Atmosphäre reicht von Millimetern bis hin zu mehreren Kilometern. Die Größe der kleinsten Wirbelstrukturen ist durch die Dämpfung der Massenkräfte und die damit verbundene Energiedissipation infolge der molekularen Reibung bestimmt. Durch die molekulare Reibung wird die in der turbulenten Bewegung steckende, kinetische Energie in Wärmeenergie umgewandelt

Kaskadenprozesse")?> Den Energietransfer in turbulenten Strömungen beschreibt der von Kolmogorov formulierte Kaskadenprozeß. Große Wirbelstrukturen zerfallen in kleinere, die wiederum instabil sind und ihre Energie an noch kleinere Wirbel weiterreichen. Der Transfer endet auf den dissipativen Skalen der Größe eta, wenn die kinetische Energie der Wirbel in Wärme umgewandelt wird. Dieser Kaskadenprozeß drückt sich für hohe Reynoldszahlen auch im Kolmogorov-Spektrum der turbulenten Energie aus, dessen Form Kolmogorov 1941 beschrieben hat.

Die erstmalige Wiedergabe dieses Spektrums, insbesondere die Auflösung des Trägheitsbereichs für eine homogen-turbulente, geschichtete Scherströmung durch eine direkte numerische Simulation, ist eines der physikalischen Ziele unserer Arbeit. Die nach Lewis F.Richardson benannte Richardsonzahl Ri setzt die Stärke der thermischen Schichtung in ein Verhältnis zur Stärke der Scherung einer Strömung. Sie ist somit eine Maßzahl für das Verhältnis der Größen, die für die Ausbreitung oder das Abklingen der Turbulenz verantwortlich sind. Oberhalb einer kritischen Zahl Ri_{krit} überwiegen die stabilisierenden Kräfte der Schichtung, unterhalb überwiegt die destabilisierende Scherung. Die Bestimmung von Ri_{krit} ist für die Meteorologie in Zusammenhang mit der Vorhersage atmosphärischer Turbulenzen von großer Bedeutung. Miles bestimmte 1961 einen Wert von Ri_{krit}=0.25 für Strömungen ohne Zähigkeit. Für atmosphärische Strömungen wird ein Wert unter 0.25 erwartet, da die Zähigkeit die Turbulenz dämpft. Simulationen mit Distuf bei Reynoldszahlen weit unter hundert ergaben einen kritischen Wert von 0.13. Die Bestimmung der kritischen Richardsonzahl für höhere Reynoldszahlen ist weiterhin eine offene Frage.

In der direkten numerischen Simulation von Turbulenz hängt deren Intensität, die sich in der Reynoldszahl ausdrückt, wesentlich von der Auflösung des Simulationsgebiets im mathematischen Modell ab. Die Auflösung ist wiederum durch die Rechen- und Speicherleistung der jeweils zur Verfügung stehenden Computer beschränkt. So sind auf Vektorrechnern nur einzelne Simulationen auf bis zu 2563 Maschen und Reynoldszahlen unter 200 realisierbar. Die Darstellung des Kolmogorov-Spektrums und die Suche nach Ri_{krit} in atmosphärischen Strömungen verlangt jedoch Simulationen mit weitaus höheren Reynoldszahlen. Hierfür ist von einer notwendigen Auflösung von 10243 Maschen auszugehen. Aus diesem Grund ist die Erschließung der Rechenleistung von parallelen Hochleistungsrechnern durch die Parallelisierung von Distuf dringend erforderlich. Sie setzt die bisher gesammelten Erkenntnisse aus dem Bereich des parallelen Rechnens um und erschließt eine neue Generation von Hochleistungsrechnern zum Einsatz in der Turbulenzsimulation.

Weitere Fragen")?> Ein Problem beim Einsatz von Parallelrechnern sind weiterhin die unterschiedlichen Hardware-Architekturen der Rechner und die daraus resultierenden, verschiedenen Leistungsmerkmale. Die Unterschiede erstrecken sich dabei auf das gesamte funktionale Umfeld des Rechners. Davon betroffen sind die Zuordnung des Speichers zu den Prozessoren (gemeinsamer, verteilter oder virtuell gemeinsamer Speicher), die Kommunikationsnetzwerke (Gitter- oder Hypercubetopologien, Kreuzschienenschalter oder Datenbusse) und die Input/Output Funktionen.

In der Vergangenheit, in der man für einzelne Probleme spezielle, parallele Verfahren entwickelte, ging man davon aus, daß man für jede Architektur den optimalen Algorithmus entwirft und einsetzt. Diese Forderung ist heutzutage, bei der gleichzeitigen Verfügbarkeit der verschiedensten, parallelen Rechner und dem Bedarf an einer größtmöglichen Portabilität der Programme, nicht mehr aufrecht zu erhalten. Man benötigt möglichst universell einsetzbare Algorithmen und Kommunikationsstrukturen. Die in dieser Richtung unternommenen Standardisierungen müssen kontrolliert und in neuen Programmsystemen eingesetzt werden.

Aber auch die Herangehensweise an die Parallelisierung großer Programmpakete bleibt unklar. Ist es möglich, sequentielle Programme durch Hinzufügen einiger gezielter Kommunikationsaufrufe in Message-Passing-Programme umzugestalten, oder besteht die Notwendigkeit, bestehende Programme für den Einsatz auf Parallelrechnern völlig neu zu konzipieren? Bedarf es des Einsatzes neuer, paralleler Algorithmen, oder reicht es aus, die Daten so geschickt auf die Prozessoren zu verteilen, daß die bestehenden, seriellen Ansätze weiterverwendet werden können?

Nicht zuletzt bleibt die Frage der Skalierbarkeit komplexer Anwendungsprogramme ungelöst. Können Programme so gestaltet werden, daß sie sowohl auf einem Prozessor als auch auf 1024 Prozessoren effizient einsetzbar sind? Mit welchen Algorithmen und insbesondere mit welchen Kommunikationsmechanismen ist dies zu realisieren? Kann man auch auf Rechnern mit gemeinsamem Speicher skalierende Programme schreiben, obwohl die Probleme der Datenkohärenz und des Kommunikationsaufwands mit zunehmender Prozessorzahl überproportional anwachsen?

Auch die Bewertung der unterschiedlichen Architekturen und Kommunikationsmodelle bleibt eine offene Frage. Bisherige Tests, sogenannte Benchmarks, können nur einzelne Eigenschaften der Rechner wie das Kommunikationsverhalten oder die Schnelligkeit einer Matrixmultiplikation bewerten. Der Anwender, der den passenden Rechner für sein spezielles Programm sucht, welches sich aus den verschiedensten Bausteinen zusammensetzt, kann aus diesen Angaben nicht das Verhalten des Systems für seine individuelle Anwedung vorherbestimmen. Letztendlich ist es weiterhin notwendig, sein Programm auf den verschiedenen Rechnern zu testen, um so einen Eindruck der Eignung und Leistungsfähigkeit der jeweiligen Maschinen zu erhalten. Kontakt:")?>Dr. Georg Bauer
Tel.: 0221/470-6040
Fax: 0221/470-5160
scicomp@zpr.uni-koeln.de