217 Abstract A spectral cloud model is developed for a 3-dimensional mesoscale model considering only the microphysical conversion processes of the warm cloud. Because of the expected computation requirements, which are strongly increased in relation to the bulk-parameterization, we develop concepts for the parallelization of the module, explain their applicability and present :first results. Für ein 3-dimensionales Mesoskalenmodell wird ein spektrales Wolkenmodul entwickelt, das zunächst nur die mikrophysikalischen Umwandlungsprozesse der warmen Wolke berücksichtigt. Aufgrund des zu erwartenden, im Vergleich zur bulk-Parametrisierung stark erhöhten Rechenzeitbedarfs entwickeln wir Konzepte zur Parallelisierung des Moduls, erläutern deren Anwendbarkeit und stellen erste Ergebnisse vor. 1 Für unsere Untersuchungen arbeiten wir mit dem nichthydrostatischen 3-dimensionalen Mesoskalenmodell GESIMA (GEesthachter SimulationsModell der Atmosphäre, s. KAPITZA und EPPEL 1992, EPPEL ET AL. 1995). Überlicherweise verwenden Mesoskalenmodelle sog. bulk-Parametrisierungen zur Berechnung der Wolkenmikrophysik (z. B. MÖLDERS ET AL. 1997 in GESIMA, sonst z.B. COTTON ET AL. 1982, LIN ET AL. 1983 und andere). Dabei werden die Hydrometeore in wenige Teilchenklassen eingeteilt (Wolkenwasser, Regenwasser, Wolkeneis, Schnee, Graupel) und die Massen- und/oder Teilchenzahlbilanzen dieser Klassen aufgrund der mikrophysikalischen Umwandlungsprozesse, der Sedimentation und der dynamischen Gegebenheiten prognostiziert. Mit Hilfe einer angenommenen Größenverteilung (oft Marshall-Palmer- oder logNormal-Verteilungen) innerhalb jeder Teilchenklasse werden mittlere Teilcheneigenschaften (wie z. B. Masse, Durchmesser, Fallgeschwindigkeit) bestimmt und damit die mikrophysikalischen Prozesse berechnet bzw. parametrisiert. Da viele Prozesse stark von der Teilchengröße abhängen, stellt diese Herangehensweise in vielen Fällen nur eine grobe Näherung dar. In einem spektralen oder bin-Modell sind die Klassen (bins) sehr viel feiner eingeteilt und die mikrophysikalischen Prozesse lassen sich für jede Größenklasse separat berechnen. Die in der Literatur zu findenden spektralen Modelle sind meist wolkenau:flösende Modelle mit einer sehr feinen horizontalen und vertikalen Auflösung. Untersuchungsgegenstände sind z.B. die Wechselwirkungen des atmosphärischen Wassers mit Aerosolen (Auswaschung in und außerhalb von Wolken, siehe FLOSSMANN ET AL. 1985, ALHEIT ET AL. 1990) oder die Auswirkung auf die atmosphärische Strahlung (BOTT ET AL. 1997). Mesoskalenmodelle verfügen nur vereinzelt über eine spektrale Wolkenmodellierung. KHAIN ET AL. (1996) berichten von Modellrechnungen zur Simulation der Land-See-Wind-Zirkulation und die 218 dadurch ausgelösten Niederschläge im östlichen Mittelmeer mit einem 2-dimensionalen Mesoskalenmodell mit spektraler Wolkenmikrophysik. In 3-dimensionalen Mesoskalenmodellen werden spektrale Wolkenmodule bislang nicht eingesetzt. Verglichen mit einer bulk-Parametrisierung erfordert die spektrale Modellierung ein Vielfaches an Berechnungsaufwand. Eine genaue Analyse der Daten- und Prozedurabhängigkeiten zeigt die Möglichkeiten der Parallelisierung auf. Darauf aufbauend lassen sich unterschiedliche Verfahren zur effizienteren Berechnung der spektralen Modellierung implementieren. 2 1 Die Einteilung der Tröpfchen in ]MAX Größenklassen erfolgt wie in spektralen Modellen üblich logarithmisch mit der Masse (siehe z. B. und REINHARDT 1974). Die Intervallgrenzen mo(J) sind dann: mo( J) = mo · 2(J-l)/Jo, (1) wobei m 0 4.2 · 10- 15 kg die Masse eines Teilchens mit Radius r 0 1 µm ist und J 1, ... , ]MAX + 1 (z. B. JMAX = 35, 70 bzw. 105 für lo = 1, 2 bzw. 3). Feinere Klasseneinteilungen ( 10 > 3) werden selten gewählt, da ansonsten die Anzahl der Klassen zu groß wird. Ein Teilchen der Masse m gehört genau dann zu Klasse J, wenn gilt: mo(J) ::; m < ma(J + 1) (2) Ein Teilchen der doppelten Masse 2 · m wird dann Klasse (J + 10 ) zugeordnet. Diese Einteilung ist statisch. Die Intervallmitten mM( J) sind definiert als mM(J) = ma(J) 2.2 + ;a(J + 1). (3) Mikrophysik vVir beschränken uns zunächst auf die Beschreibung der warmen Wolke. Dazu müssen folgende Prozesse betrachtet werden: • Wechselwirkung flüssige Phase - Gasphase - Größenzunahme (-abnahme) bestehender Tropfen durch Kondensation (Evaporation) von vVasserdampf (Flüssigwasser) - Tropfeninitierung durch Diffusionswachstum von Aerosolen • Wechselwirkung flüssige Phase - flüssige Phase Kollision und Vereinigung von Tropfen unterschiedlicher Größe (Koaleszenz) Spontanes Auseinanderbrechen großer, instabiler Tropfen (break-up) 219 Als prognostische Felder dienen die Anzahlkonzentration der Tröpfchen N(J) (in [m- 3 ]) und das Mischungsverhältnis des flüssigen Wassers q(J) (in [(kg \Vasser)/(kg Luft)]) in jeder Klasse J. n(m) sei die Größenverteilung der Tröpfchen in der Wolke und n(m) dm die Anzahl der Tröpfchen der Masse m pro Einheitsvolumen. Dann gelten folgende Relationen: mc(J+1) 1 N(J) n(m) dm (4) mc(J) q(J) = p-;_ 1 mc(J+1) 1 m n(m) dm (5) mc(J) wobei Pa die Luftdichte ist. Die Größenverteilung n( m) selbst wird nicht prognostiziert, kann jedoch aus N(J) oder q(J) bestimmt werden. Die Gesamtanzahldichte NaEs und das Gesamtmischungsverhältnis qaEs ergeben sich als Summe über alle JMAX Klassen. JMAX rmc(J+l) Naes L = J=l qaes = p-;_ 1 JMAX L ln JMAX n(m) dm= mc(J) L rmc(J+l) lr. J=l N(J) (6) J=l JMAX m n(m) dm= mc(J) L q(J) (7) J=l Da zwei prognostische Variablen zur Verfügung stehen, lassen sich in jeder Klasse mittlere Teilcheneigenschaften (Masse und die daraus folgenden Größen) berechnen (YOUNG 1974) q(J) m(J) =Pa N(J) · (8) Im allgemeinen gilt: m(J) =1- mM(J)l 2 bin shift Aufgrund der mikrophysikalischen Prozesse verändern die Tröpfchen ihre Masse und müssen in eine andere Klasse transferiert werden, sobald sie die Bedingung (2) verletzen. Dadurch ändert sich für die beteiligten Klassen N( J) und q( J). Dies bezeichnet man als "bin shift". Wie CHEN und LAMB (1994) wollen wir diesen Teilchen- und Massentransfer von der Berechnung der mikrophysikalischen Prozesse trennen, da dies zu einer einfacheren Formulierung und übersichtlicheren Darstellung führt. vVir verwenden das Verfahren von CHEN und LAMB (1994) in leicht modifizierter Form. In jeder Klasse J kann eine lineare Funktion für n( m) definiert werden: n(m) = no + k(m - mM(J)). (9) Zur Bestimmung von n 0 und k ist (9) in (4) und (5) einzusetzen. Nach der Berechnung von SN und Sq aufgrund der mikrophysikalischen Prozesse kann die lineare Verteilung dazu benutzt werden, den Transfer von Masse und Teilchen zwischen den Klassen zu bestimmen. 220 3 1 Mit der Verbreitung von Parallelrechnern und schneller Vernetzungstechnik für vVorkstationcluster wurden parallele Implementierungen von einem großen Teil der weltweit an Instituten und Forschungseinrichtungen verwendeten Programme für hydrodynamische Simulationen in Angriff genommen. Ausgangspunkt hierfür waren meist sequentielle Modelle oder bereits bestehende Versionen für Vektorrechner. Die relativ hohe Entwicklungszeit für Parallelisierungen bedingten oft einen Rückstand zur aktuellen sequentiellen Version (MICHALAKES 1997). Die Erfahrung mit der Parallelisierung sind jedoch eine wertvolle Grundlage für neue parallele Simulationsmodelle, die bereits in der Entwicklungsphase optimiert werden (SCHÄTTLER und KRENZIEN 1997). Die Implementierung erfolgt in der Regel unter Verwendung des Message Passing Programmiermodells. Es wurden aber auch speziell dem Problemkreis angepaßte Modulbibliotheken (Runtime System Library, RSL) (MICHALAKES 97) oder höhere Programmiersprachen mit parallelen Konstrukten (High Performance FORTRAN, HPF) (ONESTI UND S0REVIK 96) eingesetzt. Einen guten Überblick über die Parallelisierung regionaler Atmosphärenmodelle geben C. , J. MICHALAKES und R. SKALIN 1997. Die hier betrachteten Modelle (ASHWORTH ET AL. 1997, SKALIN und BJ0RGE 1997, MICHALAKES 1997, ScHÄTTLER und KRENZIEN 1997) basieren auf speziellen 3-dimensionalen Gittern (staggered grids ). Die Gitterpartitionierung erfolgt horizontal, was einen Datenaustausch zwischen den Teilgebieten erfordert und daher Teile des Programms neu implementiert oder deren Daten umgeordnet werden müssen. Lediglich Prozesse mit rein vertikaler Abhängigkeit können unverändert übernommen werden. Zusammenfassend läßt sich feststellen, daß das gewählte Parallelisierungsverfahren in den betrachteten Modellen auf Gebietszerlegungen beruht, und zwar auf horizontaler. Durch Veränderung der numerischen Verfahren wird versucht, den Datenaustausch zu minimieren. Die Bedeutung von Lastungleichgewichten pro Prozessor in parallelen Atmosphärensimulationen wird unterschiedlich bewertet. Die mögliche Effizienzsteigerung durch Angleichung der Prozessorlast wird je nach Modell mit 5-103 angegeben. Bei entsprechender Neukodierung werden bis zu 303 erwartet (FOSTER und ToONEN 1994) . 3.2 Parallelisierung des Modells Die Parallelisierung der spektralen Wolkenmodellierung ist ein gangbarer und vielversprechender vVeg, um die großen Anforderungen an Rechenleistung ZU meistern. um Erfahrungen mit der Parallelisierung von Wolkenmodellen zu sammeln, wird ein existierendes Wolkenmodul mit einer dem spektralen \i\Tolkenmodul vergleichbaren algorithmischen Struktur als Ausgangspunkt gewählt. Basis für die Voruntersuchungen ist das mesoskalige Modell GESIMA mit seinem Wolkentreibermodul und dem darin enthaltenen Wolkenmodul 3 (DEVANTIER 1995). Die Aufgaben dieses Wolkentreibermoduls sind die Anwendung der Advektion und Diffusion auf die Hydrometeore und die Berechnung ihrer Einflüsse auf den nichthydrostatischen Druck, die Vertikalgeschwindigkeit und die Temperatur im Atmosphärenmodell. Im Wol- 221 kenmodul wird der mikrophysikalische Teil der ·wolkenprozesse berechnet. Die Anzahl der berechneten prognostischen Felder für die Hydrometeore erhöht sich von z. B. vier (für ·wolkenwasser und Regen jeweils N und q) bei bulk-Parameterisierung auf 2 ·]MAX (N und q für jede Größenklasse J, s. a. Kap. 2.1) bei spektraler \Volkenmodellierung. Die Parallelisierung erfolgt ausgehend vom sequentiellen (FORTRAN 77) Programm. Es werden keine automatischen Werkzeuge verwendet, sondern explizite Programmierung, da Erkenntnisse über algorithmische Strukturen gewonnen werden sollen, die typisch für die Anwendungsklasse hinsichtlich einer Parallelisierung sind. Die numerische Implementierung bleibt unverändert, wodurch das Verhalten des Programmes identisch ist zur sequentiellen Version. Zielplattformen für den Einsatz der parallelen Wolkenmodellierung sind Cluster von Workstations oder symmetrische Multiprozessor Rechner (SMP), da diese an den meisten Instituten und Forschungseinrichtungen vorhanden sind. Um viele parallele Varianten zu berücksichtigen und eine möglichst effiziente auswählen zu können, werden Datenabhängigkeitsgraphen auf Prozedur- und Gitterebene untersucht. Der Datenabhängigkeitsgraph des Wolkentreibermoduls enthält verschiedene Freiheitsgrade bzgl. prozeduraler Parallelität. Das Ergebnis der Advektion und Diffusion für alle Hydrometeore wird von 4 Modulen berechnet, die für jeden Hydrometeor einzeln aufgerufen werden. Es ist unabhängig von der Reihenfolge dieser Aufrufe. Diese beiden Prozesse beanspruchen momentan ca. 70 3 der Gesamtrechenzeit des Wolkentreibermoduls. Möglichkeiten für Parallelität sind die Aufteilung der Hydrometeore bzw. Tröpfchengrößeklassen bei spektraler Modellierung in Gruppen, die jeweils auf einem Prozessor gerechnet werden oder die Verteilung der 4 Module. Die Verwendung von reiner prozedurale Parallelität führt allerdings zu einer schlechteren Skalierbarkeit. Als Ausgangspunkt für die Implementierung nach dem SPMD (Single Program Multiple Data) Programmiermodells wird die Diskretisierung des physikalischen Raumes auf ein 3-dimensionales Gitter genutzt. Auf diesem Gitter werden verschiedene Größen definiert und berechnet, im Wolkentreibermodul hauptsächlich die Hydrometeore (Wolkenwasser, Wolkeneis, Regenwasser, Graupel und Schnee) und deren Rückkopplung auf die oben erwähnten Modellgrößen. Der größere Anteil der Berechnungen hat stärkere Abhängigkeiten in vertikaler Richtung als in horizontaler. Deshalb erfolgt die Realisierung nach der Owner-Computes Regel, angewandt auf die 2-dimensionale Grundfläche des Gitters, wobei jeder Eintrag aus einem Vektor besteht, der die Säule beschreibt. Die Partitionierung durch Schnitte in zonaler und meridionaler Richtung erfordert einen Randstreifen von einem Punkt Breite in jede Richtung (8 Punkte um einen einzelnen Punkt), um die Größen, welche mit dem horizontalen Massentransport in Verbindung stehen, korrekt berechnen zu können. Die Stellen, an denen Randwertaustausch benötigt wird, werden konkretisiert. Als kleinste verschiebbare Einheit wird die Säule gewählt. Bei Gittern der Dimension Nx ·Ny· Nz ergibt sich eine Granularität von O(Nz)· Eine gleichmäßige Aufteilung der Säulen auf p Prozessoren ergibt zu Beginn des Modellaufs eine ausgeglichene Rechenlast, die sich mit der Entstehung und Entwicklung von Wolken verschieben kann. Dies führt zu einem nicht trivialen Optimierungsproblem zwischen idealer Auslastung und durch den Ausgleich bedingtem zusätzlichem Kommunikationsaufwand, bekannt als Konflikt der parallelen Effizienz bei Rechnern mit verteiltem Speicher. Die Kommunika- 222 tionszeit wird typischerweise durch folgende Formel beschrieben: T T + ic · b mit tc b Startupzeit Bytetransferzei t Nachrichtengröße Dieser Mehraufwand muß mit dem Effizienzgewinn, der durch einen Lastabgleich erreicht werden kann, ausbalanciert werden um optimale Laufzeiten zu erreichen. Die Ergebnisse der SPMD-Implementierung sind sehr gut auf Rechnern mit gemeinsamen Speicher, auf Workstationsclustern zufriedenstellend. Mit dem Einsatz von größeren Anzahlen (> 10) fällt die Effizienz noch zu stark ab. An dieser Stelle sind weitere Untersuchungen notwendig. Aufgrund der sehr rechenzeitintensiven Prozesse einer spektralen Wolkenmodellierung, die in räumlich begrenzten Gebieten (Wolken) der simulierten Atmosphäre stattinden, wird über den Simulationszeitraum eine Lastverschiebung erwartet. Eine dynamische Partitionierung des Gitters und eine dynamisch gesteuerte Ausführung der Prozeduren sind anwendbare Möglichkeiten zum Lastausgleich. Neben der Implementierung unter Nutzung des Message-Passing Programmiermodell wurden auch erste Versuche zur Verwendung von POSIX Threads in (FORTRAN 77) Programmen gemacht. Dieses Programmiermodell unterscheidet sich von den zuvor erwähnten dahingehend, daß die Zuordnung von Tasks zu Prozessoren automatisch vom Betriebssystem übernommen wird, eine dynamische Lastbalancierung also implizit enthalten ist. Der derzeitige Stand der Entwicklung ist ein einsatzfähiges SPMD-Programm, welches auf einem SUN Workstation-Cluster und einem HP X-Class Server getestet und optimiert wird. Das Programm ist für die Integration einer dynamischen Lastbalancierung vorbereitet, so daß Untersuchungen über deren Einsetzbarkeit erfolgen können. Erste Möglichkeiten zur Ausnutzung von prozeduraler Parallelität sind implementiert und sollen später mit dem SPMD-Ansatz gekoppelt werden. Durch den Anteil von momentan ca. 30 % der Wolkenmodellierung am Rechenzeitbedarf von GESIMA wird die gesamte Simulation nur gering beschleunigt. Für die zukünftige spektralen Modellierung ist die Parallelisierung unverzichtbare Grundlage, um aussagefähige und forschungsrelevante Modelläufe in adäquaten Zeiträumen durchführen zu können. 4 Ausblick Es wurde ein Konzept für die Entwicklung eines spektralen Wolkenmoduls für ein Mesoskalenmodell auf einer parallelen Plattform beschrieben. Der Verwendungszweck für ausreichend schnelle spektrale Modelle ist vielfältig. Neben dem Studium der 'Wolkenmikrophysik selbst können sie auch für Untersuchungen der Chemie zur Verfügung gestellt werden (wo das Verhältnis von Oberfläche zu Masse eine wichtige Rolle für Reaktionen spielt), ebenso können kurz- und langwellige Strahlung detaillierter modelliert werden. Da die spektrale Modell eine genaue Kenntnis des Größenspektrums liefert, bietet es sich an, ein solches als adjungiertes Modell zu Radardaten zu betreiben. SUN UND CROOK (1997) verwenden dafür ein bulk-Modell und betrachten wie wir nur die :flüssige Phase. 223 Dieses Projekt vvird von der Deutschen Forschungsgemeinschaft (DFG) unter der Projektnummer TE 51/11-1 gefördert. ur [l] ALHEIT, R. R., A. I. F'LOSSMANN und H. R. PRUPPACHER: A theoretical study of the wet removal of atmospheric pollutants. Part IV. Journal of the Atmospheric Sciences, 47:870-887, 1990. [2] ASHWORTH, M., F. FÖLKEL, V. GÜLZOW, K. KLEESE, D. P. EPPEL, H. KAPITZA und S. UNGER: Parallelization of the GESiiYJA mesoscale atmospheric model .. Parallel Computing, 23(14):2201-2214, 1997. [3] BAILLIE, C., J. MICHALAKES und R. SKALIN: Regional Weather lvfodeling on Parallel Computers. Parallel Computing, 23(14):2135-2142, 1997. [4] BERRY, . X. und R. L. REINHARDT: An analysis of cloud drop growth by collection. Part I: Double distributions. Journal of the Atmospheric Sciences, 31:1814-1824, 1974. [5] BOTT, A.: A numerical model of the cloud-topped planetary boundary layer: Impact of aerosol particles on radiative forcing of stratiform clouds. Quarterly Journal of the Royal Meteorological Society, 123:631-656, 1997. [6] CHEN, J .-P. und D. LAMB: Simulation of cloud microphysical and chemical processes using a multicomponent framework. Part I: Description of the microphysical model. Journal of the Atmospheric Sciences, 51:2613-2630, 1994. [7] COTTON, W. R., M. A. STEPHENS, T. NEHRKORN und G. J. TRIPOLI: The Colorado State University Three-Dimensional Cloud/Mesoscale ivfodel. Part II: An Jce Phase Parametrization. Journal de Recherches Atmospheriques, 16( 4):295-320, 1982. [8] DEVANTIER, R.: Wolkenbildungsprozesse über der südwestlichen Ostsee Anwendung eines neuen Wolkenschemas in einem mesoskaligen Modell. Doktorarbeit, Institut für Meteorologie der Universität Leipzig und Institut für Troposphärenforschung Leipzig, 1995. 'Wissenschaftliche Mitteilungen Band 2. [9] EPPEL, D. P., H. KAPITZA, M. CLAUSSEN, D. JACOB, vV. KOCH, L. LEVKOV, H.-T. MENGELKAMP und N. vVERRMANN: The Non-Hydrostatic lV!esoscale Afodel GESJjVJA. Part II: Parameterizations and Applications. Beiträge zur Physik der Atmosphäre, 68(1):15-41, 1995. [10] FLOSSMANN, A. I., VI/. D. HALL und H. R. PRUPPACHER: A theoretical study of the wet removal of atmospheric pollutants. Part I. Journal of the Atmospheric Sciences, 42:583-606, 1985. [11] FOSTER, I. und B. TOONEN: Load-Balancing Algorithms for Climate Models. In: Proc. of the 1994 Scalable High Performace Computing Conference, 1994. 224 [12] KAPITZA, H. und D. P. EL: The Non-Hydrostatic J\;fesoscale Model GESJ1V!A. Part !: Dynamical Equations and Tests. Beiträge zur Physik der Atmosphfüe, 65(2):129-146, 1992. [13] LIN, Y.-L., R. D. FARLEY und H. D. ÜRVILLE: Bulk parameterization of the snarr field in a cloud model. Journal of Climate and Applied I'vleteorology, S. 1065-1092, 1983. [14] MICHALAKES, J .: JV!J\!190: A scalable parallel implementation of the Penn State/NCAR JV!esoscale Ivfodel (lvll\!15). Parallel Computing, 23(14):2173-2186, 1997. [15] MÖLDERS, ., G. KRAIV1M, M. LAUBE und . R.L\ABE: On the infiuence of bulkparameterization schemes of cloud microphysics on the predicted water-cycle-relcvant quantities - A case study. IVIeteorologische Zeitschrift, 6:21-32, 1997. [16] ÜNESTI, L. und T. S0REVIK: Parallelization of a Local Area Ocean l'Vlodel. In: Proc. of the 1996 Applied Parallel Computing Conference, S. 543-554. Springer, 1996. [17] ScH.Ä.TTLER, U. und E. KRENZIEN: The parallel 'Deutschland-ivlodell7 - A messagepassing version for distributed memory computers. Parallel Computing, 23(14):22152226, 1997. [18] SK,i\LIN, R. und D. BJ0RGE: Implementation and performace of a parallel version of the HIRLAM limited area atmospheric model. Parallel Computing, 23(14):216 2172, 1997. [19] SUN, J. und N. . CROOK: Dynamical and microphysical retrieval from Doppler Radar Observations using a cloud model and its adjoint. Part 1: Afodel development and simulated data Experiments. Journal of the Atmospheric Sciences, 54:1642-1661, 1997. [20] K. C.: A numcrical simulation of wintertime 1 orographic prccipitation: Part !. Description of model microphysics and numerical techniques. Journal of the Atmospheric Sciences, 31:1735-1748, 1974. YOUNG, Adresse der Autoren: Martin Simmel, Gerd Tetzlaff Institut für Meteorologie Universität Leipzig Stephanstr. 3 04103 Leipzig Robert Reilein, Gudula Rünger Institut für Informatik Universität Leipzig Augustusplatz 10-11 04109 Leipzig
© Copyright 2025 ExpyDoc