Speaker Tim Harris
Host Chris Gould-Sandhu
Date recorded 3 June 2012
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 look at the semantics of programming language constructs built over TM—for example, how programs using TM interact with the existing concurrency-control features of a language—and some initial ideas for what it means for a program to use TM correctly.
©2012 Microsoft Corporation. All rights reserved.