SlideShare a Scribd company logo
Software Transactional Memory
as an alternative to lock-based concurrency
Hazel McKendrick
2010
Overview
Concurrency method analogous with database transactions
Alternative to coarse lock-based methods
Shared memory access through atomic transaction
composed of reads and writes
Transaction process
1. Transaction begins
2. Reads and writes are logged separately
3. Read log is verified against memory contents
4. If they don’t match, transaction is aborted and repeated
5. Otherwise writes are permanently committed
Problems
Problems with lock-based concurrency
Composition and scalability
Conceptual difficulties
Deadlock, livelock and race conditions
Does STM adequately resolve these issues?
Application Issues
1. Performance overheads
2. Semantics and ease of use for practitioners
3. Non-transactional code access and migration
Implementation Issues
1. Locking and safety
2. Failure, side-effects and retrying aborted transactions
References I
C. Cascaval, C. Blundell, M. Michael, H. W Cain, P. Wu, S. Chiras, and
S. 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 on
Management 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 on
Object-oriented programming systems and applications, 2007.
T. Harris and K. Fraser.
Language support for lightweight transactions.
ACM SIGPLAN Notices, 38(11), 2003.
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 and
practice 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 practice
of parallel computing, 2010.
T. Shpeisman, V. Menon, A. R Adl-Tabatabai, S. Balensiefer, D. Grossman, R. L
Hudson, 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 algorithms
and architectures, 2008.
Review Structure
1. Introduction
1.1 Brief overview of lock-based concurrency as motivation
1.2 Overview of STM
1.3 Summary of trends in research and implementations
1.4 Summary of concerns in practice
2. Body
2.1 Brief history and development
2.2 Deadlock, livelock and formal correctness
2.3 Scalability, composition, safety and locking
2.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 implementations
3.2 Future avenues for research

More Related Content

Similar to Research Review Slides

WITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSER
WITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSERWITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSER
WITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSER
kevig
 
WITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSER
WITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSERWITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSER
WITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSER
ijnlc
 
Module 04 Content· As a continuation to examining your policies, r
Module 04 Content· As a continuation to examining your policies, rModule 04 Content· As a continuation to examining your policies, r
Module 04 Content· As a continuation to examining your policies, r
IlonaThornburg83
 
Automatic Speech Recognition and Machine Learning for Robotic Arm in Surgery
Automatic Speech Recognition and Machine Learning for Robotic Arm in SurgeryAutomatic Speech Recognition and Machine Learning for Robotic Arm in Surgery
Automatic Speech Recognition and Machine Learning for Robotic Arm in Surgery
DR.P.S.JAGADEESH KUMAR
 
Cloud Era Transactional Processing -- Problems, Strategies and Solutions
Cloud Era Transactional Processing -- Problems, Strategies and SolutionsCloud Era Transactional Processing -- Problems, Strategies and Solutions
Cloud Era Transactional Processing -- Problems, Strategies and Solutions
Yu Liu
 
USING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEY
USING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEYUSING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEY
USING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEY
cseij
 
Bondec - A Sentence Boundary Detector
Bondec - A Sentence Boundary DetectorBondec - A Sentence Boundary Detector
Bondec - A Sentence Boundary Detector
butest
 
Cmc Sig Leon Workshop Mh Rh 200409
Cmc Sig Leon Workshop Mh Rh 200409Cmc Sig Leon Workshop Mh Rh 200409
Cmc Sig Leon Workshop Mh Rh 200409
lamericaana
 
LARGE LANGUAGE MODELS FOR CIPHERS
LARGE LANGUAGE MODELS FOR CIPHERSLARGE LANGUAGE MODELS FOR CIPHERS
LARGE LANGUAGE MODELS FOR CIPHERS
gerogepatton
 
LARGE LANGUAGE MODELS FOR CIPHERS
LARGE LANGUAGE MODELS FOR CIPHERSLARGE LANGUAGE MODELS FOR CIPHERS
LARGE LANGUAGE MODELS FOR CIPHERS
gerogepatton
 
