FDS: Numerische Optimierung und Kooperationen



Ähnliche Dokumente
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten

Kevin Caldwell. 18.April 2012

Fragebogen: Abschlussbefragung

Austausch- bzw. Übergangsprozesse und Gleichgewichtsverteilungen

Unsere vier hilfreichsten Tipps für szenarienbasierte Nachfrageplanung

Charakteristikenmethode im Beispiel

Lineare Gleichungssysteme

Konzepte der Informatik

Primzahlen und RSA-Verschlüsselung

Systemen im Wandel. Autor: Dr. Gerd Frenzen Coromell GmbH Seite 1 von 5

Was sind Jahres- und Zielvereinbarungsgespräche?

Wir unterscheiden folgende drei Schritte im Design paralleler Algorithmen:

Data Mining: Einige Grundlagen aus der Stochastik

1 Einleitung. 1.1 Motivation und Zielsetzung der Untersuchung

Lineare Gleichungssysteme

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse Lösung 10 Punkte

Anwendungsbeispiele. Neuerungen in den s. Webling ist ein Produkt der Firma:

Fehler und Probleme bei Auswahl und Installation eines Dokumentenmanagement Systems

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

.. für Ihre Business-Lösung

PTV VISWALK TIPPS UND TRICKS PTV VISWALK TIPPS UND TRICKS: VERWENDUNG DICHTEBASIERTER TEILROUTEN

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Moderne Behandlung des Grauen Stars

Tangentengleichung. Wie lautet die Geradengleichung für die Tangente, y T =? Antwort:

Komplexität und der Dreischritt zur Einfachheit Dieter Brandes und Nils Brandes, Institut für Einfachheit

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

Die vorliegende Arbeitshilfe befasst sich mit den Anforderungen an qualitätsrelevante

Content Management System mit INTREXX 2002.

CFD * in der Gebäudetechnik

Vergleich von Computational Fluid Dynamics-Programmen in der Anwendung auf Brandszenarien in Gebäuden. Frederik Rabe, Anja Hofmann, Ulrich Krause

Farbtypen. Bedeutung von Farben 1. Drucken. Arbeiten mit Farben. Papierhandhabung. Wartung. Problemlösung. Verwaltung. Index

1. Berufsbegleitende Nachqualifizierung zum Berufsabschluß

1 topologisches Sortieren

AZK 1- Freistil. Der Dialog "Arbeitszeitkonten" Grundsätzliches zum Dialog "Arbeitszeitkonten"

A1.7: Entropie natürlicher Texte

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am

Weiterbildungen 2014/15

Institut für Computational Engineering ICE. N ä h e r d ra n a m S ys t e m d e r Te c h n i k d e r Z u ku n f t. w w w. n t b.

Software Engineering. Sommersemester 2012, Dr. Andreas Metzger

RÜSTZEITEN SENKEN, PRODUKTION BESCHLEUNIGEN DER SMED-PRAXIS-WORKSHOP IN IHREM HAUS

Prozessmanagement Modeerscheinung oder Notwendigkeit

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers

STRATEGIEN FÜR DAS NÄCHSTE JAHRZEHNT

OUTSOURCING ADVISOR. Analyse von SW-Anwendungen und IT-Dienstleistungen auf ihre Global Sourcing Eignung. Bewertung von Dienstleistern und Standorten

Strategischer Fokus von Anfang an. Die moove Beratung+.

Grundlagen für den erfolgreichen Einstieg in das Business Process Management SHD Professional Service

Kapitalerhöhung - Verbuchung

Addendum Option Dynam. HD-Text-/Grafikoptimierung Xerox EX Print Server, Powered by Fiery, für Druckmaschine Xerox igen 150, Version 1.

Kursdemo zum Kurs Vertragsgestaltung und Vertragsmanagement. Prof. Dr. Inge Scherer

Der Leverage-Effekt wirkt sich unter verschiedenen Umständen auf die Eigenkapitalrendite aus.

Markus Demary / Michael Voigtländer

Energetische Klassen von Gebäuden

Gutes Leben was ist das?

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

Die Online-Meetings bei den Anonymen Alkoholikern. zum Thema. Online - Meetings. Eine neue Form der Selbsthilfe?

Prozessoptimierung. und. Prozessmanagement

Projektmanagement in der Spieleentwicklung

Was ist clevere Altersvorsorge?

IT-Governance und Social, Mobile und Cloud Computing: Ein Management Framework... Bachelorarbeit

Schindler PORT-Technologie Evolution der Zielrufsteuerung. Revolution des persönlichen Komforts.

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Grundbegriffe der Informatik

Meet the Germans. Lerntipp zur Schulung der Fertigkeit des Sprechens. Lerntipp und Redemittel zur Präsentation oder einen Vortrag halten

D.3.3. Betriebsleitfaden zur Zuweisung/Vergabe von ECVET Krediten. EUCoopC. PROJEKT Nr.: LLP IT-LEONARDO-LMP

Guide DynDNS und Portforwarding

V 2 B, C, D Drinks. Möglicher Lösungsweg a) Gleichungssystem: 300x y = x + 500y = 597,5 2x3 Matrix: Energydrink 0,7 Mineralwasser 0,775,

SDD System Design Document

OECD Programme for International Student Assessment PISA Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

3.2 Spiegelungen an zwei Spiegeln

Erstellen einer PostScript-Datei unter Windows XP

Leseauszug DGQ-Band 14-26

Institut für Leistungselektronik und Elektrische Antriebe. Übungen Regelungstechnik 2

DSO. Abtastrate und Speichertiefe

Optimal vorbereitet. Fit fürs Studium mit den Vorbereitungskursen der OHN. Fragen? Jetzt anmelden!

Einführung und Motivation

QM: Prüfen -1- KN

Erfolgreiche Webseiten: Zur Notwendigkeit die eigene(n) Zielgruppe(n) zu kennen und zu verstehen!

Informationsblatt zu den Seminaren am Lehrstuhl. für Transportsysteme und -logistik

Leseprobe. Thomas Konert, Achim Schmidt. Design for Six Sigma umsetzen ISBN: Weitere Informationen oder Bestellungen unter

Übung 5 : G = Wärmeflussdichte [Watt/m 2 ] c = spezifische Wärmekapazität k = Wärmeleitfähigkeit = *p*c = Wärmediffusität

Fragebogen zur Qualität unserer Teamarbeit

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

1 Mathematische Grundlagen

Auswertung des Fragebogens zum CO2-Fußabdruck

Technische Information zum Verlustwinkel-optimierten Lautsprecherkabel compact 6 M

FAQ 04/2015. Auswirkung der ISO auf 3SE53/3SF13 Positionsschalter.

Wie funktioniert ein Mieterhöhungsverlangen?

Informationsblatt Induktionsbeweis

Fortbildungsangebote für Lehrer und Lehrerinnen

Welche Unterschiede gibt es zwischen einem CAPAund einem Audiometrie- Test?

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

WSO de. <work-system-organisation im Internet> Allgemeine Information

Zahlenoptimierung Herr Clever spielt optimierte Zahlen

Ishikawa-Diagramm. 1 Fallbeispiel 2. 2 Was ist ein Ishikawa-Diagramm 2. 3 Vorgehen bei der Erstellung eines Ishikawa-Diagramms 2.

DAS PARETO PRINZIP DER SCHLÜSSEL ZUM ERFOLG

Die Beschreibung bezieht sich auf die Version Dreamweaver 4.0. In der Version MX ist die Sitedefinition leicht geändert worden.

Multichannel Challenge: Integration von Vertriebsorganisation und Contact Center in der Versicherung

Transkript:

Ingenieure für Brandschutz FDS: Numerische Optimierung und Kooperationen Dr. rer. nat. Susanne Kilian Dr.-Ing. Christoph Klinzmann hhpberlin Ingenieure für Brandschutz GmbH Fassung September 2011

Inhalt 1 Einleitung 2 Zielsetzungen und Aktivitäten der FDS Usergroup 3 Optimierte Parallelisierungsstrategien für den FDS-Drucklöser 3.1 Die FDS-Druckgleichung 3.2 Algorithmische Beschreibung des aktuellen FFT-Drucklösers 3.3 Algorithmische Beschreibung des alternativen ScaRC-Drucklösers 3.4 Entwicklungsstand des ScaRC-Drucklösers 4 Numerische Testrechnungen 4.1 Durchströmung eines Kanals in 2D 4.2 Dreifach-Einströmung in ein kubisches Gebiet in 3D 4.3 Diskussion der Testreihen 5 Fazit

