Logo Logo
Hilfe
Kontakt
Switch language to English
Modeling concurrent data rendering and uploading for graphics hardware
Modeling concurrent data rendering and uploading for graphics hardware
Graphics rendering hardware often contains specialized components to maximize utilization of its Graphical Processing Unit (GPU). Examples are dedicated memory and copy engines to directly access the graphics memory without blocking GPU processing. Considering that graphics memory is always limited, while the size of datasets produced today is ever increasing, optimized methods for fast data exchange between host memory and graphics memory are needed for real-time visualization. Understanding the complex relations involved in concurrently rendering and uploading requires sophisticated models describing the hardware and the respective data flow. Input for such models includes the size and structure of the dataset under consideration, the number of parallel threads for processing it, and modular and exchangeable functions performing the data transfers as well as parameters for optimal data access. The models include additional system parameters, such as the concrete hardware used and the various settable clock rates. In this work we describe a methodical approach to derive such models in a systematic fashion. The results are two Models for Asynchronous Rendering and K-time Uploading (MARKU), one for rendering and one for uploading. Our methodical approach relies on measuring the effects on the host and the graphics hardware, while data movement and processing are executed concurrently. A broad set of experiments is performed, disconnecting inter-process and data dependencies as basis for a statistical evaluation. This allows to identify individual as well as combinatorial influences of the evaluated control variables. Using design of experiments approaches reduces the number of necessary measurements and allows to quickly derive a mathematical description of the underlying processes. With this, we are able to predict performance expectations for specific use cases. Finally, we evaluate our approach in a multi-step process to gain a broad understanding of accuracy and precision of the two MARKUs for rendering and uploading. Based on our models, future development of memory transfer optimizations are possible to balance the predicted impact on rendering with the performance of the data transfer, leading to improved real-time realizations even for large data-sets., Grafik-Rendering-Hardware enthält oft spezialisierte Komponenten, um die Auslastung der grafischen Verarbeitungseinheit (GPU) zu maximieren. Beispiele sind dedizierte Bauteile zum Speicherzugriff und Datentransfer, die direkten Zugriff auf den Grafikspeicher, ohne die Verarbeitung in der GPU zu blockieren, ermöglichen. Da einerseits Grafikspeicher üblicherweise begrenzt ist, andererseits die Größe der heute erzeugten Datensätze weiter zunimmt, werden optimierte Methoden für den schnellen Datenaustausch zwischen Host-Speicher und Grafikspeicher zur Echtzeit-Visualisierung benötigt. Das Verständnis der komplexen Zusammenhänge beim gleichzeitigen Darstellen und Ausführen von Datentransfers erfordert anspruchsvolle Modelle, die die Hardware und den jeweiligen Datenfluss beschreiben. Die Eingabe für solche Modelle umfasst die Größe und Struktur des betrachteten Datensatzes, die Anzahl der parallelen Threads für den Datentransfer und modulare und austauschbare Funktionen, die diese Datentransfers durchführen, sowie Treiberhinweise für den optimalen Datenzugriff. In die Modelle fließen weitere Systemparameter ein, wie die konkret verwendete Hardware und die verschiedenen einstellbaren Taktraten. In dieser Arbeit beschreiben wir einen methodischen Ansatz, um solche Modelle systematisch herzuleiten. Das Ergebnis sind zwei Modelle für asynchrones Darstellen und k-fachen Datentransfer (MARKU), jeweils eines für das Darstellen und eines für den Datentransfer. Unsere Methodik beruht auf Messungen der Auswirkung auf den Host und die Grafikhardware, während Datentransfer und Darstellung gleichzeitig ausgeführt werden. Es wird eine Reihe von Experimenten durchgeführt, wobei die Abhängigkeiten zwischen den Prozessen und den Daten getrennt werden, um eine statistische Auswertung zu ermöglichen. Dadurch können sowohl individuelle als auch kombinatorische Einflüsse der ausgewerteten Steuergrößen identifiziert werden. Durch Methoden der Versuchsplanung wird die Anzahl der notwendigen Messungen reduziert und die schnelle Herleitung einer mathematischen Beschreibung der zugrundeliegenden Prozesse ermöglicht. Damit sind wir in der Lage, Performanzerwartungen für bestimmte Anwendungsfälle vorherzusagen. Schließlich evaluieren wir unsere Methodik mehrstufig, um die Genauigkeit und Präzision der beiden MARKUs für Darstellung und Datentransfer umfassend zu verstehen. Basierend auf unseren Modellen ist eine zukünftige Optimierung von Datentransfers möglich, um die Auswirkung auf das Darstellen mit der Geschwindigkeit des Datentransfers auszubalancieren, was zu verbesserten Echtzeitvisualisierungen auch für große Datenmengen führt.
Not available
Wiedemann, Markus
2021
Englisch
Universitätsbibliothek der Ludwig-Maximilians-Universität München
Wiedemann, Markus (2021): Modeling concurrent data rendering and uploading for graphics hardware. Dissertation, LMU München: Fakultät für Mathematik, Informatik und Statistik
[thumbnail of Wiedemann_Markus.pdf]
Vorschau
PDF
Wiedemann_Markus.pdf

