ACM Home Page
Please provide us with feedback. Feedback
Combining static and dynamic data in code visualization
Full text PdfPdf (305 KB)
Source Workshop on Program Analysis for Software Tools and Engineering archive
Proceedings of the 2002 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering table of contents
Charleston, South Carolina, USA
SESSION: Program tracing and profiling table of contents
Pages: 43 - 50  
Year of Publication: 2002
ISBN:1-58113-479-7
Also published in ...
Author
David Eng  McGill University, Montréal, Québec, Canada
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 9,   Downloads (12 Months): 46,   Citation Count: 5
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/586094.586105
What is a DOI?

ABSTRACT

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.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
T. Bray, J. Paoli, C. M. Sperberg-McQueen, and E. Maler. Extensible Markup Language (XML) 1.0 (Second Edition). W3C XML Working Group, October 2000. Available at http://www.w3.org/TR/REC xml.
 
3
R. Brown, K. Driesen, D. Eng, L. Hendren, J. Jorgensen, C. Verbrugge, and Q. Wang. STOOP: The Sable toolkit for object-oriented profiling. Technical Report SABLE-2001-2, McGill University, Sable Research Group, November 2001.
4
 
5
R. Brown, J. Jorgensen, Q. Wang, L. Hendren, K. Driesen, and C. Verbrugge. Poster 32: STOOP: The Sable toolkit for object-oriented profiling. In Poster Abstracts of OOPSLA '01, October 2001.
 
6
J. Clark. XSL Transformations (XSLT) Version 1.0. W3C XML Working Group, November 1999. Available at http://www.w3.org/TR/xslt.
 
7
 
8
D. Eng. JIL: an extensible intermediate language. Technical Report SABLE-2002-3, McGill University, Sable Research Group, June 2002.
 
9
 
10
J. C. Hardwick and J. Sipelstein. Java as an intermediate language. Technical Report CMU-CS-96-161, Carnegie Mellon University, 1996.
 
11
 
12
PHP Group. PHP: Hypertext Preprocessor. Available at http://www.php.net.
13
 
14
 
15
R. Vallee-Rai. Soot: A Java bytecode optimization framework. Master's thesis, McGill University, July 2000.
 
16
 
17
R. Vallee-Rai and L. Hendren. Jimple: Simplifying Java bytecode for analyses and transformations. Technical Report SABLE-1998-4, McGill University, Sable Research Group, July 1998.
 
18