Fassung 21. September 2009 Autoren Dr. rer. nat. Susanne Kilian Dr. Susanne Kilian ist Mathematikerin mit Schwerpunkt Numerik und kann auf eine langjährige akademische Erfahrung in der Entwicklung paralleler Programmpakete zur Simulation strömungsmechanischer Probleme (CFD) auf Hochleistungscomputern zurückgreifen. Bei hhpberlin fördert Sie die Entwicklung und Anwendung von FDS für den schutzzielorientierten Brandschutz. Gemeinsam mit hhpberlin initiierte Dr. Kilian zu diesem Zweck 2008 die FDS Usergroup und forscht aktiv an der Weiterentlicklung von FDS. Dr.-Ing. Christoph Klinzmann Dr.-Ing. Christoph Klinzmann unterstützt von unserem Hamburger Standort aus bundesweite Bauvorhaben mittels wissenschaftlichen Untersuchungen und Anwendungen. Zudem betreut er die Konzipierung und Umsetzung von Brandschutzmaßnahmen u. a. für Bauprojekte von Airbus und ECE. Im Normenausschuss DIN 18230-4 Brandsimulation trägt er dazu bei, den Brandschutz weiterzuentwickeln und zu optimieren.

Fassung September 2011 FDS: NUMERISCHE OPTIMIERUNG UND KOOPERATIONEN 1 Einleitung Immer komplexer werdende Gebäude mit architektonischen Besonderheiten, wie etwa Atrien, stellen Ingenieure und Bauaufsichtsbehörden häufig vor die Frage, wie die zugrunde liegenden Gebäudestrukturen und ihre Abweichungen vom üblichen Standardgebäude mit dem starren Baurecht in Einklang gebracht werden können. Speziell im Fall der ausreichenden Rauchableitung oder der Standsicherheit im Brandfall muss bei diesen Gebäuden der Nachweis über moderne Ingenieurmethoden erfolgen. Computergestützte Simulationsprogramme auf Basis moderner Techniken der Computational Fluid Dynamics (CFD) ermöglichen heutzutage in zunehmendem Maße eine individuelle und maßgeschneiderte Abbildung der realen Gebäudeabmessungen und der maßgeblichen Brandszenarien. Ein Beispiel für ein renommiertes CFD-Programm zur numerischen Brand- und Rauchgas-Simulation, das weltweit auf breiter Basis eingesetzt wird, ist der Fire Dynamics Simulator (FDS) [1]. FDS wurde am National Institute of Standards and Technology (NIST) in Maryland/USA entwickelt und steht unter einer Open-Source Lizenz zur freien Verfügung. Üblicherweise handelt es sich bei den genannten CFD-Nachweisen um ausgesprochen Laufzeit- und Speicherplatz-intensive Simulationen, die nur auf modernen Parallelrechner-Architekturen effizient durchgeführt werden können. Die aktuell eingesetzten CFD-Programme basieren dabei auf hochkomplexen, numerischen Methoden, die über viele Jahre oder gar Jahrzehnte hinweg entwickelt wurden. Der eingesetzte Programmcode entstammt zumeist aus Zeiten, in denen Parallelrechner-Architekturen noch nicht weit verbreitet waren. So liegen die ausgeklügelten und über einen langen Zeitraum bewährten numerischen Methoden zur Berechnung der betrachteten physikalischen Größen vielfach nur für Einzelprozessor-Anwendungen vor. Die numerische Anpassung an die neuen Multiprozessor-Architekturen ist ein höchst sensibler Prozess, der einen großen strukturellen Aufwand erfordert. Insbesondere muss streng darauf geachtet werden, dass die Konvergenzeigenschaften und die Approximationsgenauigkeit der ursprünglichen seriellen Methodik nicht beeinträchtigt werden. 6

FDS: Numerische Optimierung und Kooperationen In diesem Zusammenhang stellt insbesondere die effiziente Parallelisierung der FDS-Druckgleichung noch eine große Herausforderung dar. Um Genauigkeitsverluste bzw. numerische Instabilitäten zu vermeiden, muss die verwendete Strategie zur Parallelisierung unbedingt den ausgeprägt globalen Charakter des physikalischen Drucks berücksichtigen. Die gegenwärtig in FDS eingesetzte Methodik zur Lösung der Druckgleichung, die parallele Durchführung verteilter Fast Fourier Transformationen (FFT), weist einen eher grobkörnigen und lokalen Charakter auf und wird dieser Anforderung leider nicht in allen Fällen gerecht. So kann insbesondere die fehlerfreie Skalierung auf große Teilgebietszahlen nicht zuverlässig gewährleistet werden. Die Verbesserung der Qualität der parallelen FDS-Version, speziell im Hinblick auf massiv parallele Anwendungen mit hunderten von Prozessoren, wird daher in der offiziellen FDS-Roadmap [2] als sehr dringliches Ziel beschrieben. In enger Kooperation mit dem amerikanischen FDS-Entwicklerteam am NIST widmet sich hhpberlin daher seit mehreren Jahren dem Design und der Implementierung des alternativen parallelen Drucklösers Scalable Recursive Clustering (ScaRC). Dieser basiert im Gegensatz zum aktuellen FFT-Drucklöser auf einer globalen Philosophie, wodurch gebietsübergreifende Problemabhängigkeiten bestmöglich reproduziert werden. Begleitet wird diese enge Zusammenarbeit durch die deutsche FDS Usergroup, die als übergreifende Plattform für einen intensiven anwenderorientierten und wissenschaftlichen Austausch rund um FDS ins Leben gerufen wurde. Eine wichtige Zielsetzung der FDS Usergroup bestand von Anfang an darin, einen persönlichen Kontakt zwischen den Mitgliedern der FDS Usergroup und den FDS-Entwicklern herzustellen. Auf diese Weise war es in jüngster Vergangenheit bereits mehrfach möglich, Fragen und Anregungen direkt an die Hauptentwickler weiterzugeben und so Einfluss auf die laufende Entwicklung von FDS zu nehmen. Dank des kompetenten und engagierten Entwicklerteams rund um Kevin McGrattan (NIST) ist FDS einer stetigen Fortentwicklung unterworfen. In der offiziellen FDS-Roadmap [2] haben die Hauptentwickler eine Reihe kurz- und mittelfristiger Ziele definiert, zu deren Umsetzung die Unterstützung durch interessierte Entwickler-Teams aus aller Welt sehr willkommen ist. 7

Fassung September 2011 Der vorliegende Artikel gliedert sich wie folgt: Das erste Kapitel gibt zunächst eine kurze Zusammenfassung über die Ziele und Aktivitäten der deutschen FDS Usergroup. Um einen Überblick über die grundlegenden Funktionsweisen des FFT- bzw. ScaRC-Zugangs zu vermitteln, schließt sich daran eine informelle algorithmische Beschreibung beider Verfahrensklassen an. Es folgen eine Darstellung des aktuellen ScaRC-Entwicklungsstands sowie ein Ausblick auf die in naher Zukunft geplanten Entwicklungsschritte. Um den Zugewinn an Approximationsgenauigkeit und Skalierbarkeit durch die neue ScaRC-Methodik zu illustrieren, werden nachfolgend zwei numerische Vergleichsrechnungen präsentiert, die die betrachteten Drucklöser einander gegenüberstellen. Der Artikel schließt mit einer Diskussion der numerischen Resultate und einer Bewertung der bisher erzielten Erfolge. 2 ZIELSETZUNGEN UND AKTIVITÄTEN DER FDS USERGROUP Die FDS Usergroup wurde im November 2007 auf die Initiative von hhpberlin hin gegründet und ist seitdem stetig angewachsen [4]. Mittlerweile sind zahlreiche Ingenieurbüros und Forschungseinrichtungen Mitglied dieser Gruppe. Die FDS Usergroup orientiert sich an den folgenden Zielsetzungen: Aufbau eines internationalen Kontakt- und Kooperationsnetzwerks: Als unabhängiges Forum für FDS Anwender und Forscher aus deutschsprachigen und zunehmend auch anderen europäischen Ländern versteht sich die FDS Usergroup als internationale Plattform zum wissenschaftlichen Austausch von Informationen, Erfahrungen und Fragen rund um FDS. Unter dem Motto Share Know-how sollen Talente aus allen Bereichen der Anwendung, Verifikation, Validierung und numerischen Weiterentwicklung von FDS miteinander verknüpft werden, um gemeinsam zu einer Qualitätssteigerung von FDS beizutragen. Koordination der FDS-Aktivitäten: Eine besondere Bedeutung hat die gemeinsame Identifikation des weiteren Forschungs- und Entwicklungsbedarfs sowie die Definition einheitlicher Qualitätsstandards und Anwendungsrichtlinien im Rahmen eines fortlaufenden Diskussionsprozesses. Organisation von Workshops: Die Veranstaltung regelmäßiger Treffen und Workshops soll den Aufbau und die Pflege persönlicher Kontakte zwischen 8

