178

VegaProf: Profiling Vega Visualizations

ACM Symposium on User Interface Software and Technology (UIST), 2022
Alex Bäuerle
Dominik Moritz
Abstract

Vega is a popular domain-specific language (DSL) for visualization specification. At runtime, Vega's DSL is first transformed into a dataflow graph and then functions to render visualization primitives. While the Vega abstraction of implementation details simplifies visualization creation, it also makes Vega visualizations challenging to debug and profile without adequate tools. Our formative interviews with three practitioners at Sigma Computing showed that existing developer tools are not suited for visualization profiling as they are disconnected from the semantics of the Vega DSL specification and its resulting dataflow graph. We introduce VegaProf, the first performance profiler for Vega visualizations. VegaProf effectively instruments the Vega library by associating the declarative specification with its compilation and execution. Using interactive visualizations, VegaProf enables visualization engineers to interactively profile visualization performance at three abstraction levels: function, dataflow graph, and visualization specification. Our evaluation through two use cases and feedback from five visualization engineers at Sigma Computing shows that VegaProf makes visualization profiling tractable and actionable.

View on arXiv
Comments on this paper