BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Talks.cam//talks.cam.ac.uk//
X-WR-CALNAME:Talks.cam
BEGIN:VEVENT
SUMMARY:What does atomic mean? - Tim Harris\, Microsoft Research
DTSTART:20070628T153000Z
DTEND:20070628T163000Z
UID:TALK7633@talks.cam.ac.uk
CONTACT:Wenjun Hu
DESCRIPTION:Over the last few years we've been working on the design and i
 mplementation of "atomic" blocks as an alternative to mutual exclusion loc
 ks for concurrency control in shared memory multi-threaded programs.\n\nIn
  this talk I'll discuss some of the surprising challenges we've found in w
 hat appeared to be a simple part of this work: defining the semantics of p
 rograms using atomic blocks.\n\nFor example\, what happens if a program ac
 cesses a shared object inside an atomic block and\, at the same time\, acc
 esses it in ordinary code?  What if an atomic block is used to make a shar
 ed object private to a thread which then accesses it without any concurren
 cy control?  What happens if an optimizing compiler writer wants to combin
 e adjacent atomic blocks into a larger one?\n\nAs I'll discuss\, deciding 
 how to answer these questions seems to involve a trade off between perform
 ance\, a programming model with "no surprises"\, and a programming model w
 here data can be shared between ordinary accesses and accesses within atom
 ic blocks.\n
LOCATION:Lecture Theatre 2\, Computer Laboratory\, William Gates Builiding
END:VEVENT
END:VCALENDAR
