Please use this identifier to cite or link to this item: http://dx.doi.org/10.18419/opus-6465
Authors: Kauker, Daniel
Title: Distributed computing and transparency rendering for large displays
Other Titles: Verteilte Berechnungen und Transparenzrendering für große Displays
Issue Date: 2015
metadata.ubs.publikation.typ: Dissertation
URI: http://nbn-resolving.de/urn:nbn:de:bsz:93-opus-102292
http://elib.uni-stuttgart.de/handle/11682/6482
http://dx.doi.org/10.18419/opus-6465
Abstract: Today’s computational problems are getting bigger and the performance required to solve them increases steadily. Furthermore, the results are getting more detailed, so that methods for rendering, visualization, and interaction methods need to adapt. While the computational power of a single chip also increases steadily, the most performance is gained by parallelization of the algorithms. Although Graphics Processing Units are built and specialized for the task of graphics rendering, their programmability makes them also suitable for general purpose computations. Thus, a typical workstation computer offers at least two processing units, the Central Processing Unit and the Graphics Processing Unit. Using multiple processing units for a task is commonly referred to as "distributed computing". One of the biggest challenges when using such heterogeneous and distributed systems is the variety of software and ways to use them for an optimal result. The first section of the thesis focuses on an abstraction layer to simplify software development on heterogeneous computing systems. The presented framework aims to encapsulate the vendor-specific details and the hardware architecture, giving the programmer a task-oriented interface which is easy to use, to extend, and to maintain. Having the results computed in a distributed environment, the interactive visualization becomes another challenge, especially when semi-transparent parts are involved, as the rendering order has to be taken into account. Additionally, the distributed rendering nodes do not know the details about their surroundings like the existence or complexity of objects in front. Typically, the large scale computations are distributed in object space so that one node works exclusively on one part of the scene. As it is too costly to collect all computation results on a single node for rendering, those nodes also have to do the rendering work to achieve interactive framerates. The resulting parts of the visualization are then sent to specialized display nodes. These display nodes are responsible for compositing the final image, e.g. combining data from multiple sources, and show them on display devices. In this context, rendering transparency effects with objects that might intersect each other within a distributed environment is challenging. This thesis will present an approach for rendering object-space decomposed scenes with semi-transparent parts using "Per-Pixel Linked Lists". Presenting these visualizations on large display walls or on a remote (mobile) device raises the final challenge discussed in this thesis. As the scenes can be either complex or very detailed and thus large in terms of memory, a single system is not always capable of handling all data for a scene. Typically, display walls that can handle such amounts of data consist of multiple displays or projectors, driven by a number of display nodes, and often have a separate node where an operator controls which part of the scene is displayed. I will describe interaction methods where the user can directly control the visualization on a large display wall using mobile devices without an operator. The last part of the thesis presents interaction concepts using mobile devices for large displays, allowing the users to control the visualization with a smartphone or tablet. Depending on the data and visualization method, the mobile device can either visualize the data directly or in a reduced form, or uses streaming mechanisms so that the user has the same visual impression as a user in front of the display wall. With the mobile application, the user can directly influence any parameter of the visualization and can thus actively steer an interactive presentation. In this thesis, I will present approaches for employing heterogeneous computing environments, from a single PC to networked clusters, how to use order-independent transparency rendering for local and distributed visualization, as well as interaction methods for large display walls and remote visualization devices. The approaches for heterogeneous computing environments make the development easier, especially in terms of support of different hardware platforms. The presented distributed rendering approach enables accurate transparency renderings with far less memory transfer than existing algorithms. For the interaction methods, the usage of ubiquitous mobile devices brings the described approaches to all types of display devices without the need for special hardware. Additionally, a concept for an integrated system containing the contributions of the thesis is proposed. It uses the abstraction layer as a middle ware for the computation and visualization operations in the distributed rendering environments. The user controls the application using the methods for mobile device interactions.
Berechnungs- und Simulationsprobleme werden immer komplizierter, Algorithmen zur Lösung immer komplexer und es ist immer mehr Performance nötig, um die Probleme zeitnah zu lösen. Zugleich werden die Resultate dieser Berechnungen detaillierter, so dass auch die Methoden zum Rendern, zur Visualisierung und zur Interaktion angepasst werden müssen. Zwar steigt die Berechnungsgeschwindigkeit der einzelnen Chips stetig, der größte Performancegewinn ist heutzutage allerdings durch Parallelisierung von Algorithmen zu erreichen. Obwohl Grafikkarten auf grafisches Rendern ausgelegt sind, lassen sie sich aufgrund ihrer Programmierbarkeit gut für bestimmte Arten von generellen Berechnungsproblemen nutzen. Daher bieten heutige Workstations mindestens zwei Berechnungseinheiten, den Hauptprozessor und die Grafikkarte, und bilden damit ein "verteiltes", heterogenes System. Eine der größten Herausforderungen bezüglich solcher Systeme ist die Vielfalt an Software und die unzähligen Wege sie einzusetzen, um das optimale Ergebnis zu erzielen. Der erste Teil dieser Dissertation beschreibt eine Abstraktionsschicht, die die Entwicklung von Software für heterogene Systeme erleichtern soll. Das Framework kapselt die herstellerspezifischen Programmierschnittstellen, -details und die Hardware-Architektur und stellt dem Programmierer ein aufgabenorientiertes Interface bereit, das einfach zu verwenden, zu erweitern, und zu warten ist. Wenn die Berechnungen des verteilten Systems abgeschlossen sind, ist die interaktive Visualisierung der Daten eine weitere Herausforderung - insbesondere, wenn semi-transparente Objekte enthalten sind. Typischerweise werden große, verteilte Berechnungen im Objektraum unterteilt, so dass jeder der teilnehmenden Knoten an einem Teil der gesamten Szene arbeitet. Es ist zu aufwändig, die Ergebnisse von allen Knoten einzusammeln, um sie durch einen einzelnen Renderknoten darstellen zu lassen. Daher müssen schon die Berechnungsknoten die Visualisierungsarbeit übernehmen, um (semi-)interaktive Darstellungen zu erhalten. Die Visualisierungsresultate werden dann zu spezialisierten Anzeigeknoten geschickt. Diese setzen die Szene zusammen und zeigen sie an. Der zweite Teil dieser Dissertation beschreibt Verfahren, um verteilt gerenderte Objekte, die teilweise transparent sind und sich auch überschneiden können, ohne visuelle Artefakte zu rendern. Dazu werden sogenannte "Per-Pixel Linked Lists" eingesetzt. Der dritte Teil behandelt, wie die so gewonnene Visualisierung auf einem großen Display oder einem anderen (mobilen) Gerät präsentiert werden kann. Die Szenen können sehr groß und komplex sein, benötigen also viel Speicherplatz, den ein einzelnes Visualisierungssystem nicht immer zur Verfügung stellen kann. Große Displaywände, die mit solchen Datenmengen umgehen können, bestehen aus mehreren Monitoren oder Projektoren, die von mehreren Anzeigeknoten betrieben werden. Zudem gibt es meist spezielle Operatorrechner, mit denen die Visualisierung auf diesen Displaywänden gesteuert wird. Es werden Interaktionskonzepte vorgestellt, wie der Benutzer die Visualisierung auf einem großen Display nur unter Zuhilfenahme von mobilen Geräten kontrollieren kann und somit nicht den Umweg über einen Operatorrechner gehen muss. Dazu müssen die Visualisierungen auf dem mobilen Gerät auch angezeigt werden. Je nachdem, welche Daten gerendert bzw. welche Darstellung genutzt wird, können die Daten auf dem mobilen Gerät entweder direkt, in reduzierter Form oder mittels Streaming-Technologien mit der gleichen grafischen Qualität wie auf dem großen Display angezeigt werden. In dieser Dissertation werden Methoden vorgestellt, wie heterogene Computerumgebungen, sei es ein einzelner PC oder ein ganzer Cluster, mit wenig Aufwand programmiert werden können; wie tiefenunabhängiges Transparenzrendering mit weniger Speichertransfers als bisher zur lokalen und verteilten Visualisierung genutzt werden kann; und wie mittels mobiler Geräte mit Displays interagiert werden kann, ohne dass spezielle Hardware nötig ist. Die Methoden zur Programmierung heterogener Systeme vereinfachen die Entwicklung und Wartung insbesondere im Hinblick auf die Unterstützung verschiedener Hardwareplattformen. Die vorgestellten Algorithmen zum Transparenzrendering liefern akkurate Darstellungen und benötigen weniger Grafikspeicher als bisherige Ansätze. Die Konzepte zur Interaktion mittels mobiler Geräte beschreiben, wie diese allgegenwärtigen Alltagsgegenstände mit jeder Art von Display benutzt werden können, ohne dass hierfür besondere Hardware benötigt wird. Als Abschluss werden diese einzelnen Themen zu einem Gesamtkonzept vereint. Die Abstraktionsschicht bildet das Framework der Programme zur Berechnung und Visualisierung. Die so gewonnenen Daten werden mittels des verteilten Renderingansatzes visualisiert und die mobilen Geräte zur Benutzerinteraktion eingesetzt.
Appears in Collections:13 Zentrale Universitätseinrichtungen

Files in This Item:
File Description SizeFormat 
dissertation_ebook.pdf7,67 MBAdobe PDFView/Open


Items in OPUS are protected by copyright, with all rights reserved, unless otherwise indicated.