Visualizing the behavior of object-oriented systems
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
Exploiting hardware performance counters with flow and context sensitive profiling
Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation
An evaluation of space-filling information visualizations for depicting hierarchical structures
International Journal of Human-Computer Studies - Empirical evaluation of information visualizations
Agile Software Development: Principles, Patterns, and Practices
Agile Software Development: Principles, Patterns, and Practices
Visualizing Object-Oriented Programs with Jinsight
ECOOP '98 Workshop ion on Object-Oriented Technology
An Information Exploration Tool for Performance Analysis of Java Programs
TOOLS '01 Proceedings of the Technology of Object-Oriented Languages and Systems
Partial Comprehension of Complex Programs (enough to perform maintenance)
IWPC '98 Proceedings of the 6th International Workshop on Program Comprehension
Polymetric Views-A Lightweight Visual Approach to Reverse Engineering
IEEE Transactions on Software Engineering
Tree-Maps: a space-filling approach to the visualization of hierarchical information structures
VIS '91 Proceedings of the 2nd conference on Visualization '91
Profiling Java applications using code hotswapping and dynamic call graph revelation
WOSP '04 Proceedings of the 4th international workshop on Software and performance
High-Level Polymetric Views of Condensed Run-time Information
CSMR '04 Proceedings of the Eighth Euromicro Working Conference on Software Maintenance and Reengineering (CSMR'04)
SoftVis '05 Proceedings of the 2005 ACM symposium on Software visualization
Matching execution histories of program versions
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
Portable and accurate sampling profiling for Java
Software—Practice & Experience - Research Articles
Modeling history to analyze software evolution: Research Articles
Journal of Software Maintenance and Evolution: Research and Practice
Visualizing live software systems in 3D
SoftVis '06 Proceedings of the 2006 ACM symposium on Software visualization
Mondrian: an agile information visualization framework
SoftVis '06 Proceedings of the 2006 ACM symposium on Software visualization
Hierarchical Edge Bundles: Visualization of Adjacency Relations in Hierarchical Data
IEEE Transactions on Visualization and Computer Graphics
Multi-level Method Understanding Using Microprints
VISSOFT '05 Proceedings of the 3rd IEEE International Workshop on Visualizing Software for Understanding and Analysis
Perfdiff: a framework for performance difference analysis in a virtual machine environment
Proceedings of the 6th annual IEEE/ACM international symposium on Code generation and optimization
Platform-independent profiling in a virtual execution environment
Software—Practice & Experience
A Survey of Coverage-Based Testing Tools
The Computer Journal
Tracking performance across software revisions
PPPJ '09 Proceedings of the 7th International Conference on Principles and Practice of Programming in Java
Evaluating the accuracy of Java profilers
PLDI '10 Proceedings of the 2010 ACM SIGPLAN conference on Programming language design and implementation
Visualizing and exploring profiles with calling context ring charts
Software—Practice & Experience
Visualizing dynamic metrics with profiling blueprints
TOOLS'10 Proceedings of the 48th international conference on Objects, models, components, patterns
Performance Prediction of Distributed Applications Using Block Benchmarking Methods
PDP '11 Proceedings of the 2011 19th International Euromicro Conference on Parallel, Distributed and Network-Based Processing
Deferred methods: accelerating dynamic program analysis on multicores
Proceedings of the Tenth International Symposium on Code Generation and Optimization
Visual patterns with profiling blueprint
Proceedings of the 7th Workshop on Dynamic Languages and Applications
Tracking performance failures with rizel
Proceedings of the 2013 International Workshop on Principles of Software Evolution
Performance optimization of deployed software-as-a-service applications
Journal of Systems and Software
Hi-index | 0.00 |
Although traditional approaches to code profiling help locate performance bottlenecks, they offer only limited support for removing these bottlenecks. The main reason is the lack of detailed visual runtime information to identify and eliminate computation redundancy. We provide three profiling blueprints that help identify and remove performance bottlenecks. The structural distribution blueprint graphically represents the CPU consumption share for each method and class of an application. The behavioral distribution blueprint depicts the distribution of CPU consumption along method invocations and hints at method candidates for caching optimizations. The behavioral evolution blueprint compares profiles of different versions of a software system and highlights performance-critical changes in the system. These three blueprints helped us to significantly optimize Mondrian, an open source visualization engine. Our implementation is freely available for the Pharo development environment and has been evaluated in a number of different scenarios. Copyright © 2011 John Wiley & Sons, Ltd.