Richard Jones
The proposal for a Memory Management Network (MMnet) made notable claims. We stated that use of automatic memory management has consistently been demonstrated to be beneficial for software development, especially as programmers build large and more complex systems; that use of languages such as Java in substantial applications of commercial import would make garbage collection more important economically than ever before; and that all modern object-oriented languages (except C++) would require automatic memory management. Furthermore, we argued that garbage collection was a ‘hot’ topic that would continue to throw up new challenges as researchers throughout the spectrum of applications: from multiprocessor, multi-gigabyte servers to limited capability, real-time embedded devices.
The three years of the project’s lifetime have shown that we underestimated the importance of this field. Languages like C# are increasingly widely deployed. Java has penetrated the consumer market, for example through games on middle to high-end mobile phones. Even the new Managed Extensions for C++ [1] mandates garbage collection [2] . Research in this field is intense: since the inception of the Network, approximately 200 directly relevant papers have been published, including 35 by MMnet members.
The aims of the network were:
In order to realise these aims, the Network set itself the following measurable targets:
These targets have been achieved.
This objective has been achieved. The Network has grown from 7 to 16 organisations.
The Network was established with the support of 7 UK organisations: the universities of Glasgow, Kent, Southampton and St. Andrews, and IBM UK, Insignia Solutions and Microsoft Research. One of its prime objectives was to enlarge its membership. By the end of the project, 9 further organisations had joined, all playing an active part in the Network: Cambridge, Heriot-Watt, Imperial College, Leeds, Middlesex, Nottingham, QMUL and UCL universities, and Ravenbrook Ltd, a small consultancy firm. A mailing list, open to MMnet partners only, is hosted at Kent.
Two outcomes of the Network are particularly welcome. First, the Network, particularly through its workshops, has reunited researchers who had in many cases lost contact with each other.
“I've felt that MMnet has worked particularly well through the workshops which have given me a much better idea of other work going on in the UK.”
A second and largely unanticipated outcome has been the bringing together of theoretical computer scientists and practitioners. As the field matures, we expect the application of static analyses and new logics to memory management problems to be particularly fruitful.
“MMnet provided a setting in which people like myself with theoretical tendencies and backgrounds could be exposed to the practical problems and issues in the area. I have found this aspect quite valuable.”
Unfortunately, to the Network’s loss and Sun Microsystems’ gain, Dr Printezis, the network’s Co-Investigator, moved to the latter’s Java Technology Research Group in Burlingham, MA in September 2001; Dr Dickman, also of Glasgow University, replaced him as Co-Investigator. The Java Virtual Machine business of Insignia Solutions, one of the original partners, was bought by the Swiss company Esmertec in 2003; since then, they have been largely passive members of the Network. However, all other partners have participated actively.
This objective has been achieved.
The Network acquired a domain, mm-net.org.uk, and has constructed an extensive web site, hosted by the University of Kent. The web site holds a number of resources and links useful to the members and other commercial and academic researchers.
| Year |
gcbib |
mm-net |
Total
|
| 2002 |
41,928
|
8,745
|
52,675
|
| 2003 |
31,166
|
13,198
|
46,367
|
| 2004 |
25,842
|
27,482
|
55,328
|
Table I. Website successful page request statistics.
Table I shows the traffic volume of the website (measured in successful page requests). We speculate that the decline in the use of bibliography may be due to increased take-up of the ACM’s and other digital libraries. On the other hand, the usage of other MMnet pages has increased substantially. Interestingly, the years with the highest access figures are those in which the main conference, ISMM, was held.
The on-line bibliography (gcbib) is the largest bibliographic database for garbage collection papers, with over 2000 entries. It is the standard bibliographic resource for garbage collection, used by researchers worldwide.
The directory of UK researchers includes those with interests in explicit and automatic memory management, implementation of virtual machines, tools for the analysis of memory performance and static analysis techniques for improving correctness of programs that manipulate heap-allocated data.
One of the aims of the Network was to develop and improve standards by which work is reported through use of more realistic benchmarks and better experimental methodologies. Some progress has been made in this area and the website provides links to benchmark suites. Although proposals have been made for standard trace specifications, and tools provided, there has been no take-up by the wider community and owners of traces have proved reluctant to share them. Nevertheless, the standard of reporting of experimental results in conference papers and journals has improved. This is partly due to the efforts of programme committees and reviewers, including MMnet partners.
This objective has been surpassed.
The Network held four workshops (double the target set) and a residential Summer School. The response to these meetings has been positive beyond our expectations. The workshops were sufficiently successful that the partners have resolved to continue them beyond this project, whether or not funding becomes available (the first will be held during Glasgow’s Research Festival in summer 2005).
“I found the workshops useful and inspiring in my work.”
“Gaining exposure to UK and the IBM T J Watson / Haifa, Sun Labs, Microsoft Research, etc, GC researchers has been fantastic and hopefully good for a career in this field!”
| Date | Location | Topic |
Participants
|
Sponsors | |||
|
A
|
P
|
D
|
Total
|
||||
| 7/02 | Univ. of Glasgow | General MM topics |
10
|
4
|
6
|
20
|
|
| 5/03 | Univ. of Kent | Analytical Techniques for Memory Management |
8
|
6
|
4
|
18
|
|
| 12/03 | UCL | Memory Management for Handheld Devices |
7
|
4
|
9
|
20
|
Symbian |
| 4/04 | Univ. of Cambridge | General MM topics |
7
|
9
|
5
|
21
|
Intel |
| 7/05 | Univ. of Kent | Summer School |
9
|
14
|
5
|
28
|
|
Table II: MMnet Workshops.
The workshops were held in different locations in the UK; two were generalist and two focussed on specific aspects of memory management (Table II). All the workshops were attended by a mixture of academics (A), postgraduates (P) and developers (D).
The Network’s very successful Summer School took place over two days in July 2004. Leading international researchers from industry and universities (Bacon, IBM TJ Watson; Berger, U. Massachusetts; Boehm, HP; Detlefs, Sun Microsystems; Hudson, Intel; Moss, U. Massachusetts; and Sciampacone, IBM Ottawa) discussed the state of the art in both automatic and explicit memory management with 28 attendees (postgraduate students, academic and industrial researchers).
“The garbage collection school was a triumph, really outstanding.”
£9,534.61 (budget £5,000) was spent on MMnet workshops, including its Summer School. Two of the workshops were partly sponsored by industrial companies, Symbian and Intel, and some organisations provided free use of their facilities for meetings. In addition to the MMnet workshops, Jones and O’Hearn co-organised SPACE 2004, the Second Workshop on Semantics, Program Analysis and Computing Environments for Memory Management in Venice in 2004, in cooperation with ACM POPL; SPACE’04 was attended by 50 participants.
This target has been achieved.
The greatest proportion of MMnet’s expenditure (see Table III) was spent on travel expenses to allow MMnet members to attend conferences in Europe, North America and Australia (ISMM, OOPSLA, PLDI, SPACE, SAC, IFIP WG 2.8), as well as MMnet workshops and its Summer School. It has also allowed visits between MMnet partners to work on particular projects, such as heap visualisation, new proof techniques for distributed garbage collection, memory management for embedded systems, cost analysis and garbage collection for embedded systems, and so on. A list of projects is given under Objective 6 below.
We believe that this target has been achieved.
39 papers have been published by MMnet members since the start of the project. 6 papers had industrial co-authors, and 13 had international co-authors. 10 publications were the result of collaborations between MMnet academic partners (Glasgow, Kent, Southampton; Imperial. Middlesex, QMUL; Heriot-Watt, St. Andrews) and 2 between industrial and academic partners. Overall, the authors of 19 publications were drawn from different organisations. Several of these publications were in conferences and journals of the highest international quality [1 ,2 ,3 ,14 ,25 ,16 ,31 ,32 ]. While any estimate of the number of jointly authored publications that might be produced without MMNET must be speculation, we are confident that the Network has promoted collaboration between partners.
Network members have published software as well as papers. The GCspy heap visualisation framework (developed by Kent and Glasgow/Sun Microsystems) is freely available, as is a port to IBM’s JikesRVM virtual machine (Kent). GCspy will be available for Microsoft’s Rotor platform by September 2005.
This target has been achieved.
15 projects, including 7 collaborations between MMnet partners, were undertaken during the period of this grant.
In addition, MMNET partners have collaborated with a number of organisations outside the Network (St. Andrews and U. Adelaide [15,26,27 ]; Cornell, DIKU, Kent, QMUL organised SPACE’04; Sun Microsystems part-funded Printezis at Glasgow; ANU, Kent, U. Massachusetts and U. Texas on the Beltway garbage collection framework [32 ]; Kent and Sun Microsystems on removing GC synchronisation [4,5,18,30 ]; DIKU and Kent’s GC tutorial for OOPSLA’03; Glasgow and Spartan Solutions (a local SME). Further details can be found on the Network’s website.
We believe that the Network has been useful, and in some cases certainly instrumental, in facilitating these projects. On the other hand, the goal of a portfolio of instructive case studies has not been achieved.
This objective has been achieved.
Members of the Network have successfully sought funding for their memory management related research from industry (including MMnet partners, EPSRC and the EU). The total support amounts to £1,519,668 (details are given in the Final Report Form). The following areas successfully sought funding from the EPSRC, EU and private industry:
Further bids for support (Kent, Middlesex, St. Andrews) are in preparation. The MMnet partners have resolved to continue the activities of the Network. In particular, we shall continue to hold occasional workshops (the first will be held during Glasgow’s Research Festival in summer 2005) and Kent will continue to support the website and mailing list.
This target has been surpassed.
The Network’s target was for 4 postgraduates researching memory management and to train 20 developers and postgraduates through its workshops. This target has been exceeded. 4 PhDs (Cambridge, Glasgow, Kent) in this field have been completed and 7 more PhDs (Cambridge, Imperial, Kent, Nottingham, QMUL, St. Andrews) and 4 MSc’s (Glasgow, UCL) are in progress in the partner universities. Numbers of postgraduate students and developers attending the Network’s workshops and Summer School are shown in Table II,
This objective has been met.
Three annual reports have been produced and are available from the MMnet website.
Actual expenditure has diverged substantially from the original budget in 4 respects (Table III). Encouraged by the partners’ reception of the workshops, we held twice as many as planned.
|
Activity |
Budget |
Actual |
Divergence |
|
Workshops |
£9,000 |
£1,099 |
|
|
Summer school |
- |
£7,525 |
£376 |
|
Equipment |
£859 |
£2,317 |
(£1,458) |
|
Travel |
£37,500 |
£32,359 |
£5,141 |
|
All expenditure |
£58,143 |
51,675 |
£6,468 |
Table III: Major expenditure divergences from budget (excluding overheads).
The Summer School was an excellent platform for allowing postgraduates and developers to interact with leading international researchers; we subsidised attendance to encourage participation. We commend this strategy to other networks.
The original proposal sought support for a contribution to the cost of disk space for the website. Instead, the space was donated by the University of Kent. However, we found a need for tools to produce a high-quality website. The Network bought a laptop running Windows XP for the Principal Investigator; website and graphics software were provided under the University of Kent’s site license. A laptop was bought so that it could also be used by speakers at MMnet workshops and its Summer School.
Finally, these virements were made possible because demand for travel expenses was less than anticipated. The activity of the partners suggests that alternative funding sources were available in many cases.
The Network has achieved all the targets set in the initial proposal.
An effective forum has been created, with active participation of most of the key UK organisations in the field of memory management.
The Network’s workshops and its Summer School have proved particularly successful. Its website holds links to a number of valuable resources for researchers in this field, and is well used.
The target for training postgraduate students and developers has been exceeded.
We are confident that MMnet has facilitated an impressive number of new projects and collaborations. The publication record of its members demonstrates collaboration between academic and industrial, and international, co-authors.
The Network has been found to be sufficiently useful that its members intend to continue its activities beyond the end of the project. MMnet members have won follow-on support for projects of over £1.5 million.
[1] http://msdn.microsoft.com/library/default.asp? url=/library/en-us/vcmex/html/vcconMCOverview.asp
[2] Although it is possible to program in a subset of Managed C++ that avoids the managed (i.e. garbage collected) heap.