5MB

Abstract

Graphics rendering hardware often contains specialized components to maximize utilization of its Graphical Processing Unit (GPU). Examples are dedicated memory and copy engines to directly access the graphics memory without blocking GPU processing. Considering that graphics memory is always limited, while the size of datasets produced today is ever increasing, optimized methods for fast data exchange between host memory and graphics memory are needed for real-time visualization. Understanding the complex relations involved in concurrently rendering and uploading requires sophisticated models describing the hardware and the respective data flow. Input for such models includes the size and structure of the dataset under consideration, the number of parallel threads for processing it, and modular and exchangeable functions performing the data transfers as well as parameters for optimal data access. The models include additional system parameters, such as the concrete hardware used and the various settable clock rates. In this work we describe a methodical approach to derive such models in a systematic fashion. The results are two Models for Asynchronous Rendering and K-time Uploading (MARKU), one for rendering and one for uploading. Our methodical approach relies on measuring the effects on the host and the graphics hardware, while data movement and processing are executed concurrently. A broad set of experiments is performed, disconnecting inter-process and data dependencies as basis for a statistical evaluation. This allows to identify individual as well as combinatorial influences of the evaluated control variables. Using design of experiments approaches reduces the number of necessary measurements and allows to quickly derive a mathematical description of the underlying processes. With this, we are able to predict performance expectations for specific use cases. Finally, we evaluate our approach in a multi-step process to gain a broad understanding of accuracy and precision of the two MARKUs for rendering and uploading. Based on our models, future development of memory transfer optimizations are possible to balance the predicted impact on rendering with the performance of the data transfer, leading to improved real-time realizations even for large data-sets.

Abstract

Grafik-Rendering-Hardware enthält oft spezialisierte Komponenten, um die Auslastung der grafischen Verarbeitungseinheit (GPU) zu maximieren. Beispiele sind dedizierte Bauteile zum Speicherzugriff und Datentransfer, die direkten Zugriff auf den Grafikspeicher, ohne die Verarbeitung in der GPU zu blockieren, ermöglichen. Da einerseits Grafikspeicher üblicherweise begrenzt ist, andererseits die Größe der heute erzeugten Datensätze weiter zunimmt, werden optimierte Methoden für den schnellen Datenaustausch zwischen Host-Speicher und Grafikspeicher zur Echtzeit-Visualisierung benötigt. Das Verständnis der komplexen Zusammenhänge beim gleichzeitigen Darstellen und Ausführen von Datentransfers erfordert anspruchsvolle Modelle, die die Hardware und den jeweiligen Datenfluss beschreiben. Die Eingabe für solche Modelle umfasst die Größe und Struktur des betrachteten Datensatzes, die Anzahl der parallelen Threads für den Datentransfer und modulare und austauschbare Funktionen, die diese Datentransfers durchführen, sowie Treiberhinweise für den optimalen Datenzugriff. In die Modelle fließen weitere Systemparameter ein, wie die konkret verwendete Hardware und die verschiedenen einstellbaren Taktraten. In dieser Arbeit beschreiben wir einen methodischen Ansatz, um solche Modelle systematisch herzuleiten. Das Ergebnis sind zwei Modelle für asynchrones Darstellen und k-fachen Datentransfer (MARKU), jeweils eines für das Darstellen und eines für den Datentransfer. Unsere Methodik beruht auf Messungen der Auswirkung auf den Host und die Grafikhardware, während Datentransfer und Darstellung gleichzeitig ausgeführt werden. Es wird eine Reihe von Experimenten durchgeführt, wobei die Abhängigkeiten zwischen den Prozessen und den Daten getrennt werden, um eine statistische Auswertung zu ermöglichen. Dadurch können sowohl individuelle als auch kombinatorische Einflüsse der ausgewerteten Steuergrößen identifiziert werden. Durch Methoden der Versuchsplanung wird die Anzahl der notwendigen Messungen reduziert und die schnelle Herleitung einer mathematischen Beschreibung der zugrundeliegenden Prozesse ermöglicht. Damit sind wir in der Lage, Performanzerwartungen für bestimmte Anwendungsfälle vorherzusagen. Schließlich evaluieren wir unsere Methodik mehrstufig, um die Genauigkeit und Präzision der beiden MARKUs für Darstellung und Datentransfer umfassend zu verstehen. Basierend auf unseren Modellen ist eine zukünftige Optimierung von Datentransfers möglich, um die Auswirkung auf das Darstellen mit der Geschwindigkeit des Datentransfers auszubalancieren, was zu verbesserten Echtzeitvisualisierungen auch für große Datenmengen führt.