The UK Memory Management Network (mm-net) is an EPSRC-funded network of researchers, interested in memory management for programming languages. The project's mission is to establish collaborations between UK industrialists and academics to further research and development of advanced memory management systems.
The main goals of the MM-NET project are:
Mm-net is managed its Principal Investigator, Richard Jones, advised by a Steering Committee formed from representatives from the institutions originally named in the research proposal. The Steering Committee is by intention a geographically and organisationally disparate group. Both for this reason and to allow the most productive use of the Network's limited funds, the Steering Committee met electronically throughout the year. It also met face-to-face before its July 2002 workshop in Glasgow.
The Principal Investigator is the budget-holder and approves travel requests and expenses. Members who receive support for travel (to conferences or to partners' institutions) are expected to provide brief reports; these are posted on mm-net's website.
In August 2002, mm-net's co-investigator, Tony Printezis (Glasgow), moved to Sun Microsystems Research Laboratories in the USA. While the Network will miss his contribution, we wish him well for the future.
The Network has made steady progress towards the objectives set out in the original proposal.
The domain name mm-net.org.uk was acquired in October, 2001 and a website established at www.mm-net.org.uk, hosted by the University of Kent at Canterbury. The website includes an explanation of the aims and objectives of the Network, an archive of the Network's newsletters, a list of consortium and Steering Committee members, details of mm-net collaborative projects and activities, relevant publications by mm-net members and a page of resources including bibliographies, lists of conferences, workshops and tools, and a list of UK researchers in the field. In addition, mailing lists have been established for the steering committee and for the membership at large.
The first workshop of the Memory Management Network was held in the Department of Computer Science at the University of Glasgow on 5 July 2002. Its aims were to allow members of the network to meet, to listen what others are doing in this area and exchange ideas, and to consider the directions in which to take the network.
Twenty members of the Network attended the workshop, with representatives from both academia and industry (and one visitor from Australia!). The day provided opportunities to hear about new research projects and also to plan the direction of the Network.
Attendees gave presentations on Incremental Garbage Collection for 'Non-stop' Haskell, the Beltway Garbage Collector Framework, the Virtual Shared Memory Performance of a Parallel Graph Reducer, the Memory Pool System, the Grid and its need for memory management, Removing Thread Synchronisation for garbage collection, Escape Analysis for Object-Oriented Programs, the GCspy Adaptable Heap Visualisation Framework, Managing Elastic Structures and the challenges facing production quality garbage collectors.
The workshop also provided an opportunity for attendees to discuss the challenges facing memory management research. A number of topics were felt to be important and worth pursuing within the memory management community and in particular by the mm-net partners. Much of these focussed on understanding the performance of memory management subsystems. How can we characterise the behaviour of application programs? How can we understand when things are going wrong and why? Can we identify realistic benchmarks? The workshop also recognised that memory management was more than garbage collection and that we should attempt to draw in the hardware and operating systems communities.
It was important to be able to acquire a high-level understanding of why things go wrong. Comparisons between the application-level and the GC-level were necessary. A number of tools were available. GCspy focussed on the needs of the memory manager implementer and provides a visualisation of the memory management system (heap spaces, free-lists, and so on) whereas commercial tools like JInsight, JProbe allowed application developers to drill down to understand how the heap was populated, the cause of space leaks, and so forth.
A lack adequate and shared benchmarks and other stress testing workloads was recognised. Although researchers have used many applications, many are too small to allow conclusions to be drawn with confidence, or come from a limited class of programs (compiler development tools are an unsurprisingly common pool from which benchmarks are drawn). Although it is often difficult to obtain large-scale, commercial applications for measurement, benchmarking and performance measurement is an area in which collaboration would benefit the entire community and in which mm-net might play a part.
Mm-net supported visits by academic members of the Network to the following international conferences: ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA'01) in Tampa, Florida; ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'02) and the ACM SIGPLAN International Symposium on Memory Management (ISSM'02), both in Berlin. It also supported members' attendance at mm-net's own workshop in Glasgow.
In addition, it supported visits to mm-net partners by Richard Jones (to Glasgow), Peter Dickman (to Southampton) and Luc Moreau (to Glasgow).
Ron Morrison's group at the University of St. Andrews also hosted EPSRC Visiting Research Fellows, Drs Dave Munro and Henry Detmold from the University of Adelaide, under EPSRC grant GR/R84881.
MM-net members published memory management related papers at PLDI'02, ISMM'02 and OOPSLA'02.
Beltway: Getting around Garbage Collection Gridlock. Stephen M. Blackburn, Richard Jones, Kathryn S. McKinley, and J. Eliot B. Moss. In Laurie J. Hendren, editor, Proceedings of PLDI'02 Programming Language Design and Implementation, Berlin, June 2002. ACM Press.Visualising the Train Garbage Collector. Tony Printezis and Alex Garthwaite. ACM SIGPLAN International Symposium on Memory Management, ISMM'02, Berlin, June 2002.
GCspy: An adaptable heap visualisation framework. Tony Printezis and Richard Jones. ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages and Applications, OOPSLA'02, Seattle, WA, November 2002.
Removing GC Synchronisation. Andy C. King. ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages and Applications (Companion), OOPSLA'02, Seattle, WA, November 2002.
The network has also started a regular newsletter, produced twice a year. Newsletters will be archived on the website as well as a summary being circulated by email to members of the Network and others who have shown interest. The first newsletter appeared in February 2002.
The most successful collaborative project supported by mm-net is GCspy, the heap visualisation tool developed by Tony Printezis (Glasgow) and Richard Jones (Kent). GCspy has been welcomed as major contribution to memory management development and debugging throughout the international community. Sun Microsystems, IBM, Microsoft, Adobe and other major developers have expressed interest in GCspy. It is available under a BSD-style license from Sun Microsystems' website www.experimentalstuff.com/sunr/projects/gcspy.
Distributed garbage collection for both Modula-3's Network Objects and Java's RMI is based on Birrell et al's well-known algorithm (see the mm-net resources page). Peter Dickman's (Glasgow) and Luc Moreau's (Southampton) project aims to reformulate the algorithm into a form that both elucidates key subtleties of the algorithm and its implementation and, simultaneously, supports a proof of crucial properties. The intention is to generalise the algorithm, developing new variations, whilst showing how specific features of the algorithm provide the underpinning for particular proof steps.
Ron Morrison's group at St Andrews, in collaboration with Drs Dave Munro and Henry Detmold from the University of Adelaide, is investigating how the formulation of the DMOS distributed garbage collection algorithm can be improved to ease verification of its correctness and to aid implementation.
Mm-net was established in 2001 with a membership of 4 academic (Universities of Glasgow, Kent, Southampton and St. Andrews) and 3 commercial organisations (IBM UK Ltd., Insignia Solutions and Microsoft Research).
A key objective in mm-net's research proposal was to expand the membership of the Network. Since its launch, mm-net has gained new members from the Universities of Cambridge, Heriot-Watt and Leeds, and Imperial College and University College, London, as well as a new commercial partner, Ravenbrook.
The Steering Committee remains committed to the establishment of mm-net as a self-funded network by the end of the three-year period for which the EPSRC has provided support.
The Network includes 4 research students working on areas related to memory management. Andy Cheadle (Imperial) and Andy King (Kent) gave presentations on their work to the Glasgow workshop.
Andy Cheadle's (Imperial) d research concerns incremental and generational garbage collection techniques for high-level functional and object oriented programming languages. He is implementing an incremental generational garbage collector for GHC, the Glasgow Haskell Compiler (in conjunction with the GHC team at Microsoft Research, headed by Simon Peyton Jones).
Andy King seeks to remove the cost of synchronisation between threads for garbage collection by using static analysis techniques (escape analysis) to allocate objects that are not reachable outside the thread in thread-local 'heaplets' and to design new garbage collectors that can collect heaplets independently without synchronisation. Andy won the 2002 ACM SIGPLAN Student Research Competition at OOPSLA'02 for his presentation of this work.
Stuart Norcross (St. Andrews) is about to finish his PhD thesis on distributed garbage collection. He has now been appointed as a research associate at St Andrews.
The July workshop identified the lack of useful benchmarks as a focus of future mm-net work. A number of key issues were identified.
It was agreed that this was a matter that a future workshop might focus upon.
The Network will continue to seek opportunities to disseminate its work, encourage collaborative projects and expand its membership.
Richard Jones
Problems with this page?
Contact the mm-net webmaster
Last modified Fri Mar 3 01:26:49 GMT 2006