FDS: Numerische Optimierung und Kooperationen den einzelnen Mitgliedern erleichtern. Gleichzeitig sollen neueste Erkenntnisse einem breitem Publikum zugänglich und für die tägliche Anwendungspraxis nutzbar gemacht werden. Regelmäßiger Kontakt zu den FDS-Hauptentwicklern: Eine wichtige Vermittlerfunktion besteht darin, die Interessen und Konzepte der Mitglieder in gebündelter Weise an die FDS-Hauptentwickler heranzutragen, um ihnen auf diese Weise mehr Nachdruck zu verleihen. Dies soll letztlich ermöglichen, bei der weiteren Entwicklung von FDS aktiv mitgestalten zu können. Ursprünglich nur gedacht für den deutschsprachigen Raum, verzeichnet die FDS Usergroup gegenwärtig 260 Mitglieder aus Deutschland, Österreich, der Schweiz, Belgien, Frankreich, Norwegen, Dänemark und Finnland. Das Online-Forum, das registrierten Mitgliedern zur Verfügung steht, ermöglicht es, konkrete Anwenderprobleme zeitnah zu diskutieren und gemeinsam zu lösen bzw. sich über die Aktivitäten anderer Teilnehmer zu informieren. Im Verlauf der zurück liegenden drei Jahre hat sich ein stabiler Kreis an Veranstaltungs-Teilnehmern heraus gebildet, in dem man sich wechselseitig kennt und voneinander profitiert. Wir blicken inzwischen zurück auf vier sehr erfolgreiche Anwendertreffen sowie regelmäßige regionale Treffen und einen Workshop der Arbeitsgruppe NRW, in deren Verlauf unterschiedlichste Themen rund um FDS präsentiert und diskutiert wurden. Dabei reichte die Palette der dargestellten Themenbereiche von Beispielen und Problemen aus der täglichen Ingenieurpraxis über die Darstellung neuer Parallelisierungs- und Verifikationskonzepte bis hin zur Präsentation vollständig neuer Code-Bestandteile. Das fünfte Anwendertreffen ist für November 2011 bereits in Planung. Dabei sind neue Mitglieder jederzeit herzlich willkommen. Die während des jüngsten Anwendertreffens im November 2010 eingerichteten Arbeitskreise boten erstmalig die Möglichkeit, in themenorientierten Kleingruppen erste Konzepte für die gemeinsame Definition qualitätssichernder Kriterien zu erarbeiten. Eine wichtige Zielsetzung, die sich aus dem Arbeitskreis zur Qualitätssicherung ergeben hat, ist die Konzeption eines gemeinsamen Leitfadens, der die Grundlage für ein einheitliches Prozedere bei der Erstellung und Dokumentation von FDS-Gutachten bilden soll. Ein grundsätzlich standardisiertes Vorgehen gegenüber Bauaufsichtsbehörden auf Basis eines gemeinsamen Leitfadens kann ein wichtiges Instrument darstellen, um die Qualität sowie Glaubwürdigkeit von FDS-Simulationen zu erhöhen. Eine erste Version 9

Fassung September 2011 des Leitfadens soll im Verlauf dieses Jahres konkrete Gestalt annehmen und auf den kommenden Treffen ausführlich diskutiert werden. Insbesondere die Roundtable Discussion im Juni 2010 hat neue Impulse gesetzt und einen heißen Draht zwischen einzelnen Mitgliedern der FDS Usergroup ins Leben gerufen: Die beiden FDS-Entwickler Kevin McGrattan und Randall McDermott waren zu Gast in Berlin und boten allen Teilnehmern im Rahmen einer offenen Diskussionsrunde die Möglichkeit, konkrete Fragen und Probleme intensiv zu diskutieren und zu klären. Wie im Nachhinein von den Hauptentwicklern betont wurde, hat dieses Treffen unmittelbaren Einfluss auf die aktuelle Weiterentwicklung von FDS genommen. Dies geht deutlich aus dem Grußwort der Hauptentwickler Kevin McGrattan und Randall McDermott anlässlich des vierten Anwendertreffens der FDS Usergroup hervor:... As you can see, several of these enhancements are a direct result of our June meeting in Berlin and we are thankful for our wonderful collaboration.... Diese intensive Zusammenarbeit soll auch zukünftig fortgeführt und durch weitere regelmäßige Treffen untermauert werden. 3 OPTIMIERTE PARALLELISIERUNGSSTRATEGIEN FÜR DEN FDS-DRUCKLÖSER Vor dem Hintergrund der rasanten Entwicklungen im Bereich der Multiprozessor- Architekturen bietet FDS die Möglichkeit, Berechnungen parallel auf mehreren Prozessoren auszuführen, wodurch potentiell eine deutliche Reduktion der Gesamtrechenzeit erreicht werden kann. Zu diesem Zweck wird das zugrunde liegende Berechnungsgebiet vom Anwender in kubische Teilgebiete mit rechteckigen Gittern unterteilt, die dann weitgehend unabhängig von den Prozessoren eines Parallelrechners bearbeitet werden können. Da aufgrund von komplexen Strömungs- und Austauschprozessen die einzelnen Teilgebiete nicht unabhängig voneinander betrachtet werden können, müssen die zugehörigen Teilprozesse regelmäßig miteinander gekoppelt werden. Dies erfolgt durch den koordinierten Austausch wechselseitig benötigter Daten auf Basis der Kommunikationsbibliothek Message Passing Interface (MPI) [6]. Diese Vorgehensweise setzt notwendigerweise einen stabilen parallelen Lösungs- 10

FDS: Numerische Optimierung und Kooperationen algorithmus voraus, der dazu in der Lage ist, die betrachtete Gebietszerlegung zuverlässig und numerisch stabil zu bearbeiten. Ein genauer Blick in die numerischen Grundlagen von FDS offenbart, dass der zeitliche Verlauf der betrachteten thermodynamischen Größen unter Verwendung expliziter Zeitschrittmethoden approximiert wird, siehe [15, 16]. Dies bedeutet konkret, dass bei der Berechnung neuer Näherungswerte nur auf zuvor bereits berechnete Werte aus vorangehenden Zeitschritten zurückgegriffen wird. Da explizite Methoden nur einen lokalen Datenaustausch zwischen unmittelbar benachbarten Teilgebieten erfordern, besitzt diese Methodik eine ausgesprochen hohe parallele Effizienz (d. h. Beschleunigung gegenüber einer seriellen Ausführung). Auf den ersten Blick birgt FDS daher ein sehr hohes Parallelisierungspotenzial in sich. 3.1 Die FDS-Druckgleichung Eine Sonderstellung im Parallelisierungsprozess nimmt die Druckgleichung für den modifizierten Druckterm H ein, die innerhalb des Gesamtablaufs sehr eng mit der Berechnung aller thermodynamischen Größen verwoben ist. Dabei handelt es sich um eine elliptische partielle Differentialgleichung vom Poisson-Typ mit verschiedenen Typen von Randbedingungen, siehe [11]. Die Diskretisierung der Druckgleichung unter Verwendung einer zellzentrierten Finite-Differenzen-Methode zweiter Ordnung, führt auf ein globales Gleichungssystem wobei A eine Matrix des R nxn bzw. x, b Vektoren des R n sind. Detaillierte Hintergrundinformationen finden sich unter [11, 16]. Bei der Konzeption von Lösungsverfahren für die Druckgleichung muss man sich insbesondere eine sehr spezielle Charakteristik elliptischer partieller Differentialgleichungen vor Augen führen: Gleichungen dieses Typs besitzen ge- 11

