OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Garbage collection in an uncooperative environment
Software—Practice & Experience
Tenuring policies for generation-based storage reclamation
OOPSLA '88 Conference proceedings on Object-oriented programming systems, languages and applications
Simple generational garbage collection and fast allocation
Software—Practice & Experience
A comparative performance evaluation of write barrier implementation
OOPSLA '92 conference proceedings on Object-oriented programming systems, languages, and applications
The memory fragmentation problem: solved?
Proceedings of the 1st international symposium on Memory management
Using generational garbage collection to implement cache-conscious data placement
Proceedings of the 1st international symposium on Memory management
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Software engineering tools and environments: a roadmap
Proceedings of the Conference on The Future of Software Engineering
Designing a trace format for heap allocation events
Proceedings of the 2nd international symposium on Memory management
Proceedings of the 2nd international symposium on Memory management
A generational mostly-concurrent garbage collector
Proceedings of the 2nd international symposium on Memory management
ICSE workshop on software visualization
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Visualising the train garbage collector
Proceedings of the 3rd international symposium on Memory management
Beltway: getting around garbage collection gridlock
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
Dynamic Storage Allocation: A Survey and Critical Review
IWMM '95 Proceedings of the International Workshop on Memory Management
Incremental Collection of Mature Objects
IWMM '92 Proceedings of the International Workshop on Memory Management
Self-Describing Files + Smart Modules = Parallel Program Visualization
TPPP '94 Proceedings of the International Workshop on Theory and Practice of Parallel Programming
Incremental Mature Garbage Collection Using the Train Algorithm
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
Generation Scavenging: A non-disruptive high performance storage reclamation algorithm
SDE 1 Proceedings of the first ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
Compiling lazy functional programs for the Java Virtual Machine
Journal of Functional Programming
The GC Interface in the EVM1
IBM Systems Journal
JVM'01 Proceedings of the 2001 Symposium on JavaTM Virtual Machine Research and Technology Symposium - Volume 1
Exploiting UML dynamic object modeling for the visualization of C++ programs
SoftVis '05 Proceedings of the 2005 ACM symposium on Software visualization
High-level real-time programming in Java
Proceedings of the 5th ACM international conference on Embedded software
Visualising dynamic memory allocators
Proceedings of the 5th international symposium on Memory management
Dynamic analysis of program concepts in Java
PPPJ '06 Proceedings of the 4th international symposium on Principles and practice of programming in Java
Dynamic analysis of Java program concepts for visualization and profiling
Science of Computer Programming
A study of Java object demographics
Proceedings of the 7th international symposium on Memory management
Transactions on aspect-oriented software development IV
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2
A map of the heap: revealing design abstractions in runtime structures
Proceedings of the 5th international symposium on Software visualization
Patterns of memory inefficiency
Proceedings of the 25th European conference on Object-oriented programming
Dynamic architecture extraction
FATES'06/RV'06 Proceedings of the First combined international conference on Formal Approaches to Software Testing and Runtime Verification
Multi-level virtual machine debugging using the java platform debugger architecture
PSI'09 Proceedings of the 7th international Andrei Ershov Memorial conference on Perspectives of Systems Informatics
new Scala() instance of Java: a comparison of the memory behaviour of Java and Scala programs
Proceedings of the 2012 international symposium on Memory Management
VM-level memory monitoring for resolving performance problems
Proceedings of the 2013 companion publication for conference on Systems, programming, & applications: software for humanity
Hi-index | 0.00 |
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.