Vor allem bei der Betrachtung großer und komplexer Szenarien ist eine Kombination der Vorteile der sequentiellen und parallelen Simulationswelten wünschenswert. Derartige Szenarien lassen sich meist nur bei einer adäquaten, strukturäquivalenten Modellierung, wie in der sequentiellen Simulationswelt üblich, beherrschen. Es sind aber auch gleichzeitig genau diese Simulationsszenarien, die auch am ehesten nach einer Beschleunigung der Simulationsausführung, z.B. durch eine Parallelisierung, verlangen. Die vorliegende Arbeit beschreibt die Konzeption und Implementation einer optimistisch-parallelen Simulationsbibliothek in Java. Diese vereint die Vorzüge optimistisch-paralleler Simulation (automatische Ausnutzung modellinhärenter Parallelität zur Simulationsbeschleunigung) mit der des prozessorientierten Paradigmas (modellabhängig strukturäquivalente und intuitive Modellbeschreibungen). Eine Implementation des prozessorientierten Paradigmas in einer parallelen Simulation ist allerdings nicht unproblematisch. Dies gilt vor allem im Spezialfall der optimistisch-parallelen Simulation, die sich dadurch auszeichnet, dass Simulationsmodelle während eines Simulationslaufes in ungültige Zustände geraten können, was jeweils durch eine Rückkehr des Simulationsmodells in einen früheren, korrekten Zustand korrigiert wird. Ein weiteres Entwicklungsziel besteht darin, im Gegensatz zu den meisten existierenden PDES-Implementationen die interne Arbeitsweise des optimistisch-parallelen Simulationskerns so gut wie möglich zu verbergen. Stattdessen gleichen die vom Simulationskern angebotenen Schnittstellen weitestgehend denen von sequentiellen Simulationskernen. Dadurch wird die Erstellung eines passenden Simulationsmodells im Vergleich zu anderen parallelen Simulationsimplementationen deutlich erleichtert. Auch der Mehraufwand gegenüber der Erstellung von Simulationsmodellen für rein sequentielle Simulationskerne ist relativ gering. / A combination of the advantages of the sequential, as well as the parallel simulation approach is desirable, especially in the case of large and complex simulation scenarios. These are only manageable if a corresponding structurally equivalent simulation model is employed. Also, the very same models will profit most from a speed-up by parallelization. Unfortunately, the implementation of a process-oriented view in a parallel fashion is not a trivial task. Parallel simulation implementations generally suffer from additional computational cost that can offset the parallel speed-up and even lead to a diminished parallel performance, which is even more likely to happen when using process-oriented simulation models. This is especially the case in optimistic-parallel simulations. These are characterized by the ability of the model to get into invalid states which is costly being corrected at runtime by returning the model to valid former states preliminarily saved. The aim of this thesis is the design and implementation of a simulation library in Java. It combines the advantages of optimistic-parallel simulation (i.e. use of parallelism for speed-up) and the process-oriented modeling (creation of an intuitive and structurally equivalent model). Another central objective of the development is to hide the internals of the optimistic-parallel simulation kernel from the modeler, in contrast to most existing PDES implementations. Instead, the implementation is encapsulated by interfaces, which resemble those of sequential simulation kernels, reducing the additional effort needed to create a suited model. A noteworthy aspect of the implementation is the reuse of a web application framework for retroactive modification of the Java bytecode, generated by the Java compiler. This bytecode rewriting solves in an elegant way the task of realizing coroutines, which are the base for the implementation of processes as needed by process-oriented simulation models.
Identifer | oai:union.ndltd.org:HUMBOLT/oai:edoc.hu-berlin.de:18452/16914 |
Date | 20 January 2011 |
Creators | Kunert, Andreas |
Contributors | Fischer, Joachim, Page, Bernd, Bothe, Klaus |
Publisher | Humboldt-Universität zu Berlin, Mathematisch-Naturwissenschaftliche Fakultät II |
Source Sets | Humboldt University of Berlin |
Language | German |
Detected Language | English |
Type | doctoralThesis, doc-type:doctoralThesis |
Format | application/pdf |
Rights | Namensnennung - Keine Bearbeitung, http://creativecommons.org/licenses/by-nd/3.0/de/ |
Page generated in 0.0016 seconds