World Wide Web Journal - Special issue on XML: principles, tools, and techniques
Practical virtual method call resolution for Java
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
STEP: a framework for the efficient encoding of general trace data
Proceedings of the 2002 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Software Visualization in the Large
Computer
Optimization of Object-Oriented Programs Using Static Class Hierarchy Analysis
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
Soot - a Java bytecode optimization framework
CASCON '99 Proceedings of the 1999 conference of the Centre for Advanced Studies on Collaborative research
High-Level Static and Dynamic Visualization of Software Architectures
VL '00 Proceedings of the 2000 IEEE International Symposium on Visual Languages (VL'00)
Understanding the Behavior of Java Programs
WCRE '00 Proceedings of the Seventh Working Conference on Reverse Engineering (WCRE'00)
Visualizing Software - A Key Research Area
ICSM '99 Proceedings of the IEEE International Conference on Software Maintenance
STEP: a framework for the efficient encoding of general trace data
Proceedings of the 2002 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Dynamic analysis of program concepts in Java
PPPJ '06 Proceedings of the 4th international symposium on Principles and practice of programming in Java
Combined static and dynamic analysis for inferring program dependencies using a pattern language
CASCON '06 Proceedings of the 2006 conference of the Center for Advanced Studies on Collaborative research
IEEE Transactions on Software Engineering
Dynamic analysis of Java program concepts for visualization and profiling
Science of Computer Programming
Hi-index | 0.01 |
The task of developing, tuning, and debugging compiler optimizations is a difficult one which can be facilitated by software visualization. There are many characteristics of the code which must be considered when studying the kinds of optimizations which can be performed. Both static data collected at compile-time and dynamic runtime data can reveal opportunities for optimization and affect code transformations. In order to expose the behavior of such complex systems, visualizations should include as much information as possible and accommodate the different sources from which this information is acquired.This paper presents a visualization framework designed to address these issues. The framework is based on a new, extensible language called JIL which provides a common format for encapsulating intermediate representations and associating them with compile-time and runtime data. We present new contributions which extend existing compiler and profiling frameworks, allowing them to export the intermediate languages, analysis results, and code metadata they collect as JIL documents. Visualization interfaces can then combine the JIL data from separate tools, exposing both static and dynamic characteristics of the underlying code. We present such an interface in the form of a new web-based visualizer, allowing JIL documents to be visualized online in a portable, customizable interface.