|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 listsArctic Ocean Geopolitics Programme ji247's list
Other talksSt Catharine's Political Economy Seminar Series - Speaker: Richard Murphy Cantonese: the biggest endangered language? TBC "Losing the New Great Game" Stability and power sharing in microgrids Application of robust non-linear predictive control to simulating the control behaviour of a racing driver