Das Jahr 2020 war für viele unerwartet und voller Herausforderungen. Eine meiner Herausforderungen war die Entwicklung von SplashTool. Zum Ende des Jahres stehen an mehreren Projekten getestete Varianten der Software für CPU und GPU zur Verfügung, mitsamt einer Dokumentation, Beispiellayouts und weiteren Ressourcen. Ich freue mich, selbst etwas Neues geschaffen zu haben, bin mir jedoch… Rückblick und Ausblick 2020 weiterlesen
Blog
SplashTool_GPU Optimierungen
Modellanpassungen Seit ca. einem Monat arbeite ich an SplashTool_GPU. Aufgrund des modularen Setups der Konfigurationsdatei, des Managers und des Models, kann ein Großteil des Codes unverändert bleiben, dennoch mussten im Model noch zahlreiche Änderungen vorgenommen werden. Insbesondere werden maskierte arrays von CuPy nicht unterstützt, sodass der Iterationsalgorithmus so umgeschrieben werden musste, sodass die Software auch… SplashTool_GPU Optimierungen weiterlesen
SplashTool_GPU
Die Geschwindigkeitsoptimierungen der CPU-basierten Variante mit reinem numpy sind mittlerweile weitgehend ausgereizt. Einzelne Optimierungen wären noch mit numba möglich, jedoch sind auch hier aufgrund der Beschränkungen der Hardware Grenzen gesetzt. Die Mathematikbibliotheken von numpy sind bereits stark optimiert, sodass der aktuelle Flaschenhals das Lesen und Schreiben der Daten aus dem Arbeitsspeicher ist. Moderne Grafikkarten verfügen… SplashTool_GPU weiterlesen
Intergeo
Ich freue mich sehr, nächste Woche bei der Intergeo 2020 im Block zum Thema „immer mehr Starkregen“ gemeinsam mit dem Umweltamt der Stadt Frankfurt am Main einen Vortrag zur Erstellung der Starkregengefahrenkarten zu halten! Die Berechnungen erfolgten bei Dahlem Beratende Ingenieure mit GeoCPM von Tandler, die vorbereitenden Arbeiten, sowie die nachgehenden Analysen und Kartendarstellungen mit… Intergeo weiterlesen
QGIS Symbolisierungen
Der Projektordner enthält jetzt exemplarische Symbolisierungen für die Darstellung der Ergebnisraster in QGIS. Die relevanten Schwellwerte sollten für das Betrachtungsgebiet angepasst werden, insbesondere die Abflussakkumulation.
SplashTool restart
Die Ausgabe von Dateien enthält jetzt eine kleine Logdatei mit wesentlichen Informationen zur Wasserbilanz. Der Clou bei der Sache: Die Datei kann als „restart“-Datei genutzt werden. Bei dieser Option verwendet die Iteration den Zustand der letzten Logdatei im Ausgabeordner, um die Iteration zu konfigurieren und macht mit diesem Zustand weiter!
Wir brauchen eine Dokumentation
SplashTool wird mittlerweile innerhalb von Dahlem regelmäßig genutzt. Darüber hinaus kommt es in Kaiserslautern als Werkzeug für eine flächendeckende Analyse zum Einsatz. Bisher haben die Kommentare im Quelltext, sowie kurze unsortierte Erläuterungen zum Algorithmus für die Dokumentation der Funktionalität ausgereicht. Dies reicht mittlerweile nicht mehr aus, da sowohl die zugrunde liegende Methodik, als auch die… Wir brauchen eine Dokumentation weiterlesen
Multithreading Part 2
Im bisherigen Entwurf zu Multithreading werden die zu berechnenden Kacheln jedes Mal neu erstellt und die Ergebnisse in den Hauptarray zurückgespielt. Dies erzeugt zusätzliche Lese- und Schreibvorgänge und verlangsamt somit die Iteration. Im nächsten Schritt werden daher die Kacheln permanent gemacht. Alle Rechengrößen werden in den Kacheln gepeichert und die Kacheln parallel berechnet. Nach Berechnung… Multithreading Part 2 weiterlesen
SplashTool in Kaiserslautern
Die Stadtentwässerung Kaiserslautern hat sich dazu entschieden, im aktuell bei Dahlem durchgeführten Projekt zur Starkregengefährdung SplashTool als primäres Analysewerkzeug einzusetzen! Nach zahlreichen Tests mit frei verfügbaren Daten, sowie einigen Einsätzen als unterstützendes Werkzeug zum Prescreening bei hydrodynamischen Analysen, freue ich mich sehr, dass SplashTool erstmalig als primäres Werkzeug für eine Grobanalyse eingesetzt wird. Die betrachtete… SplashTool in Kaiserslautern weiterlesen
Visualisierung des Iterationsverlaufs
Der Iterationsverlauf hat keine physikalisch korrekte zeitliche Komponente. Dennoch kann die Visualisierung des Iterationsverlaufes vom Anfang bis zu einem annähernd stationären Zustand hilfreich für das Systemverständnis der Iteration sein. Hierzu gibt es die Option „create frequent output“. Warnung: Es werden sehr viele TIF-Dateien geschrieben und man benötigt sehr viel Speicherplatz! Mit häufig geschriebenen Ausgabedateien lässt… Visualisierung des Iterationsverlaufs weiterlesen