I am interested in all aspects of
Check through my publications
for a cross-section of my research areas.
Below I highlight my key areas based around the
Complex Systems Engineering
Automatic memory management, or
, is now mainstream
thanks to managed runtime systems like
I work on the construction of rigorous models for memory
management, using techniques like micro-economics, control theory and
statistics-based machine learning.
I am on the steering committee of the UK
memory management network
I focus on the
static single assignment form
See my PhD
for details of extensions to SSA.
I maintain an SSA bibliography
for the community.
As processors provide increasing numbers of hardware threads,
programmers must find appropriate ways to leverage this
parallelism in their software.
I am investigating runtime support for many-core parallelism,
in a managed runtime environment.