الواجججج
الواججججالواجججج
الواجججج
Tariq Al-Mezni
 
Ad
AdAd
Algoithems and data structures
Algoithems and data structuresAlgoithems and data structures
Algoithems and data structures
adamlongs1983
 
hints for computer system design by Butler Lampson
hints for computer system design by Butler Lampsonhints for computer system design by Butler Lampson
hints for computer system design by Butler Lampson
mustafa sarac
 
A PNML extension for the HCI design
A PNML extension for the HCI designA PNML extension for the HCI design
A PNML extension for the HCI design
Waqas Tariq
 
Read Between The Lines: an Annotation Tool for Multimodal Data
Read Between The Lines: an Annotation Tool for Multimodal DataRead Between The Lines: an Annotation Tool for Multimodal Data
Read Between The Lines: an Annotation Tool for Multimodal Data
Daniele Di Mitri
 
A Deep Learning Model to Predict Congressional Roll Call Votes from Legislati...
A Deep Learning Model to Predict Congressional Roll Call Votes from Legislati...A Deep Learning Model to Predict Congressional Roll Call Votes from Legislati...
A Deep Learning Model to Predict Congressional Roll Call Votes from Legislati...
mlaij
 
SEMANTIC INTEGRATION FOR AUTOMATIC ONTOLOGY MAPPING
SEMANTIC INTEGRATION FOR AUTOMATIC ONTOLOGY MAPPING SEMANTIC INTEGRATION FOR AUTOMATIC ONTOLOGY MAPPING
SEMANTIC INTEGRATION FOR AUTOMATIC ONTOLOGY MAPPING
cscpconf
 
The Revolution Of Cloud Computing
The Revolution Of Cloud ComputingThe Revolution Of Cloud Computing
The Revolution Of Cloud Computing
Carmen Sanborn
 
Continuous Learning Algorithms - a Research Proposal Paper
Continuous Learning Algorithms - a Research Proposal PaperContinuous Learning Algorithms - a Research Proposal Paper
Continuous Learning Algorithms - a Research Proposal Paper
tjb910
 

Similar to Research Review Slides (20)

WITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSER
WITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSERWITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSER
WITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSER
 
WITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSER
WITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSERWITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSER
WITH SEMANTICS AND HIDDEN MARKOV MODELS TO AN ADAPTIVE LOG FILE PARSER
 
Module 04 Content· As a continuation to examining your policies, r
Module 04 Content· As a continuation to examining your policies, rModule 04 Content· As a continuation to examining your policies, r
Module 04 Content· As a continuation to examining your policies, r
 
Automatic Speech Recognition and Machine Learning for Robotic Arm in Surgery
Automatic Speech Recognition and Machine Learning for Robotic Arm in SurgeryAutomatic Speech Recognition and Machine Learning for Robotic Arm in Surgery
Automatic Speech Recognition and Machine Learning for Robotic Arm in Surgery
 
Cloud Era Transactional Processing -- Problems, Strategies and Solutions
Cloud Era Transactional Processing -- Problems, Strategies and SolutionsCloud Era Transactional Processing -- Problems, Strategies and Solutions
Cloud Era Transactional Processing -- Problems, Strategies and Solutions
 
USING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEY
USING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEYUSING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEY
USING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEY
 
Bondec - A Sentence Boundary Detector
Bondec - A Sentence Boundary DetectorBondec - A Sentence Boundary Detector
Bondec - A Sentence Boundary Detector
 
Cmc Sig Leon Workshop Mh Rh 200409
Cmc Sig Leon Workshop Mh Rh 200409Cmc Sig Leon Workshop Mh Rh 200409
Cmc Sig Leon Workshop Mh Rh 200409
 
LARGE LANGUAGE MODELS FOR CIPHERS
LARGE LANGUAGE MODELS FOR CIPHERSLARGE LANGUAGE MODELS FOR CIPHERS
LARGE LANGUAGE MODELS FOR CIPHERS
 
