1st MM-NET Workshop on
Memory Management for Handheld Devices
University College London
10:30am - 4pm, 2nd December 2003

There is increasing market pressure to provide sophisticated applications on handheld devices such as smartphones and PDAs. Typically these applications are programmed in C++ or Java, with increasing reliance on dynamic and automatic memory management. The constrained heaps of these devices and requirements for (soft and hard) real-time performance, coupled with constrained hardware and power resources, provides a challenging environment for memory management.

Topics of interest for this workshop include but are not limited to:

  •          Space and time performance issues
  •          MM algorithms
  •          Reliability of MM systems
  •          Novel languages and their MM performance
  •          Hard real-time MM
  •          Garbage collection
  •          Static prediction and bounding of resource utilisation
  •          Power management related to MM

Participation is welcomed from both academic and industrial sources.

Programme

We are delighted to announce that Andrew Thoelke (Chief Technology Architect at Symbian) will be giving the keynote talk. Several of Symbian's key technical personnel will be attending and some will be giving presentations.

10:30 Welcome
10:45

Keynote address
Andrew Thoelke Chief Technology Architectect, Symbian Ltd.
"Memory Management for Smartphones -- Old hat or New challenge?"

11:30 Coffee break
12:00 Pedro Vasconcelos St Andrews University, Scotland
"Hume"
12:30 Chris Clack University College London
"Smart Memory for Smart Phones"
13:00 Lunch
14:00 Tim Harris Cambridge University
"Memory Management in Language Support for Lightweight Transactions"
14:30 Richard Jones University of Kent at Canterbury
"GCspy: An adaptable heap visualisation framework"
15:00 Coffee break
15:30 John Pagonis Symbian Ltd. Group Discussion
"Looking to the Future - Memory Management for Wearable and Mobile Computing?"
16:00 Close

 

Talk Abstracts and slides

Andrew Thoelke, Chief Technology Architectect, Symbian Ltd.
Keynote address: "Memory Management for Smartphones -- Old hat or New challenge?"
Smartphones are the place where handheld computers and mobile handsets come together. This combination is rather more complex than one first imagines -- one device inhabited a world of add-on software for the technically literate, the other was an out and out consumer device aimed at the mass market. Something more is demanded than a subtle blend of their existing memory management techniques.

Pedro Vasconcelos, St Andrews University, Scotland
"Hume"

Chris Clack, University College London
"Smart Memory for Smart Phones"
Until now, dynamic memory allocation for smart phones could either be fast, or small, but not both. Specifically targeted at smartphones, the new UCL allocator is both fast and small - i.e. it hits soft real-time deadlines at the same time as being frugal with memory resources.

Tim Harris, Cambridge University
"Memory Management in Language Support for Lightweight Transactions"

Richard Jones, University of Kent at Canterbury
"GCspy: An adaptable heap visualisation framework"
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.

Group Discussion introduced by John Pagonis, Symbian
"Memory Management for Wearable and Mobile Computing"
In the field of Wearable and Mobile computing, increasingly the complexity of the problems as well as the system demands on power consumption, heat dissipation and responsiveness, lead designers to adopt multicore (multi-CPU) designs. In such configurations the intelligence and collaborating components of even a single ''application'' may be distributed accross more than one processing unit and memory components. At the moment such designs use either a) at most 2 cores (usually CPU/MCU+DSP) which are connected using dedicated low bandwidth buses or small dual-port RAM b) networked SoCs/boards connected over some wired/wireless PAN network These designs are typically: a) price conscious b) battery operated c) need to process environmental context as perceived by humans in real time (music, ambient noise, speech, video, temperature, location,speed etc) d) networked and thus communicating with remote elements (GSM,UMTS,PAN, etc) e) open or closed depending on deployment scenarios (Symbian OS phone vs military wearable) f) many times heterogeneous in terms of OS and execution environment used with diverse APIs Efficient utilisation of distributed memory in power-sensitive coupled but distributed embedded systems will become more of a pragmatic issue in the near future for practical product designs.

Memorable issues/quotes/questions from the meeting

(with thanks to Chris Clack for collecting these)

"Current [smartphone] allocators are good for General Purpose use - they're mostly efficient and fast - but they have bad worst-case scenarios are not suited to real-time apps (3G etc)"

"If we can defrag physical memory AND actively reduce RAM requirements when idle, then we could exploit low-power partial-refresh RAMs by powering-down (turning off refresh to) parts of the RAM - say the top 8M or 12M of a 16M chip"

"memory refresh is the biggest power drain in standby mode"

"Can we Garbage Collect applications? i.e. which should we close down next, to conserve resources? - we need to know how much (time/power/money [network comms]) the app would need to restart"

"How could VM be supported for smartphones? does it make sense to do so?"

"Could we provide standard plug-in replacement allocators for specific applications?"

"Fragmentation is not just a problem for small handheld devices - even some of our big computers have fragmentation problems, and we're looking for solutions..."


The workshop organisers are:

Chris Clack University College London C.Clack@cs.ucl.ac.uk
Richard Jones University of Kent at Canterbury R.E.Jones@ukc.ac.uk

MM-NET is generously sponsored by the UK's Engineering and Physical Sciences Research Council (EPSRC).

We are also grateful to Symbian Ltd. for their support for this workshop.

Problems with this page?
Contact the mm-net webmaster
Last modified Monday, October 20, 2003 4:38 PM