A Prototype for Pipeline-Composable Task-Based Visualization Algorithms

Marvin Petersen, Kilian Werner, Andrea Schnorr, Torsten Wolfgang Kuhlen, Christoph Garth

View presentation: 2022-10-16T16:10:00Z GMT-0600 Change your timezone on the schedule page
2022-10-16T16:10:00Z
Exemplar figure, described by caption below
Comparison of a task-based volume rendering pipeline with artificial barriers across algorithm boundaries (top row) with a task-based volume rendering pipeline without barriers (bottom row). On the left, the coupling of the module task graphs in the pipeline is exemplified and on the right thread occupation of the different tasks is shown for the pipeline execution on one compute node.

The live footage of the talk, including the Q&A, can be viewed on the session page, LDAV: Parallelization & Progressiveness.

Abstract

For next generation platforms, the paradigm of task-based parallelism has the potential to overcome some of the accompanying challenges. This paradigm has already been applied by the visualization community to specific algorithms and problems. However, one advantage of the task-based paradigm—the interleaving of work—should lead to better utilization of resources and ultimately lower execution times if the paradigm is applied to whole pipelines. In order to investigate this potential, we build a prototype framework for composable task-based parallel visualization algorithms. With this we explore the combination of a strictly task-based approach with the addition of a pipeline layer for visualization algorithms. This additional layer eases the composition of larger task-based parallel visualization applications without the need to explicitly define the exact connection in a task graph between algorithms. In this manner, task-based visualization algorithms can be designed towards a common interface, be easily combined, and still benefit from the advantages of the task-based paradigm across algorithm boundaries, such as latency hiding. We explore the design implications of this combination and show initial results of the scalability and the impact of task interleaving on the runtime of exemplary pipelines.