|COOKIES: By using this website you agree that we can place Google Analytics Cookies on your device for performance monitoring.|
On-the-fly garbage collection: issues and opportunities
If you have a question about this talk, please contact Jonathan Hayman.
The MirrorGC project is building on-the-fly, concurrent, copying garbage collectors. This work has exposed a number of issues and opportunities. In this talk, I provide a background to concurrent garbage collection, explaining the key issue of synchronisation, either between parallel collector threads or between collector and mutator threads. I then focus on two issues: how to handle Java’s weak references in an on-the-fly collector and whether garbage collection can benefit from transactional memory.
Java’s weak reference types require the garbage collector to process them atomically. However, the implementor is not helped by the informal specification given only in the package documentation. We formalise the specification, investigate alternative implementations (which we model check), and demonstrate that an on-the-fly solution is competitive with other approaches.
Intel’s latest processor microarchitecture, Haswell, provides a restricted form of transactional memory. We explore how this can be applied to three garbage collection scenarios in Jikes RVM . We demonstrate gains in concurrent copying speed over traditional synchronisation mechanisms of 48-101%. We also show how similar but portable performance gains can be achieved through software transactional memory techniques.
This talk is part of the Logic and Semantics Seminar (Computer Laboratory) series.
This talk is included in these lists:
Note that ex-directory lists are not shown.
Other listsMolecular, Structural & Cellular Microbiology Science@Darwin Statistics Group
Other talksDisorganised infant attachment: a reappraisal C++ (part 3) Influence and the role of the expert Local time at zero metric associated to a GFF on a cable graph. Structural insights into severe malaria How do microRNAs work?