research review slides

6
Software Transactional Memory as an alternative to lock-based concurrency Hazel McKendrick 2010

Upload: karsithe

Post on 18-Jul-2015

299 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Research Review Slides

Software Transactional Memoryas an alternative to lock-based concurrency

Hazel McKendrick

2010

Page 2: Research Review Slides

Overview

I Concurrency method analogous with database transactions

I Alternative to coarse lock-based methodsI Shared memory access through atomic transaction

I composed of reads and writes

I Transaction process

1. Transaction begins2. Reads and writes are logged separately3. Read log is verified against memory contents4. If they don’t match, transaction is aborted and repeated5. Otherwise writes are permanently committed

Page 3: Research Review Slides

Problems

I Problems with lock-based concurrencyI Composition and scalabilityI Conceptual difficultiesI Deadlock, livelock and race conditions

I Does STM adequately resolve these issues?

I Application Issues

1. Performance overheads2. Semantics and ease of use for practitioners3. Non-transactional code access and migration

I Implementation Issues

1. Locking and safety2. Failure, side-effects and retrying aborted transactions

Page 4: Research Review Slides

References I

C. Cascaval, C. Blundell, M. Michael, H. W Cain, P. Wu, S. Chiras, andS. Chatterjee.Software transactional memory: why is it only a research toy?Communications of the ACM, 51(11), 2008.

S. Chandrasekaran, O. Cooper, A. Deshpande, M. J Franklin, J. M Hellerstein,W. Hong, S. Krishnamurthy, S. R Madden, F. Reiss, and M. A Shah.TelegraphCQ: continuous dataflow processing.In Proceedings of the 2003 ACM SIGMOD international conference onManagement of data, 2003.

D. Dice, O. Shalev, and N. Shavit.Transactional locking II.Distributed Computing, 2006.

D. Grossman.The transactional memory/garbage collection analogy.In Proceedings of the 22nd annual ACM SIGPLAN conference onObject-oriented programming systems and applications, 2007.

T. Harris and K. Fraser.Language support for lightweight transactions.ACM SIGPLAN Notices, 38(11), 2003.

Page 5: Research Review Slides

References II

Tim Harris, Simon Marlow, Simon Peyton-Jones, and Maurice Herlihy.Composable memory transactions.In Proceedings of the tenth ACM SIGPLAN symposium on Principles andpractice of parallel programming, Chicago, IL, USA, 2005. ACM.

H. T. Kung and J. T Robinson.On optimistic methods for concurrency control.ACM Transactions on Database Systems (TODS), 6(2), 1981.

C. J Rossbach, O. S Hofmann, and E. Witchel.Is transactional programming actually easier?In Proceedings of the 15th ACM SIGPLAN symposium on Principles and practiceof parallel computing, 2010.

T. Shpeisman, V. Menon, A. R Adl-Tabatabai, S. Balensiefer, D. Grossman, R. LHudson, K. F Moore, and B. Saha.Enforcing isolation and ordering in STM.ACM SIGPLAN Notices, 42(6), 2007.

A. Welc, B. Saha, and A. R Adl-Tabatabai.Irrevocable transactions and their applications.In Proceedings of the twentieth annual symposium on Parallelism in algorithmsand architectures, 2008.

Page 6: Research Review Slides

Review Structure

1. Introduction

1.1 Brief overview of lock-based concurrency as motivation1.2 Overview of STM1.3 Summary of trends in research and implementations1.4 Summary of concerns in practice

2. Body

2.1 Brief history and development2.2 Deadlock, livelock and formal correctness2.3 Scalability, composition, safety and locking2.4 Conceptual and semantic difficulties - convincing studies?2.5 Performance overheads and implementations available

3. Conclusion

3.1 Evaluate state of the art for practical implementations3.2 Future avenues for research