Fassung September 2011 wissermaßen eine unendliche Ausbreitungsgeschwindigkeit für Informationen. Bereits ein einziger Zeitschritt genügt, um lokale Druckinformationen über das gesamte Gebiet hinweg zu verteilen, vergleiche Bild 1. Lokale Effekte oder Störungen in den Daten beeinflussen daher unmittelbar die Lösung im gesamten Berechnungsgebiet. Bild 1: Extrem schnelle Ausbreitung der Einström- Information in der Druckgleichung am Beispiel eines pipeförmigen Gebietes in 2D Um eine belastbare parallele Approximation des Druckes zu erzielen, muss auch der verwendete parallele Löser dieses ausgeprägt global orientierte Verhalten bestmöglich reproduzieren. Im Gegensatz zum sehr lokalen Charakter der oben genannten expliziten Methodik, erfordert die numerische Lösung dieses Systems daher die Verwendung neuer, gebietsübergreifender Parallelisierungskonzepte, die im Mittelpunkt der folgenden Betrachtungen stehen. 3.2 Algorithmische Beschreibung des aktuellen FFT-Drucklösers Der bisherige Zugang zur Lösung der FDS-Druckgleichung basiert auf der Verwendung einer hoch optimierten FFT-Methode aus CRAYFISHPAK [5]. Bedenkt man, dass FDS in seinen Anfängen nur für rein serielle Single-Mesh-Rechnungen konzipiert war, so handelte es sich bei dieser Wahl um eine ausgesprochen sinnvolle Entscheidung, da FFT-Methoden seit vielen Jahren äußerst effizient und erfolgreich in verschiedensten Wissenschaftszweigen eingesetzt werden. Dies hat sich auch für Single-Mesh-Rechnungen mit FDS bewahrheitet, für die sich der FFT-Drucklöser seit Jahren als extrem robust und konkurrenzlos laufzeiteffizient erweist. Erst die Einführung der Gebietszerlegungstechnik in der Version 4 von FDS ließ die Verwendung der FFT-Methode im neuen Licht erscheinen, da sich immer wieder Abweichungen zwischen Multi-Mesh-Rechnungen und ihren Single-Mesh- Entsprechungen feststellen ließen. Dieser Sachverhalt ist wesentlich darauf zu- 12

FDS: Numerische Optimierung und Kooperationen rück zu führen, dass FFT-Methoden zur Klasse der direkten Methoden gehören. Ein weiterer prominenter Vertreter dieser Verfahrensklasse ist beispielsweise das bekannte Gaußsche Eliminationsverfahren. Direkte Methoden berechnen die Lösung eines Gleichungssystems innerhalb eines einzigen, möglicherweise sehr komplexen Berechnungszyklus ohne Zwischennäherungen. Die hohe Leistungsfähigkeit direkter Methoden basiert dabei wesentlich auf hoch-rekursiven, gebietsübergreifenden Daten-abhängigkeiten, die möglichst zeitgleich (häufig in Form kleinster Datenpakete) zur Verfügung stehen und laufzeiteffizient verarbeitet werden müssen. Im Falle einer Single-Mesh-Rechnung befinden sich alle hierfür benötigten Daten im Speicher des einzigen verwendeten Prozessors und können unmittelbar zur Berechnung heran gezogen werden. Im Falle einer Multi-Mesh-Rechnung werden die rekursiven Abhängigkeiten jedoch durch die Unterteilung in einzelne Teilgebiete willkürlich aufgebrochen. Die für die Rechnung erforderlichen Datenpakete sind über eine Vielzahl von Prozessoren verteilt und müssten zur exakten Lösung des globalen Systems ständig über das gesamte Gebiet hinweg ausgetauscht werden, was die parallele Effizienz drastisch reduzieren würde. Erschwerend kommt hinzu, dass bereits vorhandene FFT-Parallelisierungsstrategien in der Regel nicht mit geometrisch motivierten Gebietszerlegungen wie bei FDS konform gehen, siehe [9]. Bedauerlicherweise ist ein Aufbrechen der rekursiven Datenabhängigkeiten zur Erhöhung des Parallelitätsgrades in der Regel unvermeidbar. Diesem Weg sind auch die Hauptentwickler gefolgt und haben eine nahe liegende Parallelisierungsstrategie angewandt, die sich einfach in die vorhandene Programmstruktur integrieren ließ: Die Finite-Differenzen-Diskretisierung findet nun nicht mehr auf globaler Ebene, sondern lokal auf jedem einzelnen Teilgebiet statt, so dass letztlich N lokale Gleichungssysteme entstehen, Anstelle der übergreifenden Lösung des Drucksystems durch ein einziges, globales FFT-Verfahren wie im Single-Mesh-Fall, führt nun jedes Teilgebiet ein eigenes, lokales FFT-Verfahren durch, vergleiche Bild 2. Zur wechselseitigen Kopplung der lokalen Teilgebietslösungen wird innerhalb jedes Zeitschritts zusätzlich ein koordinierter Datenaustausch zwischen unmittelbar benachbarten Teilgebieten vorgenommen. Insgesamt reiht sich dieser Ansatz konzeptionell in die Reihe der additiven Schwarz schen Gebietszerlegungsmethoden ein [10]. 13

Fassung September 2011 Bild 2: Parallelisierung durch verteilte FFT-Verfahren mit lokalem Datenaustausch im aktuellen FDS- Drucklöser Da die Druckgleichung zur Klasse der elliptischen Randwertprobleme gehört, deren korrekte numerische Lösung das Vorhandensein wohldefinierter Randwerte voraussetzt, ist man bei diesem Ansatz dazu gezwungen, entlang der neu entstandenen, inneren Teilgebietsränder möglichst sinnvolle Randbedingungen vorzugeben. Tatsächlich sind diese jedoch vollkommen unbekannt bzw. müssen aus bereits berechneten Daten aus dem Gebietsinneren künstlich herleitet werden. Mit Blick auf die immanent hohe Ausbreitungsgeschwindigkeit des Drucks wird schnell klar, dass das unphysikalische Aufbrechen des Gesamtzusammenhangs durch Verwendung rein lokaler Datenaustausch-Techniken nicht hinreichend behoben werden kann: Ein Informationsaustausch von einem Gebietsende zum anderen kann nur schrittweise über alle dazwischen liegenden Teilgebiete hinweg erfolgen. Dieser Sachverhalt wird anschaulich in Bild 3 demonstriert, dem eine Unterteilung des zuvor betrachteten pipeförmigen Gebietes in vier Teilgebiete zugrunde liegt: Die Einström-Information vom linken Gebietsrand muss sukzessive durch das Gesamtgebiet transportiert werden und benötigt insgesamt vier Kommunikationszyklen, um schließlich den rechten Gebietsrand zu erreichen. Dies steht im krassen Widerspruch zu der tatsächlichen Ausbreitungsgeschwindigkeit des Drucks und kann sich umso drastischer auswirken, je höher die Anzahl der verwendeten Teilgebiete bzw. die damit einhergehende Zerstückelung des physikalischen Zusammenhangs ist. 14

FDS: Numerische Optimierung und Kooperationen Bild 3: Stockender Datenfluss vom linken zum rechten Gebietsrand beim parallelen FFT- Drucklöser Letztlich kann dieser Sachverhalt zu einer deutlichen Verschlechterung der Konvergenz beitragen, da globale Abhängigkeiten nicht korrekt wiedergegeben werden. Trotz extrem hoher paralleler Effizienz können daher für bestimmte Konstellationen massive Einbrüche in der numerischen Effizienz (Approximationsgüte bzw. Konvergenzgeschwindigkeit) auftreten, die im schlimmsten Fall zu numerischer Instabilität und Divergenz führen. Das vorrangige Ziel, die Skalierbarkeit von FDS auf höhere Prozessorzahlen zuverlässig zu gewährleisten, scheint durch die rein lokale Verwendung von FFT-Verfahren folglich nicht realisierbar zu sein. Die Hauptentwickler sind sich dieses Sachverhalts bewusst und bezeichnen die Notwendigkeit zur Verbesserung des Drucklösers in ihrer Roadmap [2] als vordringliches Ziel: We still need to improve the coupling of the pressure solver across mesh boundaries in a multi-mesh (often called multi-block ) simulation. Discontinuities in the pressure solution across these boundaries is currently the biggest speed bump to broader, more reliable use of the multi-mesh approach... Potential Research Topic: Improve efficiency of parallel version of FDS on very large computing clusters (100+ processors)... Priority: High. 15

