Vollständig Programmierbare GPU-Pipelines
Fully Programmable GPU Pipelines
DACH: Österreich - Deutschland - Schweiz
Wissenschaftsdisziplinen
Informatik (100%)
Keywords
-
Graphics Processing Unit (GPU),
Rendering Pipeline,
Parallel Computing
Moderne Computersysteme verwenden Graphikprozessoren (Graphics Processing Unit, GPU) mit enormer Rechenleistung. Allerdings hat sich die grundlegende Hardwarearchitektur der GPU seit fast 15 Jahren nicht wesentlich verändert. Eine fixe Pipeline mit einer vorgegebenen Sequenz von Stufen eignet sich nur für eine bestimmte Art von Graphikanwendung, insbesondere für Computerspiele. Mit neuen Programmiersprachen wie CUDA ist es zwar möglich, die GPU-Rechenleistung auch für andere Probleme, wie etwas Simulationsberechnungen, einzusetzen. Dieser Ansatz lässt sich aber nicht auf neue Graphik-Pipelines ausdehnen, weil bestimmte Komponenten der GPU in CUDA nicht verfügbar sind. In diesem Projekt werden wir ein neues Software-Framework entwickeln, das die fehlenden Teile einer vollständigen Graphik-Pipeline in einer GPU-Programmiersprache zur Verfügung stellt. Dies ist eine grosse Herausforderung, weil das Framework sehr effizient arbeiten muss, um mit der normalen, hardwareunterstützen Pipeline konkurrieren zu können. Wir können aber die bessere Flexibilität einer Implementierung in Software nutzen, um ein konkurrenzfähiges Framework zu erstellen. Wichtiger als die Effizientzfrage ist aber, dass wir das neue Softwareframerwork für Graphik-Pipelines dazu nutzen können, die Beschränkungen der normalen Graphik-Pipeline zu überwinden. Beispielsweise können wir den gewöhnlichen, rechteckigen Bildschirmspeicher durch eine neue, effiziente, unregelmässige Strutur ersetzen. Außerdem können wir die regelmäßigen Abtastmuster für Pixel durch unregelmässige ersetzen, die sich besser für neue Virtual Reality-Geräte wie das Oculus Rift eignen.
Echtzeitrendering ist nicht nur in der Unterhaltungsbranche wichtig, sondern für alle Arten von visuellen Anwendungen, wie z. B. Visualisierung medizinischer Daten, Simulationen, in der Lehre oder Architektur. Die Echtzeitrenderingpipeline ist typischerweise an effiziente Hardware gebunden, d. H. die Grafikkarte (GPU). Während eine enge Kopplung an eine Hardwarearchitektur eine hohe Leistung und Energieeffizienz ergibt, wird die Flexibilität geopfert. Daher ist es nicht verwunderlich, dass sich die Echtzeitrenderingpipeline seit Einführung programmierbaren Shader kaum geändert hat. Dieses unflexible Design schränkt die Forschung und Entwicklung neuer Renderingarchitekturen ein. Jeder neuartige Renderingansatz, der nicht der vordefinierten Pipeline folgt, ist zum Scheitern verurteilt, da er niemals mit Ansätzen konkurrieren kann, die zur Hardwarepipeline passen. In diesem Projekt haben wir gezeigt, dass Renderingpipelines in einem vollständigen Softwareansatz ausgeführt werden können. Um dieses Ergebnis zu erzielen, ist ein effizientes dynamische Scheduling der Pipelinestufen unerlässlich. Beim Scheduling müssen mehrere Kompromisse berücksichtigt werden, z. B. das Generieren von Parallelität und das Kompakthalten der Daten. Unter Berücksichtung dieser Kompromisse und durch die Erarbeitung von Lösungen für allgemeine Schedulingprobleme haben wir eine vollständige Streamingrenderingpipeline generiert, deren Leistung der Hardwarepipeline nahekommt aber gleichzeitig beispiellose Flexibilität bietet. Mit diesem Ansatz können neuartige Renderingalgorithmen leicht konzipiert werden. Außerdem konnten wir zeigen, dass kleine Änderungen an der Pipeline die Renderqualität und Rendergeschwindigkeit nachhaltig beeinflussen können. Unser Ansatz ermöglicht es nicht nur die Renderingpipeline anzupassen, sondern auch mit alternativen Hardwaredesigns zu experimentieren und völlig neue Renderingpipelines zu konzipieren. Zum Beispiel haben wir eine Pipeline zum hocheffizienten Rendern von Vektorgrafiken vorgestellt. Vektorgrafiken kommen z. B. beim Rendern von Schriftarten und auf Websites zum Einsatz. Dieser Ansatz übertrifft nicht nur die neuesten hardwaregestützten Renderingmethoden, sondern erzielt auch eine deutlich bessere Qualität. Ein weiteres Beispiel für die Vorteile unseres Konzepts ist die Anwendung für Virtual Reality Brillen, wo wir die wahrgenommene Latenz erheblich reduzieren und damit das Auftreten der "VR Krankheit" vermeiden konnten. Außerdem haben wir unsere Schedulingansätze auf andere Forschungsbereiche erweitert: linear Algebra von dünnbesetzten Matrizen (z. B. für die Materialsimulation), Berechnungen auf dynamischen Graphen (z. B. für große sozialen Netzwerke oder in der Netzverarbeitung), und Freiformflächendarstellung (z. B. für die Filmindustrie). In allen Bereichen konnten wir den bisherigen Stand der Technik klar übertreffen. Diese überraschenden Ergebnisse zeigen, dass fortschrittliche, adaptive Schedulingstrategien das Potenzial haben, Lösungen für verschiedenste Forschungsdomänen zu liefern.
- Technische Universität Graz - 100%
- Markus Steinberger, Technische Universität Graz , nationale:r Kooperationspartner:in
- Matthias Nießner, TU München - Deutschland
- Jan Kautz, NVIDIA - Vereinigte Staaten von Amerika
Research Output
- 299 Zitationen
- 19 Publikationen
- 3 Wissenschaftliche Auszeichnungen
-
2019
Titel Hierarchical Rasterization of Curved Primitives for Vector Graphics Rendering on the GPU DOI 10.1111/cgf.13622 Typ Journal Article Autor Dokter M Journal Computer Graphics Forum Seiten 93-103 -
2019
Titel Adaptive sparse matrix-matrix multiplication on the GPU DOI 10.1145/3293883.3295701 Typ Conference Proceeding Abstract Autor Winter M Seiten 68-81 -
2019
Titel Breadth-First Search on Dynamic Graphs using Dynamic Parallelism on the GPU DOI 10.1109/hpec.2019.8916476 Typ Conference Proceeding Abstract Autor Tödling D Seiten 1-7 -
2019
Titel The camera offset space DOI 10.1145/3355089.3356530 Typ Journal Article Autor Hladky J Journal ACM Transactions on Graphics (TOG) Seiten 1-14 -
2018
Titel Human upper-body inverse kinematics for increased embodiment in consumer-grade virtual reality DOI 10.1145/3281505.3281529 Typ Conference Proceeding Abstract Autor Parger M Seiten 1-10 -
2018
Titel A high-performance software graphics pipeline architecture for the GPU DOI 10.1145/3197517.3201374 Typ Journal Article Autor Kenzel M Journal ACM Transactions on Graphics (TOG) Seiten 1-15 -
2018
Titel Revisiting The Vertex Cache DOI 10.1145/3233302 Typ Journal Article Autor Kerbl B Journal Proceedings of the ACM on Computer Graphics and Interactive Techniques Seiten 1-16 -
2018
Titel On-the-fly Vertex Reuse for Massively-Parallel Software Geometry Processing DOI 10.1145/3233303 Typ Journal Article Autor Kenzel M Journal Proceedings of the ACM on Computer Graphics and Interactive Techniques Seiten 1-17 Link Publikation -
2020
Titel Stochastic Substitute Trees for Real-Time Global Illumination DOI 10.1145/3384382.3384521 Typ Conference Proceeding Abstract Autor Tatzgern W Seiten 1-9 -
2020
Titel spECK DOI 10.1145/3332466.3374521 Typ Conference Proceeding Abstract Autor Parger M Seiten 362-375 -
2018
Titel The Broker Queue DOI 10.1145/3205289.3205291 Typ Conference Proceeding Abstract Autor Kerbl B Seiten 76-85 -
2018
Titel faimGraph: High Performance Management of Fully-Dynamic Graphs Under Tight Memory Constraints on the GPU DOI 10.1109/sc.2018.00063 Typ Conference Proceeding Abstract Autor Winter M Seiten 1-13 -
2018
Titel On-the-fly Vertex Reuse for Massively-Parallel Software Geometry Processing DOI 10.48550/arxiv.1805.08893 Typ Preprint Autor Kenzel M -
2020
Titel Subdivision-Specialized Linear Algebra Kernels for Static and Dynamic Mesh Connectivity on the GPU Typ Journal Article Autor Mlakar D Journal Computer Graphics Forum Link Publikation -
2020
Titel Ouroboros DOI 10.1145/3392717.3392742 Typ Conference Proceeding Abstract Autor Winter M Seiten 1-12 -
2021
Titel Are dynamic memory managers on GPUs slow? DOI 10.1145/3437801.3441612 Typ Conference Proceeding Abstract Autor Winter M Seiten 219-233 -
2017
Titel Effective static bin patterns for sort-middle rendering DOI 10.1145/3105762.3105777 Typ Conference Proceeding Abstract Autor Kerbl B Seiten 1-10 -
2017
Titel Dynamic scheduling for efficient hierarchical sparse matrix operations on the GPU DOI 10.1145/3079079.3079085 Typ Conference Proceeding Abstract Autor Derler A Seiten 1-10 -
2017
Titel Autonomous, Independent Management of Dynamic Graphs on GPUs DOI 10.1109/hpec.2017.8091058 Typ Conference Proceeding Abstract Autor Winter M Seiten 1-7
-
2020
Titel Eurographics 2020 Best Paper Award Typ Research prize Bekanntheitsgrad Continental/International -
2019
Titel Computer Graphics Forum Associate Editor Typ Appointed as the editor/advisor to a journal or book series Bekanntheitsgrad Continental/International -
2017
Titel Best Student Paper Award High Performance Extreme Computing Typ Research prize Bekanntheitsgrad Continental/International