Bostanci, Manuel (2021) Laufzeitoptimierung von FAME-IO: Gesamtlaufzeit in Abhängigkeit der Agentenanzahl und Simulationsgranularität. Bachelor's, Hochschule München University of Applied Sciences.
|
PDF
1MB |
Abstract
Das Ziel der vorliegenden Arbeit ist die Optimierung der Laufzeit von FAME-IO, einer Komponente des agentenbasierten Simulationsframeworks FAME. Die Laufzeit von FAME-IO hängt direkt von der Anzahl der zu verarbeitenden Parameter Agenten und deren Zeitreiheneinträgen ab. Daher wird die folgende Forschungsfrage untersucht: In wie weit kann die Laufzeit von FAME-IO in Abhängigkeit der Anzahl an Agenten und Zeitreiheneinträgen reduziert werden. Darüber hinaus wird die Frage, welche Auswirkungen die angewendeten Optimierungen auf den Arbeitsspeicherbedarf haben, beantwortet. Zur Beantwortung der Forschungsfragen wurde der Ausgangszustand des Programms analysiert und anhand eines Profilings die Programmteile identifiziert, die den größten Anteil an der Gesamtlaufzeit haben. Zudem wurde der Bedarf an Arbeitsspeicher mit einem Memory Profiler ermittelt. Die Analyse des Ausgangszustandes zeigte, dass die Umwandlung der Zeitreiheneinträge einen Großteil der Gesamtlaufzeit einnimmt. Zur Verbesserung dieses Programmteils wurde neben einer effizienteren Implementierung der Verarbeitung der Zeitreiheneinträge auch ein Mechanismus zu deren parallelen Verarbeitung angewendet. Durch die angewendeten Methoden konnte die Gesamtlaufzeit der Verarbeitung des umfangreichsten Simulationsszenarios von 232 Sekunden auf 133 Sekunden reduziert und somit nahezu halbiert werden. Die Auswirkung der parallelen Verarbeitung auf mehreren Prozessen auf den Arbeitsspeicher ist dabei abhängig von der verwendeten Methode zum Initialisieren neuer Prozesse. Werden acht Prozesse gestartet, benötigen diese bei Verwendung der "Fork" Methode gemeinsam etwa 35 GiB, bei Verwendung der "Spawn" Methode hingegen gemeinsam nur acht GiB an Arbeitsspeicher. Eine weiterfuhrende Untersuchung könnte auf die Erhöhung des parallelisierbaren Anteils des Programmcodes ausgerichtet sein, oder auch schnellere Alternativen zu eingebundenen fremden Programmbibliotheken ermitteln, z. B. zum Einlesen von Datein im YAML Format.
| Item URL in elib: | https://elib.dlr.de/147482/ | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Document Type: | Thesis (Bachelor's) | ||||||||
| Title: | Laufzeitoptimierung von FAME-IO: Gesamtlaufzeit in Abhängigkeit der Agentenanzahl und Simulationsgranularität | ||||||||
| Authors: |
| ||||||||
| Date: | 29 November 2021 | ||||||||
| Refereed publication: | No | ||||||||
| Open Access: | Yes | ||||||||
| Number of Pages: | 43 | ||||||||
| Status: | Published | ||||||||
| Keywords: | parallelisation, python | ||||||||
| Institution: | Hochschule München University of Applied Sciences | ||||||||
| Department: | Fakultät für Informatik und Mathematik | ||||||||
| HGF - Research field: | Energy | ||||||||
| HGF - Program: | Energy System Design | ||||||||
| HGF - Program Themes: | Energy System Transformation | ||||||||
| DLR - Research area: | Energy | ||||||||
| DLR - Program: | E SY - Energy System Technology and Analysis | ||||||||
| DLR - Research theme (Project): | E - Systems Analysis and Technology Assessment | ||||||||
| Location: | Stuttgart | ||||||||
| Institutes and Institutions: | Institute of Networked Energy Systems > Energy Systems Analysis, ST | ||||||||
| Deposited By: | Schimeczek, Dr. Christoph | ||||||||
| Deposited On: | 15 Dec 2021 17:55 | ||||||||
| Last Modified: | 15 Dec 2021 17:55 |
Repository Staff Only: item control page