Fassung September 2011 Zur Lösung dieses Dilemmas ist es unabdingbar, dass das parallele Verfahren einen Mechanismus zur adäquaten Wiedergabe globaler Effekte beinhaltet. Eine aktuelle Weiterentwicklung des parallelen FFT-Verfahrens am NIST, das FFT-Iterationsschema, beruht entsprechend darauf, durch Hinzunahme eines übergeordneten Grobgitterproblems den gebietsübergreifenden Datenfluss besser aufzulösen, siehe Bild 4. Bild 4: Iterative Durchführung der lokalen FFT-Verfahren in Kombination mit einem Grobgitterproblem im neuen FFT- Iterationsschema Zu diesem Zweck werden die herkömmlichen lokalen FFT-Verfahren in eine umgreifende Iteration eingebettet und mit einem globalen Grobgitterproblem gekoppelt. Als Abbruchkriterium für diese Iteration kann im FDS-Eingabefile die Genauigkeit vorgegeben werden, mit der die Normalkomponenten der lokalen Geschwindigkeiten entlang innerer Teilgebietsränder übereinstimmen müssen. Für eine gewünschte Genauigkeit von 10-2 wird z. B. folgender Wert spezifiziert: &PRES VELOCITY_TOLERANCE = 0.01. Wie wir später noch sehen werden, lässt sich hiermit tatsächlich eine verbesserte Skalierbarkeit für viele Fälle erreichen. Das Konvergenzverhalten dieser Variante zeigt sich zur Zeit jedoch noch als etwas unzuverlässig bzw. scheint von der Wahl optimaler Verfahrensparameter abzuhängen, die a-priori nicht bekannt sind. 16

FDS: Numerische Optimierung und Kooperationen 3.3 Algorithmische Beschreibung des alternativen ScaRC-Drucklösers Der alternative Drucklöser ScaRC versucht diese Lücke zu schließen und eine maßgebliche Verbesserung bei der Qualität der Drucklösung zu erzielen. Durch die ausgeklügelte Kombination von hochauflösender Feingitter-Information mit gebietsübergreifender Grobgitter-Information auf Basis von iterativen Mehrgitter-Techniken wird eine deutlich verbesserte globale Kopplung und Skalierbarkeit auf große Teilgebietszahlen erreicht. Auf die mathematisch ausführliche Beschreibung von ScaRC bzw. Mehrgitterverfahren soll an dieser Stelle verzichtet werden. Eine detaillierte Herleitung findet sich beispielsweise in [7, 10, 13]. Stattdessen wollen wir uns nachfolgend auf eine informelle Beschreibung der wichtigsten Eigenschaften dieser Verfahrensklasse beschränken. Mehrgitterverfahren zählen zu den effizientesten Verfahren für die Lösung großer Gleichungssysteme, mit deren Hilfe sich exzellente, von der Gitterweite unabhängige Konvergenzraten bei gleichzeitig moderater rechnerischer Komplexität erzielen lassen. Man unterscheidet hierbei zwei verschiedene Zugänge: Geometrische Mehrgitterverfahren (GMG) verwenden die Geometrie-Information des vorliegenden Problems, um die einzelnen Verfahrensbestandteile zu definieren und setzen daher bestimmte geometrische Grundstrukturen voraus. Algebraische Mehrgitterverfahren (AMG) verwenden lediglich die Information, die sich aus dem linearen Gleichungssystem ergibt und sind daher auch für Probleme auf komplizierteren Berechnungsgebieten bzw. unstrukturierten Gittern geeignet. Beide Varianten sind Bestandteil vieler international verwendeter CFD-Pakete. Insbesondere AMG-Verfahren finden aufgrund ihrer geometrischen Vielseitigkeit zunehmend Verwendung, siehe zum Beispiel [8, 12]. Ein wichtiger Unterschied zur Klasse der direkten Verfahren, wie beispielsweise dem FFT-Verfahren, besteht darin, dass Mehrgitterverfahren zur Lösung eines Gleichungssystems mehrere Berechnungszyklen benötigen. Damit gehören Mehrgitterverfahren zur Klasse der iterativen Verfahren. Die einzelnen Berechnungszyklen sind jedoch von deutlich geringerer Komplexität als dies beim einzigen Berechnungszyklus eines direkten Verfahrens der Fall ist. 17

Fassung September 2011 Innerhalb dieser Zyklen nähern sich die erzeugten Approximationen immer mehr der gesuchten Lösung an. Insgesamt sind iterative Verfahren häufig einfacher zu implementieren als direkte Verfahren, da sie sich im Wesentlichen auf eine Reihe von Kernkomponenten (Matrix-Vektor-Produkte, Vektor-Linear-kombinationen und Skalarprodukte) zurückführen lassen, die in geeigneter Weise optimiert und an die vorliegende Rechnerarchitektur angepasst werden können. Mehrgitter beruhen im Kern auf der Verwendung eines simplen Defektkorrektur- Verfahrens mit einer sogenannten Vorkonditionierungsmatrix B, die grundlegende Eigenschaften der Matrix A in sich vereinen sollte, B part (A), und zur Beschleunigung des Lösungsprozesses dient. Prominente Vertreter dieser Verfahrensklasse sind beispielsweise das Jacobioder Gauß-Seidel-Verfahren, siehe [10, 17]. Gemessen in einer geeigneten Norm beschreibt der zugehörige Defekt wie gut die aktuelle Approximation x m das Gleichungssystem Ax = b bereits erfüllt und stellt somit ein Maß für die Konvergenzgeschwindigkeit des Verfahrens dar. Eine herkömmliche Basisiteration konvergiert typischerweise jedoch relativ langsam. Das wesentliche Konstruktionsmerkmal von Mehrgitterverfahren besteht nun darin, die Konvergenzgeschwindigkeit der Basisiteration zu beschleunigen, indem nicht nur auf einem einzigen (feinen) Gitter gearbeitet wird, sondern eine ganze Hierarchie gröber werdender Gitter zum Einsatz kommt. Diese Vorgehensweise wird in Bild 5 grafisch veranschaulicht: Ausgehend von einer Startlösung auf dem feinsten Gitterlevel werden zunächst einige Schritte der Basisiteration durchgeführt. Auf diese Weise wird in der Regel bereits nach wenigen Iterationen eine deutliche Reduktion der hochfrequenten Fehleranteile des Defektes erreicht. Diese besondere Eigenschaft der Basisiteration wird mit dem Begriff Glättungseigenschaft bezeichnet. Die niederfrequenten Fehleranteile bleiben jedoch üblicherweise nahezu unverändert und können noch sehr groß sein. Dieser Sachverhalt legt es nahe, den so geglätteten Defekt auf ein vergröbertes Gitter zu restringieren, d. h. durch geeignete Mittelwerte abzubilden. Die nieder- 18

FDS: Numerische Optimierung und Kooperationen Bild 5: Mehrgitter- Hierarchie mit verschieden groben Gittern sowie Restriktion und Prolongation des Defektes frequenten Anteile des feinen Levels erscheinen auf dem gröberen Level wiederum als hochfrequente Anteile und können mit Hilfe einer weiteren Basisiteration erneut geglättet werden, hier jedoch zu deutlich geringeren Berechnungskosten. Diese Vorglättung wird rekursiv so lange fortgesetzt, bis ein gröbster Gitterlevel erreicht ist, auf dem das verbleibende Grobgitterproblem mit sehr geringem Aufwand exakt gelöst werden kann. Anschließend wird die erzielte Grobgitterlösung mit Hilfe geeigneter Interpolationsmechanismen sukzessive auf die feineren Gitter zurück prolongiert, wobei wiederum auf jedem Level einige Schritte der Basisiteration zur Nachglättung durchgeführt werden können. Jeder Gitterlevel ist für die Reduktion eines ganz bestimmten Frequenzbereiches der Fehleranteile zuständig. Die Effizienz der gesamten Methode basiert wesentlich darauf, wie gut diese Bereiche interagieren bzw. die verschiedenen Gitterweiten aufeinander abgestimmt sind. Insgesamt tragen das Durchlaufen der Gitterhierarchie sowie die Lösung des Grobgitterproblems zu einer ausgesprochen starken gebietsübergreifenden Kopplung bei. Wie aus Bild 5 hervor geht, ist auf jedem Gitterlevel nur lokale Kommunikation zwischen benachbarten Teilgebieten für die Berechnung der benötigten Matrix- Vektor-Produkte erforderlich. Lediglich die Berechnung des Grobgitterproblems erfordert die weniger effiziente Durchführung globaler Kommunikation. Zur Wahl der Vorkonditionierungsmatrix können nun auf sehr natürliche Weise Gebietszerlegungsstrategien herangezogen werden, beispielsweise 19

