13 Zentrale Universitätseinrichtungen

Permanent URI for this collectionhttps://elib.uni-stuttgart.de/handle/11682/14

Browse

Search Results

Now showing 1 - 2 of 2
  • Thumbnail Image
    ItemOpen Access
    Eine objekt-orientierte Datenverwaltung für eine verteilte Visualisierungsumgebung
    (2001) Wierse, Andreas; Rühle, Roland (Prof. Dr.-Ing.)
    Visualisierungssysteme die mit den großen Datenmengen arbeiten, die heute bei numerischen Simulationen anfallen, müssen mit diesen Daten effizient umgehen können. In dieser Arbeit werden die Anforderungen untersucht, die an die Datenverwaltung eines solchen Visualisierungssystems gestellt werden, das für die Darstellung der Ergebnisse komplexer numerischer Berechnungen nötig ist. Dazu werden diese Anforderungen anhand eines heute in der Industrie üblichen Falles skizziert und auf ihre Auswirkungen bei der Visualisierung hin beleuchtet. Anschließend werden die Systemarchitektur des Visualisierungssystems COVISE sowie die es direkt beeinflussenden Systeme kurz vorgestellt. COVISE dient als Prototyp, innerhalb dessen die meisten der in dieser Arbeit vorgestellten Konzepte realisiert sind. Anschließend werden einige verbreitete Visualisierungssysteme anhand der anfangs festgestellten Anforderungen auf ihre Datenverwaltung hin analysiert und dem in COVISE realisierten Konzept gegenübergestellt. Im darauffolgenden Kapitel werden diese Konzepte ausführlich vorgestellt. Die verteilte Datenverwaltung steht dabei im Mittelpunkt: es wird beschrieben, wie der Datenaustausch zwischen den Modulen realisiert ist, sowohl im lokalen Fall, als auch im Fall einer verteilten Anwendung. Die Vorteile dieses Ansatzes und die nötigen Mechanismen um einen eindeutigen Datenzugriff in einem verteilten System sicherstellen zu können werden dargelegt. Den Datenobjekten kommt in diesem Zusammenhang eine Schlüsselrolle zu. Die für die Handhabung der Berechnungs- und Geometriedaten wichtigen Strukturen werden entwickelt und die passenden Hierarchien dargestellt. Im Hinblick auf die Nutzung dieser Datenobjekte durch die Module werden die Handhabung der Datenobjekte und die Zugriffsmechanismen beschrieben. Dabei werden auch die Möglichkeiten diskutiert, Datenobjekte persistent zu gestalten oder zu partitionieren.
  • Thumbnail Image
    ItemOpen Access
    Ein Modell zur effizienten Parallelisierung von Algorithmen auf komplexen, dynamischen Datenstrukturen
    (1998) Birken, Klaus; Rühle, Roland (Prof. Dr.)
    Moderne berechnungsintensive Algorithmen, beispielsweise adaptive numerische Lösungsverfahren für partielle Differentialgleichungen, arbeiten oftmals auf komplexen, dynamischen Datenstrukturen. Die Implementierung solcher Algorithmen auf Parallelrechnern mit verteiltem Speicher mittels Datenpartitionierung wirft zahlreiche Probleme auf (z.B. Lastverteilung). Im Rahmen der vorliegenden Arbeit wurde das neue parallele Programmiermodell Dynamic Distributed Data (DDD) entwickelt, durch das die Parallelisierungsarbeit vom Design der verteilten Datenstrukturen bis hin zur Erstellung des portablen, parallelen und effizienten Programmcodes unterstützt wird. Dem DDD-Konzept liegt ein graphbasiertes formales Modell zugrunde. Dabei wird die Datenstruktur des jeweiligen Programms (z.B. unstrukturierte Gitter) formal auf einen verteilten Graphen abgebildet, der aus mehreren lokalen Graphen besteht. Das formale Modell dient als Spezifikation des Programmiermodells und gleichzeitig zur Definition der wichtigen in dieser Arbeit verwendeten Begriffe. Der Systemarchitektur von DDD-basierten Anwendungen liegt ein Schichtenmodell zugrunde, den Kern stellt dabei die DDD-Programmbibliothek dar. Diese bietet Funktionen zur dynamischen Definition verteilter Datentypen und zur Verwaltung lokaler Objekte. In den Überlappungsbereichen der lokalen Graphen stehen abstrakte Kommunikationsfunktionen in Form von sog. Interfaces zur Verfügung. Die wesentliche Neuerung gegenüber nahezu allen bestehenden Arbeiten ist jedoch die Möglichkeit zur dynamischen Veränderung des verteilten Graphen; dies ermöglicht es beispielsweise, dynamische Lastverteilung oder Gittergenerierungsverfahren einfach und effizient zu implementieren. Damit können beliebig komplexe Datentopologien dynamisch erzeugt, migriert und wieder entfernt werden.