LARGE LANGUAGE MODELS FOR CIPHERS
LARGE LANGUAGE MODELS FOR CIPHERSLARGE LANGUAGE MODELS FOR CIPHERS
LARGE LANGUAGE MODELS FOR CIPHERS
 
الواجججج
الواججججالواجججج
الواجججج
 
Ad
AdAd
Ad
 
Algoithems and data structures
Algoithems and data structuresAlgoithems and data structures
Algoithems and data structures
 
hints for computer system design by Butler Lampson
hints for computer system design by Butler Lampsonhints for computer system design by Butler Lampson
hints for computer system design by Butler Lampson
 
A PNML extension for the HCI design
A PNML extension for the HCI designA PNML extension for the HCI design
A PNML extension for the HCI design
 
Read Between The Lines: an Annotation Tool for Multimodal Data
Read Between The Lines: an Annotation Tool for Multimodal DataRead Between The Lines: an Annotation Tool for Multimodal Data
Read Between The Lines: an Annotation Tool for Multimodal Data
 
A Deep Learning Model to Predict Congressional Roll Call Votes from Legislati...
A Deep Learning Model to Predict Congressional Roll Call Votes from Legislati...A Deep Learning Model to Predict Congressional Roll Call Votes from Legislati...
A Deep Learning Model to Predict Congressional Roll Call Votes from Legislati...
 
SEMANTIC INTEGRATION FOR AUTOMATIC ONTOLOGY MAPPING
SEMANTIC INTEGRATION FOR AUTOMATIC ONTOLOGY MAPPING SEMANTIC INTEGRATION FOR AUTOMATIC ONTOLOGY MAPPING
SEMANTIC INTEGRATION FOR AUTOMATIC ONTOLOGY MAPPING
 
The Revolution Of Cloud Computing
The Revolution Of Cloud ComputingThe Revolution Of Cloud Computing
The Revolution Of Cloud Computing
 
Continuous Learning Algorithms - a Research Proposal Paper
Continuous Learning Algorithms - a Research Proposal PaperContinuous Learning Algorithms - a Research Proposal Paper
Continuous Learning Algorithms - a Research Proposal Paper
 

Recently uploaded

Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
HarisZaheer8
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
flufftailshop
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Jeffrey Haguewood
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
Hiike
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 

Recently uploaded (20)

Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 

Research Review Slides

  • 1. Software Transactional Memory as an alternative to lock-based concurrency Hazel McKendrick 2010
  • 2. Overview Concurrency method analogous with database transactions Alternative to coarse lock-based methods Shared memory access through atomic transaction composed of reads and writes Transaction process 1. Transaction begins 2. Reads and writes are logged separately 3. Read log is verified against memory contents 4. If they don’t match, transaction is aborted and repeated 5. Otherwise writes are permanently committed
  • 3. Problems Problems with lock-based concurrency Composition and scalability Conceptual difficulties Deadlock, livelock and race conditions Does STM adequately resolve these issues? Application Issues 1. Performance overheads 2. Semantics and ease of use for practitioners 3. Non-transactional code access and migration Implementation Issues 1. Locking and safety 2. Failure, side-effects and retrying aborted transactions
  • 4. References I C. Cascaval, C. Blundell, M. Michael, H. W Cain, P. Wu, S. Chiras, and S. 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 on Management 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 on Object-oriented programming systems and applications, 2007. T. Harris and K. Fraser. Language support for lightweight transactions. ACM SIGPLAN Notices, 38(11), 2003.
  • 5. 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 and practice 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 practice of parallel computing, 2010. T. Shpeisman, V. Menon, A. R Adl-Tabatabai, S. Balensiefer, D. Grossman, R. L Hudson, 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 algorithms and architectures, 2008.
  • 6. Review Structure 1. Introduction 1.1 Brief overview of lock-based concurrency as motivation 1.2 Overview of STM 1.3 Summary of trends in research and implementations 1.4 Summary of concerns in practice 2. Body 2.1 Brief history and development 2.2 Deadlock, livelock and formal correctness 2.3 Scalability, composition, safety and locking 2.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 implementations 3.2 Future avenues for research