Fassung September 2011 Die Vorkonditionierung besteht folglich aus der Lösung der einzelnen Teilgebietsprobleme, wodurch sehr viele spezifische Eigenschaften des Gesamtsystems ausgenutzt werden können. Aufbauend auf diesen iterativen Kernbestandteilen definiert sich der verallgemeinerte Gebietszerlegungslöser ScaRC nun als fein abgestimmte Symbiose aus effizienten globalen und lokalen Techniken, die in unterschiedlichen Varianten dem vorliegenden Problem bestmöglich angepasst werden können. Hierzu versucht ScaRC in geeigneter Weise gebietsübergreifende Mehrgitteransätze mit hocheffizienten lokalen Lösern für die Vorkonditionierungsprobleme innerhalb der einzelnen Teilgebiete zu kombinieren. Dabei handelt es sich nicht um ein einziges fest gefügtes Verfahren, sondern vielmehr um eine Art Baukastensystem, das ein großes Spektrum moderner Gebietszerlegungs- und Mehrgitterzugänge für die Lösung partieller Differentialgleichungen enthält und sinnvoll kombiniert. Detaillierte Information zur algorithmischen Herleitung von ScaRC finden sich in [13]. Ein fundamentales Konstruktionsmerkmal von ScaRC besteht darin, ein möglichst hohes Maß an Datenlokalität zu bewahren, um lokale Prozessorbestandteile wie z. B. den Cache bestmöglich ausnutzen zu können. Lokale Irregularitäten können innerhalb einzelner Teilgebiete versteckt und dort mit besonders robusten lokalen Lösern oder feineren Gittern behandelt werden. Wie in Bild 6 illustriert, könnte dies zukünftig den Weg ebnen hin zur adaptiven Verfeinerung lokaler Bereiche mit besonders hoher Variationen der betrachteten physikalischen Größen auf Basis von Techniken des Adaptive Mesh Refinement (AMR). Der größte Vorteil dieses Zugangs liegt darin, dass ScaRC im Gegensatz zum parallelen FFT-Ansatz von einer globalen Diskretisierung des Gesamtgebietes ausgeht. Die zugehörige globale Matrix A innerhalb der Basisiteration ist jedoch ein rein formaler Ausgangspunkt und wird nie zusammenhängend aufgebaut, sondern über die einzelnen Prozessoren verteilt gespeichert. Die gesamte Iteration ist global definiert und verwendet die Lösung der Teilgebietsprobleme lediglich zur näherungsweisen Korrektur des globalen Defektes. Alle globalen Matrix-Vektor- und Vektor-Operationen liefern dasselbe Ergebnis wie bei einer hypothetischen seriellen Berechnung des Gesamtsystems, was als datenparallele Ausführung bezeichnet wird. Dies bedeutet insbesondere, dass keine künstlichen Bedingungen entlang innerer Gebietsränder gestellt werden müssen, da innere Randpunkte - bezogen auf die virtuelle globale Matrix A - als ganz normale innere Punkte behandelt werden. 20

FDS: Numerische Optimierung und Kooperationen Bild 6: Lokale adaptive Verfeinerung einzelner Bereiche des Gebietes Am Ende der Berechnung steht eine globale Lösung, die entlang innerer Gebietskanten vollkommen konsistent ist, ganz im Gegensatz zu der eher lockeren Zusammensetzung der lokalen Lösungen innerhalb des herkömmlichen FFT-Zugangs bzw. zum neuen FFT-Iterationsschema, das nach Konstruktion nur eine vorgegebene Genauigkeit für die Geschwindigkeitskomponenten entlang innerer Ränder erzielt. 3.4 Entwicklungsstand des ScaRC-Drucklösers Wie bereits angedeutet, handelt es sich bei ScaRC nicht um ein einziges Verfahren, sondern um eine umfangreiche Verfahrensklasse, die neben den genannten Mehrgittertechniken noch weitere bewährte iterative Lösungstechniken beinhaltet. So steht auch ein datenparallelisiertes Konjugierte Gradienten Verfahren (CG) bzw. seine Erweiterung für nicht-symmetrische lineare Systeme, das stabilisierte Bikonjugierte Gradienten Verfahren (BICGstab) zur Verfügung. Details hierzu finden sich beispielsweise unter [17]. Alle nachfolgend präsentierten Testrechnungen basieren auf der Verwendung eines geometrischen Mehrgitterverfahrens mit SSOR-Glättung, siehe [10, 17]. Die geometrische Mehrgittervariante zeichnet sich durch eine besonders hohe numerische Effizienz mit ausgesprochen niedrigen Konvergenzraten aus. Da die gröberen Gitter jeweils durch Verdopplung der Gitterweite des nächst feineren Gitters erzeugt werden, entstehen auf den einzelnen Prozessoren sehr reguläre Datenstrukturen, zu deren Behandlung hoch-optimierte Bibliotheken herangezogen bzw. lokale Prozessor- Features wie beispielsweise der Cache optimal ausgenutzt werden können. Leider kann diese geometrische Konstruktionsweise aber auch eine Einschränkung bzgl. der potentiell verwendbaren Gitterweiten darstellen, da die Zellanzahlen in den einzelnen Raumdimensionen notwendigerweise Zweierpotenzen sein müssen. Dieser Umstand kann jedoch dadurch abgemildert 21

Fassung September 2011 werden, dass man Zellanzahlen verwendet, die zwar keine Zweierpotenz sind, aber zumindest einige Male durch zwei geteilt werden können. Dies reduziert letztlich die Anzahl der resultierenden Gitterlevel. Unter Umständen wird nicht das gröbst mögliche Grobgitter (nämlich die Gebietszerlegung selbst) erreicht, so dass die exakte Lösung des Grobgitterproblems sich aufwändiger gestalten kann. Da die Gitterlevel lediglich zur näherungsweisen Korrektur des Defekts eingesetzt werden, kann aber auch im Fall einer unvollständigen Gitterhierarchie in der Regel eine sehr gute Approximation erreicht werden. Um jedoch völlige Freiheit in der Wahl der möglichen Gitterweiten und Zellanzahlen zu erreichen, arbeiten wir zur Zeit intensiv an der Erweiterung von ScaRC auf die Klasse der algebraischen Mehrgitterverfahren. Zur Erzeugung der gröberen Gitter werden dabei lediglich diejenigen Informationen verwendet die in der Matrix selbst vorhanden sind. Es wird jedoch keine feste Gitterstruktur vorausgesetzt. Im Gegenteil: Zur Erzeugung der gröberen Gitter stehen eine ganze Reihe verschiedenartiger Vergröberungstechniken zur Verfügung, die auf sehr unterschiedliche grobe Gitterstrukturen führen können, vergleiche [8]. Insbesondere kann auf den gröberen Gittern unter Umständen keine zeilenweise Nummerierung der Gitterpunkte mehr vorgenommen werden. Für Single-Mesh-Rechnungen wurde die AMG-Methodik bereits erfolgreich implementiert. Aufgrund der Vielzahl an möglichen Strukturen für die gröberen Gitter, muss für Multi-Mesh-Fälle eine umfassende Erweiterung der bereits vorhandenen Techniken zum Datenaustausch zwischen benachbarten Teilgebieten vorgenommen werden. Gleichzeitig können die resultieren Gitter bzw. Matrizen nicht mehr mit den in FDS vorhandenen Datenstrukturen erfasst werden, da diese speziell auf zeilenweise nummerierte Gitter abgestimmt sind. Daher wurde in jüngster Vergangenheit eine neue Technik zur Speicherung der entstehenden Gitter- und Matrix-Informationen in FDS implementiert. Diese sogenannte kompakte Speichertechnik birgt ein hohes Maß an Variabilität in sich. Ein besonderer Vorteil dieser Technik besteht insbesondere darin, dass sie für die Speicherung adaptiv verfeinerter Gitter sehr gut geeignet ist. Die Arbeiten am parallelen AMG sind zum gegenwärtigen Zeitpunkt bereits weit fortgeschritten. Wir hoffen sehr, damit mittelfristig eine allgemeingültige ScaRC- Version zur Verfügung stellen zu können, die zur nachhaltigen Verbesserung der FDS-Drucklösung beitragen wird. 22

