• Medientyp: E-Artikel
  • Titel: The ThreadRadar visualization for debugging concurrent Java programs
  • Beteiligte: Moseler, Oliver; Kreber, Lucas; Diehl, Stephan
  • Erschienen: Springer Science and Business Media LLC, 2022
  • Erschienen in: Journal of Visualization, 25 (2022) 6, Seite 1267-1289
  • Sprache: Englisch
  • DOI: 10.1007/s12650-022-00843-w
  • ISSN: 1343-8875; 1875-8975
  • Entstehung:
  • Anmerkungen:
  • Beschreibung: AbstractDue 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 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 windows that also allow the user to configure thread filters interactively. 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 usability test and consequently implemented tool improvements. Graphical abstract