Transactional Memory – STM in the Small

Writing concurrent programs is notoriously difficult, and is of increasing practical importance. In this series of lectures I introduce “transactional memory” (TM) as a technique for building shared memory data structures. As I illustrate, it can be much easier to build shared memory data structures using TM than it is to use conventional abstractions such as locks, or the atomic compare-and-swap instruction.

In this lecture, I talk about some recent work on a system we call “SpecTM”. SpecTM is a software implementation of TM which we have adapted to let it be used in building high-performance implementations of data structures such as hash tables and skip lists. I present some of our recent performance results, showing how data structures built using SpecTM can perform as well as data structures built over lower-level primitives by expert programmers.

Speaker Details

Tim Harris received his PhD from the University of Cambridge, UK, where he is now a Lecturer in the Systems Research Group. His research interests are in practical concurrent and distributed systems and the programming languages and tools to support them. Current research topics include non-blocking concurrency control primitives, distributed debugging for e-Science applications and the XenoServers public distributed computing project. He is co-author of the undergraduate text book “Operating Systems” published by Pearson and is a Teaching Fellow at Churchill College, Cambridge, UK.

Date:
Speakers:
Tim Harris
Affiliation:
MSRC