FDS: Numerische Optimierung und Kooperationen Die Ergebnisse erster numerischer Testreihen auf Basis von GMG-Verfahren stimmen sehr hoffnungsvoll: Wie die im Anschluss dargestellten Resultate belegen, wird eine hohe physikalische Genauigkeit und eine deutlich verbesserte Skalierbarkeit im Vergleich zum aktuellem FFT-Drucklöser erzielt. In Absprache mit den Hauptentwicklern wurde daher bereits eine Beta-Version von ScaRC mit speziell angepassten Schnittstellen in das offizielle FDS-Repository integriert. Die Implementierung der zugehörigen Komponenten baut wesentlich auf bereits vorhandenen Datenstrukturen auf, sodass die herkömmliche Eingabelogik, die weltweit einer Vielzahl von Benutzern vertraut ist, erhalten bleibt. In der kommenden FDS Version 6 soll ScaRC dann als optionaler Drucklöser offiziell zur Verfügung stehen. 4 Numerische Testrechnungen Von einem korrekten parallelen Lösungsalgorithmus wird erwartet, dass er unabhängig von der Anzahl der Teilgebiete immer die gleiche oder doch nahezu die gleiche Lösung produziert. Wie bereits erwähnt, kann es vor dem Hintergrund der notwendigen Modifikationen zur Erhöhung der parallelen Effizienz, die sich aus dem Aufbrechen rekursiver Strukturen ergeben, unter Umständen erforderlich sein, leichte Abweichungen zu akzeptieren. Diese müssen jedoch in jedem Fall möglichst klein und kontrollierbar bleiben. Nachfolgend soll am Beispiel zweier Testreihen untersucht werden, inwieweit die betrachteten Drucklöser dieser Anforderung genügen. Zur Vereinfachung der Notation werden dabei folgende Bezeichnungen verwendet: FFT: altes FFT-Verfahren mit rein lokaler Lösung der Teilgebietsprobleme, FFTI, tol=10 -n : neues FFT-Iterationsschema mit lokaler Lösung der Teilgebietsprobleme plus zusätzlichem Grobgitterproblem im Rahmen einer übergreifenden Iteration für eine vorgegebene Genauigkeitstoleranz von 10 -n bezüglich der Geschwindigkeitskomponenten entlang innerer Ränder, ScaRC: neues ScaRC-Verfahren mit Lösung der Teilgebietsprobleme auf einer Gitterhierarchie plus Grobgitterproblem. Bei der Konzeption der Testreihen wurde großen Wert darauf gelegt, die Effekte des Drucklösers so gut wie möglich von den Effekten der anderen Lösungskomponenten zu separieren, um letztlich aussagekräftige Rückschlüsse auf die Qualität des reinen Drucklösers ziehen zu können. 23

Fassung September 2011 Aufgrund sehr komplexer Wechselwirkungen der einzelnen Verfahrensbestandteile ist es in der Regel ausgesprochen schwierig, die Auswirkungen einzelner Komponenten für sich alleine zu betrachten. Im ungünstigsten Fall kann es zu schwer nachvollziehbaren Überlagerungen oder gegenseitigen Auslöschungen von Fehlereinflüssen kommen, die eine objektive Bewertung erschweren. Detaillierte Konzepte für ein umfassendes Verifikationskonzept zur Eignungsprüfung von FDS wurden in Kooperation mit Matthias Münch, INURI GmbH, erarbeitet und sind Grundlage der folgenden Testreihen, siehe [13, 14]. Alle nachfolgend dargestellten Testrechnungen wurden mit einer aktuellen Entwicklerversion, FDS 5.5.3 Revision 8305, durchgeführt und spiegeln somit den gegenwärtigen Entwicklungsstand von FDS wider. Zur Kontrolle wurden die dargestellten Rechnungen auch mit der offiziell verfügbaren Programmversion, FDS 5.5.3 Revision 7031, verglichen. Dabei konnten aber keine nennenswerten qualitativen Unterschiede bezüglich der Drucklösung festgestellt werden. 4.1 Durchströmung eines Kanals in 2D Die folgende Testreihe basiert auf einer einfachen Kanal-Geometrie in 2D. Von der linken Seite findet eine Einströmung mit vorgegebener Geschwindigkeit statt, die rechte Seite des Gebietes ist offen. Um die Skalierbarkeit der betrachteten Drucklöser miteinander zu vergleichen, wurde das Gebiet wie in Bild 7 skizziert in N = 4, 8 und 16 Teilgebiete in vertikaler Richtung unterteilt. Die zugehörige analytische Lösung lautet in diesem Fall Eine detaillierte Beschreibung dieser Testreihe findet sich unter [14]. Im Fall einer linearen Einströmung, ergibt sich für die Druckdifferenz zwischen Ein- und Ausströmrand eine analytische Druckdifferenz von was einen unmittelbaren Vergleich mit den numerisch ermittelten Daten erlaubt. Den Testrechnungen liegen folgende Werte zugrunde: u 0 =1 m s, x=0.8, ρ=1.19882 kg m 3 sowie ein Endzeitpunkt von T=4 s. Die Eingabeparameter 24

FDS: Numerische Optimierung und Kooperationen Bild 7: Durchströmung eines Kanals in 2D mit vorgegebener Einströmung und zugehöriger Gebietszerlegung in vertikale Streifen wurden so gewählt, dass weder Strahlungs- noch Reibungseffekte auftraten und ein konstanter Hintergrunddruck vorlag. Außerdem wurde eine direkte numerische Simulation (DNS) durchgeführt (der FDS-Turbulenzlöser wurde ausgeschaltet, alle potentiell auftretenden turbulenten Längenskalen wurden berechnet). Sehr deutlich wird der ausgesprochen lokale Charakter der herkömmlichen, parallelen FFT-Methodik zunächst am Beispiel einer Geschwindigkeitsdarstellung im 8-Mesh-Fall, vergleiche Bild 8. Während ScaRC die Einström-Information unmittelbar durch das gesamte Gebiet transportiert und damit das tatsächliche physikalische Verhalten reproduziert, wird die Information im FFT-Fall nur stockend übertragen. Bild 8: Stockender Informationstransfer im parallelen FFT- Verfahren für den 8-Mesh-Fall Weiterhin stellen die Bildersequenzen 9, 10 und 11 für alle betrachteten Teilgebietszahlen die jeweils numerisch ermittelten Druckdifferenzen der analytischen Druckdifferenz gegenüber. 25

