ThreadRadar: A Thread-Aware Visualization for Debugging Concurrent Java Programs
Oliver Moseler,Lucas Kreber,Stephan Diehl +2 more
- 06 Sep 2021
3
TL;DR: In this article, the authors present an approach that combines statistical profiling, clustering and visualization to facilitate the debugging of concurrency and performance issues in concurrent programs, and demonstrate the usefulness of their approach for understanding and fixing performance and concurrency issues.
read more
Abstract: Due to non-deterministic behavior and thread interleaving of concurrent programs, the debugging of concurrency and performance issues is a rather difficult and often tedious task. In this paper, we present an approach that combines statistical profiling, clustering and visualization to facilitate this task. We implemented our approach in a tool which is integrated as a plugin into a widely used IDE. First, we introduce our approach with details on the profiling and clustering strategy that produce runtime metrics and clusters of threads for source-code artifacts at different levels of abstraction (class and method) and the entire program. Next, we explain the design of our sparkline visualization which represents the clusters in situ, i.e. embedded in the program text next to the related source-code artifact in the source-code editor. More detailed information is available in separate views that also allow the user to interactively configure thread filters. In a demonstration study we illustrate the usefulness of the tool for understanding and fixing performance and concurrency issues. Finally, we report on first formative results from a small-scale user study.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
ThreadRadar: A Thread-Aware Visualization for Debugging Concurrent Java Programs
Oliver Moseler,Lucas Kreber,Stephan Diehl +2 more
- 06 Sep 2021
TL;DR: In this article, the authors present an approach that combines statistical profiling, clustering and visualization to facilitate the debugging of concurrency and performance issues in concurrent programs, and demonstrate the usefulness of their approach for understanding and fixing performance and concurrency issues.
3
The ThreadRadar visualization for debugging concurrent Java programs
TL;DR: In this article , the authors present an approach that combines statistical profiling, clustering and visualization to facilitate the debugging of concurrency and performance issues in concurrent programs, and demonstrate the usefulness of their approach for understanding and fixing performance and concurrency issues.
References
•Proceedings Article
Constrained K-means Clustering with Background Knowledge
Kiri L. Wagstaff,Claire Cardie,Seth Rogers,Stefan Schrödl +3 more
- 28 Jun 2001
TL;DR: This paper demonstrates how the popular k-means clustering algorithm can be protably modied to make use of information about the problem domain that is available in addition to the data instances themselves.
Supporting Controlled Experimentation with Testing Techniques: An Infrastructure and its Potential Impact
TL;DR: The infrastructure that is being designed and constructed to support controlled experimentation with testing and regression testing techniques is described and the impact that this infrastructure has had and can be expected to have.
Learning from mistakes: a comprehensive study on real world concurrency bug characteristics
Shan Lu,Soyeon Park,Eunsoo Seo,Yuanyuan Zhou +3 more
- 01 Mar 2008
TL;DR: This study carefully examined concurrency bug patterns, manifestation, and fix strategies of 105 randomly selected real world concurrency bugs from 4 representative server and client open-source applications and reveals several interesting findings that provide useful guidance for concurrency Bug detection, testing, and concurrent programming language design.
Software and the Concurrency Revolution: Leveraging the full power of multicore processors demands new tools and new thinking from the software industry.
Herb Sutter,James R. Larus +1 more
TL;DR: The introductory article in this issue describes the hardware imperatives behind this shift in computer architecture from uniprocessors to multicore processors, also known as CMPs.
617
A Systematic Survey of Program Comprehension through Dynamic Analysis
TL;DR: A systematic literature survey aimed at the identification and structuring of research on program comprehension through dynamic analysis is reported on, which offers insight in what constitutes the main contributions of the field and supports the task of identifying gaps and opportunities.