Dynamic analysis of Java program concepts for visualization and profiling

Singer, J. and Kirkham, C. (2008) Dynamic analysis of Java program concepts for visualization and profiling. Science of Computer Programming, 70(2-3), pp. 111-126. (doi: 10.1016/j.scico.2007.07.006)

Full text not currently available from Enlighten.

Publisher's URL: http://dx.doi.org/10.1016/j.scico.2007.07.006

Abstract

Concept assignment identifies units of source code that are functionally related, even if this is not apparent from a syntactic point of view. Until now, the results of concept assignment have only been used for static analysis, mostly of program source code. This paper investigates the possibility of using concept information within a framework for dynamic analysis of programs. The paper presents two case studies involving a small Java program used in a previous research exercise, and a large Java virtual machine (the popular Jikes RVM system). These studies investigate two applications of dynamic concept information: visualization and profiling. The paper demonstrates two different styles of concept visualization, which show the proportion of overall time spent in each concept and the sequence of concept execution, respectively. The profiling study concerns the interaction between runtime compilation and garbage collection in Jikes RVM. For some benchmark cases, we are able to obtain a significant reduction in garbage collection time. We discuss how this phenomenon might be harnessed to optimize the scheduling of garbage collection in Jikes RVM.

Item Type:Articles
Status:Published
Refereed:Yes
Glasgow Author(s) Enlighten ID:Singer, Dr Jeremy
Authors: Singer, J., and Kirkham, C.
Subjects:Q Science > QA Mathematics > QA75 Electronic computers. Computer science
Q Science > QA Mathematics > QA76 Computer software
College/School:College of Science and Engineering > School of Computing Science
Journal Name:Science of Computer Programming
ISSN:0167-6423
ISSN (Online):1872-7964
Published Online:22 October 2007

University Staff: Request a correction | Enlighten Editors: Update this record