Student research opportunities
Optimizing Reference Counting Garbage Collectors
Project Code: CECS_70
This project is available at the following levels:
Honours, Summer Scholar, Masters, PhD
Supervisor:
Professor Steve BlackburnOutline:
An important class of garbage collection algorithms use reference counting. For each object, a count is kept of all incoming references. When the count of incoming references reaches zero, the object is clearly unreferenced and may therefore be collected. Reference counting has a number of interesting advantages, including that it depends only on local information to determine the liveness of an object. However, there are also a number of challenges to using reference counting, including the problem of detecting and collecting cyclic structures, and minimizing the overhead of reference counting operations and the space required to keep each object's count.
Goals of this project
This project will implement and evaluate a number of novel optimizations for reference counting in the context of MMTk, the memory management toolkit within the high performance Jikes RVM runtime system.



