ACM Home Page
Please provide us with feedback. Feedback
Visualising dynamic memory allocators
Full text PdfPdf (177 KB)
Source International Symposium on Memory Management archive
Proceedings of the 5th international symposium on Memory management table of contents
Ottawa, Ontario, Canada
SESSION: Locality and visualisation table of contents
Pages: 115 - 125  
Year of Publication: 2006
ISBN:1-59593-221-6
Authors
A. M. Cheadle  Imperial College London
A. J. Field  Imperial College London
J. W. Ayres  Imperial College London
N. Dunn  Imperial College London
R. A. Hayden  Imperial College London
J. Nystrom-Persson  Imperial College London
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 50,   Citation Count: 0
Additional Information:

abstract   references   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/1133956.1133972
What is a DOI?

ABSTRACT

We present generic extensions to the GCspy visualisation frame-work that make it suitable for tracking the way continuous dynamic memory allocators such as dlmalloc or incremental and concurrent garbage collectors make use of heap memory. These extensions include sample-driven client-server communication, in-cremental stream updates and client-controlled stream update frequency. Additional extensions to the current GCspy client are also described. These include hierarchical driver grouping and hierarchical visualisation, zooming, and the ability to define and view relationships between tiles in different spaces. We also introduce a heuristics engine that is responsible for flipping GCspy from its decoupled 'observation' mode to a synchronous 'single-step' mode, and describe a backtrace facility that can trace the server-side call sequence that led to the triggering of a specified event, such as the allocation or freeing of a block of memory. This enables aspects of the allocator (fragmentation, block ordering, splitting and coalescing policies, etc.) to be understood in the context of a particular application and potential optimisations to be identified. The effectiveness of the enhanced framework is demonstrated with a complete integration with dlmalloc. The framework is evaluated in terms of both performance and its ability to explore contrived modifications to dlmalloc's coalescing policy.


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
Doug Lea. A memory allocator. http://gee.cs.oswego.edu/dl/html/malloc.html.
 
2
 
3
GCspy Team. Enhanced GCspy source code. http://www.experimentalstuff.com/Technologies/GCspy/
 
4
5
6
 
7
Henry Lieberman and Carl E. Hewitt. A real-time garbage collector based on the lifetimes of objects. AI Memo 569a, MIT, April 1981.
8
9
10
11
12
13
14
15
 
16
17
 
18
Imperial College GCspy Team. I Spy with my GCspy. http://www.doc.ic.ac.uk/~ajf/Research/publications.html
 
19
HP Labs. The libunwind project. http://www.hpl.hp.com/research/linux/libunwind/.
 
20
 
21
DaCapo Project. The DaCapo benchmark suite (versionbeta051009). http://osl-www.cs.umass.edu/DaCapo/gcbm.html.
 
22
Donald E. Knuth. The Art of Computer Programming, volume I: Fundamental Algorithms, chapter 2. Addison-Wesley, second edition, 1973.
 
23
AT&T Research. Graphviz - graph visualization software. http://www.graphviz.org/.
 
24
 
25
OOPSLA'02 ACM Conference on Object-Oriented Systems, Languages and Applications, ACM SIGPLAN Notices, Seattle, WA, November 2002. ACM Press.

Collaborative Colleagues:
A. M. Cheadle: colleagues
A. J. Field: colleagues
J. W. Ayres: colleagues
N. Dunn: colleagues
R. A. Hayden: colleagues
J. Nystrom-Persson: colleagues