Presentation is loading. Please wait.

Presentation is loading. Please wait.

Microsoft Research Faculty Summit 2007. Panacea or Pandora’s Box? Software Transactional Memory Panacea or Pandora’s Box? Christos Kozyrakis Assistant.

Similar presentations


Presentation on theme: "Microsoft Research Faculty Summit 2007. Panacea or Pandora’s Box? Software Transactional Memory Panacea or Pandora’s Box? Christos Kozyrakis Assistant."— Presentation transcript:

1 Microsoft Research Faculty Summit 2007

2 Panacea or Pandora’s Box? Software Transactional Memory Panacea or Pandora’s Box? Christos Kozyrakis Assistant Professor of EE & CS Stanford University http://csl.stanford.edu/~christos

3 My Message In a Nutshell Transactional Memory (TM) Atomic access to shared state User declares parallelism  system manages The bad news Still in relatively early R&D stages TM cannot solve all problems around parallelism The good news TM is an very powerful tool Its uses go beyond concurrency management Needed: systems  users & apps  feedback

4 Programming with TM Integration with HL languages and compilers Java/C# (PLDI’06, PPoPP’07), OpenMP (PACT’07), … Declarative approach to sharing data Rich features beyond atomic{} Iterators, variable types, retry, abstract locks, … Speculative parallelization Still missing: Truly HL parallel model(s) E.g., DBs use atomic{} but program SQL Deal with finding concurrency, locality, coordination, and scalability in addition to atomicity

5 TM And I/O Can have some I/O model within TM but… Special libraries, restricted APIs, … Better idea: System-level transactions TM is one of the many system resources Use transactional mechanisms with other resources FS  LFS, Net  message queues, DBMS Coordinate transactions across multiple resources Easier-to-use & flexible model Can this ever work? Look at IBM’s Quicksilver project from the 80s

6 Beyond Concurrency When you build TM, you build Atomicity, consistency, and isolation Mechanisms to monitor memory accesses Great building blocks for Debugging (deterministic replay, watchpoints, parallel bookmarks) Profiling & tuning (contention & locality monitoring) Security (isolated execution, canaries) Fault-tolerance (undo on error, checkpointing) … These can be killer apps for TM Equally important for programmability

7 Can TM use HW Support? Yes HW reduces TM overheads for common case Don’t forget that performance is **the** motivation for parallel programming Low overhead is particularly important when TM is used extensively for non-concurrency purposes But HW provides basic mechanisms, SW sets policies E.g., SigTM design at ISCA’07 HW should have flexible semantics (see ISCA’06) TM apps should work even without HW support

8 © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.


Download ppt "Microsoft Research Faculty Summit 2007. Panacea or Pandora’s Box? Software Transactional Memory Panacea or Pandora’s Box? Christos Kozyrakis Assistant."

Similar presentations


Ads by Google