Atria is a multi-view execution graph visualization that I built for the Phylanx project. A demo of Atria using performance data collected from running factorial.py can be found here. More complicated demos, representing real-world comparisons of performance data collected from running algorithm code, can be found here (LRA) and here (ALS). GitHub.

Abstract: Common pitfalls in visualization projects include lack of data availability and the domain users’ needs and focus changing too rapidly for the design process to complete. While it is often prudent to avoid such projects, we argue it can be beneficial to engage them in some cases as the visualization process can help refine data collection, solving a “chicken and egg” problem of having the data and tools to analyze it. We found this to be the case in the domain of task parallel computing where such data and tooling is an open area of research. Despite these hurdles, we conducted a design study. Through a tightly-coupled iterative design process, we built Atria, a multi-view execution graph visualization to support performance analysis. Atria simplifies the initial representation of the execution graph by aggregating nodes as related to their line of code. We deployed Atria on multiple platforms, some requiring design alteration. We describe how we adapted the design study methodology to the “moving target” of both the data and the domain experts’ concerns and how this movement kept both the visualization and programming project healthy. We reflect on our process and discuss what factors allow the project to be successful in the presence of changing data and user needs.

Papers

K. Williams, A. Bigelow, and K. E. Isaacs. Visualizing a moving target: A design study on task parallel programs in the presence of evolving data and concerns. To appear in IEEE Transactions on Visualization and Computer Graphics (Proceedings of InfoVis ’19), January 2020. Supplemental material (PDF). Written artifact example. Video (from InfoVis 2019).

S. R. Brandt, A. Bigelow, S. A. Sakin, K. Williams, K. E. Isaacs, K. A. Huck, R. Tohid, B. Wagle, S. Shirzad, H. Kaiser: JetLag: An Interactive, Asynchronous Array Computing Environment. PEARC 2020: 8-12

R. Tohid, B. Wagle, S. Shirzad, P. Diehl, A. Serio, A. Kheirkhahan, P. Amini, K. Williams, K. Isaacs, K. Huck, S. Brandt, H. Kaiser. Asynchronous Execution of Python Code on Task Based Runtime Systems. In IEEE/ACM 4th International Workshop on Extreme Scale Programming Models and Middleware (ESPM2’18), SC ’18, November 2018.