Analyzing and Visualizing Whole Program Architectures
Conference
·
OSTI ID:909924
This paper describes our work to develop new tool support for analyzing and visualizing the architecture of complete large-scale (millions or more lines of code) programs. Our approach consists of (i) creating a compact, accurate representation of a whole C or C++ program, (ii) analyzing the program in this representation, and (iii) visualizing the analysis results with respect to the program's architecture. We have implemented our approach by extending and combining a compiler infrastructure and a program visualization tool, and we believe our work will be of broad interest to those engaged in a variety of program understanding and transformation tasks. We have added new whole-program analysis support to ROSE [15, 14], a source-to-source C/C++ compiler infrastructure for creating customized analysis and transformation tools. Our whole-program work does not rely on procedure summaries; rather, we preserve all of the information present in the source while keeping our representation compact. In our representation, a million-line application fits in well less than 1 GB of memory. Because whole-program analyses can generate large amounts of data, we believe that abstracting and visualizing analysis results at the architecture level is critical to reducing the cognitive burden on the consumer of the analysis results. Therefore, we have extended Vizz3D [19], an interactive program visualization tool, with an appropriate metaphor and layout algorithm for representing a program's architecture. Our implementation provides developers with an intuitive, interactive way to view analysis results, such as those produced by ROSE, in the context of the program's architecture. The remainder of this paper summarizes our approach to whole-program analysis (Section 2) and provides an example of how we visualize the analysis results (Section 3).
- Research Organization:
- Lawrence Livermore National Laboratory (LLNL), Livermore, CA
- Sponsoring Organization:
- USDOE
- DOE Contract Number:
- W-7405-ENG-48
- OSTI ID:
- 909924
- Report Number(s):
- UCRL-PROC-231453
- Country of Publication:
- United States
- Language:
- English
Similar Records
Tools for Authentication
An Extensible Open-Source Compiler Infrastructure for Testing
Using Rose and Compass for Authentication
Conference
·
Wed Jul 09 00:00:00 EDT 2008
·
OSTI ID:945642
An Extensible Open-Source Compiler Infrastructure for Testing
Conference
·
Thu Dec 08 23:00:00 EST 2005
·
OSTI ID:928163
Using Rose and Compass for Authentication
Conference
·
Thu Jul 09 00:00:00 EDT 2009
·
OSTI ID:962808