Fassung September 2011 Ganz offensichtlich sind alle verschiedenen Drucklöser im Single-Mesh-Fall dazu in der Lage, die analytische Druckdifferenz exakt zu reproduzieren (gerade Linie), was für die Korrektheit des Single-Mesh-Zugangs spricht. Betrachtet man jedoch das Standard-FFT-Verfahren in Bild 9, so zeigen sich deutliche Abweichungen für die Multi-Mesh-Fälle, die sich umso stärker bemerkbar machen, je mehr Teilgebiete verwendet werden. Das lokale Vorgehen ist offensichtlich nicht in der Lage, den globalen Druckverlauf adäquat zu erfassen. Auch im Fall des FFT-Iterationsschemas kann für keine der betrachteten Toleranzen eine völlige Übereinstimmung erreicht werden, siehe Bild 10. Während die Fälle tol = 10-1 und 10-2 keinen qualitativ nennenswerten Unterschied zum Standard-FFT-Verfahren bewirken, zeigen die Fälle tol = 10-3 und insbesondere 10-4 tatsächlich Verbesserungen, die jedoch nur von kurzer Dauer sind. Auch der anfänglich gute Verlauf im Fall tol = 10-4 wird zunehmend oszillativ und schaukelt sich mit fortschreitender Berechnungsdauer auf. Die Anzahl der benötigten Iterationen des FFT-Iterationsschemas zum Erreichen der Geschwindigkeitstoleranz von 10-4 schwankt dabei ganz erheblich zwischen 7 und 577 Iterationen! Damit einher geht eine Vervierfachung der Rechenzeit im Vergleich zum herkömmlichen parallelen FFT-Verfahren. Trotzdem ist kein befriedigendes Konvergenzverhalten erkennbar. Dagegen reproduziert ScaRC die analytisch ermittelte Druckdifferenz gleichermaßen für alle betrachteten Multi-Mesh-Fälle ohne jegliche Abweichungen, vergleiche Bild 11. Dieses Resultat ist außerdem unabhängig von der Art der betrachteten Gebietszerlegung. Zum Vergleich wurden entsprechende Tests auch für Gebietszerlegungen mit bis zu 64 Teilgebieten nur in horizontaler Richtung sowie in vertikaler und horizontaler Richtung durchgeführt. Auch für diese Fälle konnte eine völlige Übereinstimmung erzielt werden. Insgesamt illustriert dieses Testbeispiel sehr eindrucksvoll die Vorteile eines Verfahrens, dessen numerische Konzeption den Eigenheiten des zugrunde liegenden Problems angepasst ist. 26

FDS: Numerische Optimierung und Kooperationen Bild 10: Vergleich der Single- und Multi-Mesh- Druckdifferenzen mit der analytischen Druckdifferenz für das FFT- Iterationsschema mit unterschiedlichen Toleranzen für die Geschwindigkeitskomponenten Bild 9: Vergleich der Single- und Multi-Mesh- Druckdifferenzen mit der analytischen Druckdifferenz für das herkömmliche FFT Verfahren Bild 11: Vergleich der Single- und Multi-Mesh- Druckdifferenzen mit der analytischen Druckdifferenz für das ScaRC- Verfahren 27

Fassung September 2011 4.2 Dreifach-Einströmung in ein kubisches Gebiet in 3D Der nachfolgende Testfall behandelt ein einfaches würfelförmiges Gebiet in 3D, in das von drei Seiten eine Einströmung mit einer konstanten Geschwindigkeit von 2 m/s stattfindet. Bild 12 zeigt die zugrunde liegende Geometrie und eine Geschwindigkeits-Ansicht im Single-Mesh-Fall. Bild 12: Kubisches Gebiet in 3D mit Einströmung von drei Seiten Um einen Eindruck zu erhalten, wie gut sich die betrachteten Drucklöser auf große Teilgebietszahlen skalieren lassen, wurde das Gebiet in 64, 128 und 512 Teilgebiete unterteilt, vergleiche Bild 13. Die Verwendung hunderter von Teilgebieten ein erklärtes Ziel der Hauptentwickler [2] ist in der gegenwärtigen Anwendungspraxis von FDS noch unüblich und stellt quasi einen Härtetest dar. Bild 13: Massiv parallele Gebietszerlegungen für ein würfelförmiges 3D-Gebiet Da für diesen Fall keine analytische Lösung vorliegt, müssen sich die Multi- Mesh-Resultate aller betrachteten Drucklöser nachfolgend mit dem zugehörigen Single-Mesh-Resultat messen. In der Bildersequenz 14, 15 und 16 stellt der Ver- 28

FDS: Numerische Optimierung und Kooperationen Bild 14: Vergleich der Multi-Mesh- Druckverläufe für das herkömmliche FFT-Verfahren Bild 15: Vergleich der Multi-Mesh- Druckverläufe für das FFT- Iterationsschema mit unterschiedlichen Toleranzen für die Geschwindigkeitskomponenten Bild 16: Vergleich der Single- und Multi-Mesh- Druckverläufe für das ScaRC- Verfahren 29

Fassung September 2011 lauf des numerisch berechneten Single-Mesh-Drucks im Mittelpunkt des Gebiets eine Referenzkurve dar, mit der die Verläufe aller Multi-Mesh-Rechnungen verglichen werden. Wie aus Bild 14 hervorgeht, zeigt das herkömmliche FFT-Verfahren bereits im 64-Mesh-Fall keine Übereinstimmung mehr mit dem 1-Mesh-Fall. Noch ausgeprägter sind die Unterschiede für 128 bzw. 512 Teilgebiete, da das rein lokale Vorgehen der hohen Anzahl an Teilgebieten nicht gerecht wird. Offenbar werden die Druckverläufe der Multi-Mesh-Fälle grundsätzlich eher unterschätzt. Im Fall des FFT-Iterationsschemas in Bild 15 wird für die Toleranz 10-1 noch kein nennenswerter Unterschied zum herkömmlichen FFT-Verfahren erreicht. Dagegen führt der Fall 10-2 tatsächlich zu einer verbesserten Konsistenz zwischen dem Single-Mesh und den Multi-Mesh-Verläufen. Für Toleranzen kleiner als 10-3 ist erstaunlicherweise jedoch wieder eine deutliche Verschlechterung erkennbar. Insgesamt neigt das FFT-Iterationsschema offenbar dazu, die Verläufe zu überschätzen. Die besten Resultate können auch hier wieder mit Hilfe des ScaRC-Verfahrens erreicht werden. In Bild 16 ist eine hohe Übereinstimmung aller betrachteten Multi-Mesh-Verläufe mit dem Single-Mesh-Verlauf erkennbar. Mit fortschreitender Berechnungsdauer wird jedoch offensichtlich, dass auch für ScaRC zurzeit noch keine vollständige Konsistenz vorliegt. Je nach Problemkonstellation können über die Gesamtrechenzeit hinweg immer noch mehr oder weniger starke Abweichungen entstehen. Dies haben weitere Testrechnungen mit unterschiedlichen Eingabeparametern belegt. Auf diesen Sachverhalt werden wir an späterer Stelle noch einmal zurückkommen. Im Vergleich zum vorangehenden Testfall zur Durchströmung eines pipeförmigen Kanals bringt das sonderbare Verhalten des FFT-Iterationsschemas leider einige Verwirrung mit sich: Während für die Kanaldurchströmung eine Toleranz von 10-2 offensichtlich noch keine hinreichende Verbesserung bewirkt hat und erst für 10-4 eine deutliche Annäherung zu erkennen war, ist das Verhalten hier genau umgekehrt. Diese Unsicherheit lässt es sehr schwierig erscheinen, vorweg einen geeigneten Toleranzwert für eine gegebene Rechnung festzulegen. Ein näherer Blick auf das Konvergenzverhalten des FFT-Iterationsschemas bringt hier etwas mehr Klarheit: Im Fall von 128 Teilgebieten mit einer vorgegebenen Toleranz von 10-3 für die Geschwindigkeitskomponenten stellt Bild 17 die tatsächlich pro FDS-Zeititeration erreichte Fehlertoleranz der dazu benötigten 30

FDS: Numerische Optimierung und Kooperationen Anzahl von FFT-Iterationen gegenüber. Es geht deutlich hervor, dass die angestrebte Toleranz nur in weniger als der Hälfte aller Zeititerationen tatsächlich erreicht wird! Mit zunehmendem Rechnungsverlauf wird immer häufiger die Maximalanzahl von 100 FFT-Iterationen durchgeführt. Dennoch wird gerade in diesen Fällen in der Regel nur eine Genauigkeit von durchschnittlich 5 10-2 für die inneren Geschwindigkeitskomponenten erreicht. Bild 17: Gegenüberstellung der erzielten Genauigkeit für die Geschwindigkeitskomponenten mit der dazu benötigten Anzahl an FFT-Iterationen pro FDS- Zeititeration Die Maximalanzahl möglicher FFT-Iterationen wurde für alle hier gezeigten Rechnungen auf 100 gesetzt. Obwohl die entsprechende Standard-Einstellung, MAX_PRESSURE_ITERATIONS im &PRES-Block, aktuell bei 10.000 liegt, hat es sich im Verlauf vieler Testreihen heraus gestellt, dass ein derart hoher Wert keinerlei Verbesserung mit sich bringt, sondern nur zu einem drastischen Anstieg der Rechenzeit führt. Optimale Einstellungen für die Maximalanzahl der FFT- Iterationen hängen letztlich von der Gitterweite ab und sind ebenfalls a-priori nur schwer bestimmbar. 31