Skip to main content
Kent Academic Repository

GCspy: An Adaptable Heap Visualisation Framework

Printezis, Tony and Jones, Richard E. (2002) GCspy: An Adaptable Heap Visualisation Framework. In: Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications. ACM Press, New York, USA, pp. 343-358. ISBN 1-58113-471-1. (doi:10.1145/582419.582451) (KAR id:13700)

Abstract

GCspy is an architectural framework for the collection, transmission, storage and replay of memory management behaviour. It makes new contributions to the understanding of the dynamic memory behaviour of programming languages (and especially object-oriented languages that make heavy demands on the performance of memory managers). GCspy's architecture allows easy incorporation into any memory management system: it is not limited to garbage-collected languages. It requires only small changes to the system in which it is incorporated but provides a simple to use yet powerful data-gathering API. GCspy scales to allow very large heaps to be visualised effectively and efficiently. It allows already-running, local or remote systems to be visualised and those systems to run at full speed outside the points at which data is gathered. GCspy's visualisation tool presents this information in a number of novel ways. Deep understanding of program behaviour is essential to the design of the next generation of garbage collectors and explicit allocators. Until now, no satisfactory tools have been available to assist the implementer in gaining an understanding of heap behaviour. GCspy has been demonstrated to be a practical solution to this dilemma. It has been used to analyse production Java virtual machines running applications of realistic sizes. Its use has revealed important insights into the interaction between application program and JVM and has led to the development of better garbage collectors.

Item Type: Book section
DOI/Identification number: 10.1145/582419.582451
Uncontrolled keywords: Language implementation, Memory management, Garbage collection, Visualisation of objects,Java
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing
Depositing User: Richard Jones
Date Deposited: 24 Nov 2008 17:59 UTC
Last Modified: 16 Nov 2021 09:51 UTC
Resource URI: https://kar.kent.ac.uk/id/eprint/13700 (The current URI for this page, for reference purposes)

University of Kent Author Information

  • Depositors only (login required):

Total unique views for this document in KAR since July 2020. For more details click on the image.