Debugging concurrent processes: a case study
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Visualizing parallel computer system performance
Instrumentation for future parallel computing systems
Real-time visualization of concurrent processes
CONPAR 90 Proceedings of the joint international conference on Vector and parallel processing
Program understanding: challenge for the 1990's
IBM Systems Journal
Adaptation in natural and artificial systems
Adaptation in natural and artificial systems
A methodology for building application-specific visualizations of parallel programs
Journal of Parallel and Distributed Computing - Special issue on tools and methods for visualization of parallel systems and computations
Computer organization & design: the hardware/software interface
Computer organization & design: the hardware/software interface
Reverse engineering: progress along many dimensions
Communications of the ACM
ICSE '94 Proceedings of the 16th international conference on Software engineering
A visualization system for multithreaded programming
Proceedings of the thirty-first SIGCSE technical symposium on Computer science education
Leveraging Legacy System Dollars for E-Business
IT Professional
Creating an Accurate Portrayal of Concurrent Executions
IEEE Concurrency
Visualizing the Performance of Parallel Programs
IEEE Software
Locating Features in Source Code
IEEE Transactions on Software Engineering
Visualization and Performance Prediction of Multithreaded Solaris Programs by Tracing Kernel Threads
IPPS '99/SPDP '99 Proceedings of the 13th International Symposium on Parallel Processing and the 10th Symposium on Parallel and Distributed Processing
Toward Flexible Control of the Temporal Mapping from Concurrent Program Events to Animations
Proceedings of the 8th International Symposium on Parallel Processing
Extensible Parallel Program Performance Visualization
MASCOTS '95 Proceedings of the 3rd International Workshop on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems
Pajé: An Extensible Environment for Visualizing Multi-threaded Programs Executions
Euro-Par '00 Proceedings from the 6th International Euro-Par Conference on Parallel Processing
Visualizing the Execution of Java Programs
Revised Lectures on Software Visualization, International Seminar
Visualisation of (Distributed) Process Execution based on Extended BPMN
DEXA '03 Proceedings of the 14th International Workshop on Database and Expert Systems Applications
Information Visualization: Perception for Design
Information Visualization: Perception for Design
A nonlinear model of information-seeking behavior
Journal of the American Society for Information Science and Technology
Beyond the C++ Standard Library
Beyond the C++ Standard Library
Toward Scalable Performance Visualization with Jumpshot
International Journal of High Performance Computing Applications
The Tau Parallel Performance System
International Journal of High Performance Computing Applications
Digital Systems and Applications (The Computer Engineering Handbook, Second Edition)
Digital Systems and Applications (The Computer Engineering Handbook, Second Edition)
How Long Will It Take to Fix This Bug?
MSR '07 Proceedings of the Fourth International Workshop on Mining Software Repositories
Visualization of Concurrent Program Executions
COMPSAC '07 Proceedings of the 31st Annual International Computer Software and Applications Conference - Volume 02
Using OpenMP: Portable Shared Memory Parallel Programming (Scientific and Engineering Computation)
Using OpenMP: Portable Shared Memory Parallel Programming (Scientific and Engineering Computation)
Intel threading building blocks
Intel threading building blocks
Visualizing Potential Deadlocks in Multithreaded Programs
PaCT '09 Proceedings of the 10th International Conference on Parallel Computing Technologies
Probabilistic hybrid action models for predicting concurrent percept-driven robot behavior
Journal of Artificial Intelligence Research
A Systematic Survey of Program Comprehension through Dynamic Analysis
IEEE Transactions on Software Engineering
Visualizing massively multithreaded applications with ThreadScope
Concurrency and Computation: Practice & Experience
Visual and algorithmic tooling for system trace analysis: a case study
ACM SIGOPS Operating Systems Review
Design and evaluation of extensions to UML sequence diagrams for modeling multithreaded interactions
Information Visualization
Interactive record/replay for web application debugging
Proceedings of the 26th annual ACM symposium on User interface software and technology
Hi-index | 0.00 |
Understanding multithreaded software systems is typically a tedious task: Due to parallel execution and interactions between multiple threads, such a system's runtime behavior is often much more complex than the behavior of a single-threaded system. For many maintenance activities, system understanding is a prerequisite. Hence, tasks such as bug fixing or performance optimization are highly demanding in the case of multithreaded systems. Unfortunately, state-of-the-art tools for system understanding and debuggers provide only limited support for these systems. We present a dynamic analysis and visualization technique that helps developers in understanding multithreaded software systems in general and in identifying performance bottlenecks in particular. The technique first performs method boundary tracing. Second, developers perform a post-mortem analysis of a system's behavior using visualization optimized for trace data of multithreaded software systems. The technique enables developers to understand how multiple threads collaborate at runtime. The technique is integrated into a professional and scalable tool for visualizing the behavior of complex software systems. In case studies, we have tested the technique with industrially developed, multithreaded software systems to understand system behavior and to identify multithreading-related performance bottlenecks.