The advent of multicore processors has renewed interest in the idea of incorporating transactions into the programming model used to write parallel programs. This approach, known as transactional memory, offers an alternative, and hopefully better, way to coordinate concurrent threads. The ACI (atomicity, consistency, isolation) properties of transactions provide a foundation to ensure that concurrent reads and writes of shared data do not produce inconsistent or incorrect results. At a higher level, a computation wrapped in a transaction executes atomically - either it completes successfully and commits its result in its entirety or it aborts. In addition, isolation ensures the transaction produces the same result as if no other transactions were executing concurrently. Although transactions are not a parallel programming panacea, they shift much of the burden of synchronizing and coordinating parallel computations from a programmer to a compiler, to a language runtime system, or to hardware. The challenge for the system implementers is to build an efficient transactional memory infrastructure. This book presents an overview of the state of the art in the design and implementation of transactional memory systems, as of early spring 2010. Table of Contents: Introduction / Basic Transactions / Building on Basic Transactions / Software Transactional Memory / Hardware-Supported Transactional Memory / Conclusions
Cited By
- Ramos J, Du Bois A and Cavalheiro G Obstruction-Free Distributed Transactional Memory Proceedings of the XXVII Brazilian Symposium on Programming Languages, (33-40)
- Wilkins M, Westrick S, Kandiah V, Bernat A, Suchy B, Deiana E, Campanoni S, Acar U, Dinda P and Hardavellas N WARDen: Specializing Cache Coherence for High-Level Parallel Languages Proceedings of the 21st ACM/IEEE International Symposium on Code Generation and Optimization, (122-135)
- Honorio B, De Carvalho J, Morales C, Baldassin A and Araujo G (2022). Using Barrier Elision to Improve Transactional Code Generation, ACM Transactions on Architecture and Code Optimization, 19:3, (1-23), Online publication date: 30-Sep-2022.
- Conceição J, Du Bois A, Feitosa S, Cavalheiro G and Ribeiro R Open transactional actions: interacting with non-transactional resources in STM Haskell Proceedings of the 15th ACM SIGPLAN International Haskell Symposium, (54-65)
- Zhang R, Bond M and Zhang Y Cape: compiler-aided program transformation for HTM-based cache side-channel defense Proceedings of the 31st ACM SIGPLAN International Conference on Compiler Construction, (181-193)
- D. Jardim A, Oliveira K, J. Cardoso D, Di Domenico D, R. Du Bois A and H. Cavalheiro G An extension for Transactional Memory in OpenMP Proceedings of the 25th Brazilian Symposium on Programming Languages, (58-65)
- Popovic M, Popovic M, Kordic B and Zhu H PSTM Transaction Scheduler Verification Based on CSP and Testing 7th Conference on the Engineering of Computer Based Systems, (1-10)
- Swalens J, Koster J and Meuter W (2021). Chocola, ACM Transactions on Programming Languages and Systems, 42:4, (1-56), Online publication date: 31-Dec-2021.
- Baldassin A, Murari R, de Carvalho J, Araujo G, Castro D, Barreto J and Romano P NV-PhTM: An Efficient Phase-Based Transactional System for Non-volatile Memory Euro-Par 2020: Parallel Processing, (477-492)
- Genç K, Bond M and Xu G Crafty: efficient, HTM-compatible persistent transactions Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation, (59-74)
- Quillet A, Queudet A and Lime D Analysis of Polka Contention Manager for use in Multicore Hard Real-Time Systems Proceedings of the 28th International Conference on Real-Time Networks and Systems, (11-21)
- Popovic M, Popovic M, Ghilezan S and Kordic B Formal Verification of Python Software Transactional Memory Serializability Based on the Push/Pull Semantic Model Proceedings of the 6th Conference on the Engineering of Computer Based Systems, (1-8)
- Kordic B, Popovic M, Popovic M, Goldstein M, Amitay M and Dayan D A Protein Structure Prediction Program Architecture Based on a Software Transactional Memory Proceedings of the 6th Conference on the Engineering of Computer Based Systems, (1-9)
- Villegas A, Navarro A, Asenjo R and Plata O (2019). Toward a software transactional memory for heterogeneous CPU–GPU processors, The Journal of Supercomputing, 75:8, (4177-4192), Online publication date: 1-Aug-2019.
- Li G, Liu H, Chen X, Gunawi H and Lu S DFix: automatically fixing timing bugs in distributed systems Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation, (994-1009)
- Saad M, Palmieri R and Ravindran B (2019). Lerna, ACM Transactions on Storage, 15:1, (1-24), Online publication date: 20-Apr-2019.
- Dongol B, Jagadeesan R and Riely J Modular transactions Proceedings of the 24th Symposium on Principles and Practice of Parallel Programming, (82-93)
- de Carvalho J, Araujo G and Baldassin A (2019). The Case for Phase-Based Transactional Memory, IEEE Transactions on Parallel and Distributed Systems, 30:2, (459-472), Online publication date: 1-Feb-2019.
- Chong N, Sorensen T and Wickerson J (2018). The semantics of transactions and weak memory in x86, Power, ARM, and C++, ACM SIGPLAN Notices, 53:4, (211-225), Online publication date: 2-Dec-2018.
- Swalens J, De Koster J and De Meuter W Chocola: integrating futures, actors, and transactions Proceedings of the 8th ACM SIGPLAN International Workshop on Programming Based on Actors, Agents, and Decentralized Control, (33-43)
- Park S, Hughes C and Prvulovic M Transactional pre-abort handlers in hardware transactional memory Proceedings of the 27th International Conference on Parallel Architectures and Compilation Techniques, (1-11)
- Daloze B, Tal A, Marr S, Mössenböck H and Petrank E (2018). Parallelization of dynamic languages: synchronizing built-in collections, Proceedings of the ACM on Programming Languages, 2:OOPSLA, (1-30), Online publication date: 24-Oct-2018.
- Gramoli V, Guerraoui R and Trigonakis V (2018). $$\hbox {TM}^{2}$$TM2C, Distributed Computing, 31:5, (367-388), Online publication date: 1-Oct-2018.
- Zhang D, Laborde P, Lebanoff L and Dechev D (2018). Lock-Free Transactional Transformation for Linked Data Structures, ACM Transactions on Parallel Computing, 5:1, (1-37), Online publication date: 19-Sep-2018.
- Yan Z, Jiang H, Srisa-an W, Seth S and Tan Y Leverage Redundancy in Hardware Transactional Memory to Improve Cache Reliability Proceedings of the 47th International Conference on Parallel Processing, (1-10)
- Chong N, Sorensen T and Wickerson J The semantics of transactions and weak memory in x86, Power, ARM, and C++ Proceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation, (211-225)
- Saad M, Palmieri R and Ravindran B Lerna Proceedings of the 11th ACM International Systems and Storage Conference, (37-48)
- Joshi A, Nagarajan V, Cintra M and Viglas S DHTM Proceedings of the 45th Annual International Symposium on Computer Architecture, (452-465)
- Alistarh D, Kopinsky J, Kuznetsov P, Ravi S and Shavit N (2018). Inherent limitations of hybrid transactional memory, Distributed Computing, 31:3, (167-185), Online publication date: 1-Jun-2018.
- Schwarz M, Gruss D, Lipp M, Maurice C, Schuster T, Fogh A and Mangard S Automated Detection, Exploitation, and Elimination of Double-Fetch Bugs using Modern CPU Features Proceedings of the 2018 on Asia Conference on Computer and Communications Security, (587-600)
- Raminhas P, Issa S and Romano P Enhancing efficiency of hybrid transactional memory via dynamic data partitioning schemes Proceedings of the 18th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, (51-61)
- Cohen N, Petrank E and Larus J (2018). Reducing transaction aborts by looking to the future, ACM SIGPLAN Notices, 53:1, (385-386), Online publication date: 23-Mar-2018.
- Khyzha A, Attiya H, Gotsman A and Rinetzky N (2018). Safe privatization in transactional memory, ACM SIGPLAN Notices, 53:1, (233-245), Online publication date: 23-Mar-2018.
- Cohen N, Petrank E and Larus J Reducing transaction aborts by looking to the future Proceedings of the 23rd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, (385-386)
- Khyzha A, Attiya H, Gotsman A and Rinetzky N Safe privatization in transactional memory Proceedings of the 23rd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, (233-245)
- Attiya H, Gotsman A, Hans S and Rinetzky N (2017). Characterizing Transactional Memory Consistency Conditions Using Observational Refinement, Journal of the ACM, 65:1, (1-44), Online publication date: 24-Jan-2018.
- Ros A, Leonardsson C, Sakalis C and Kaxiras S (2017). Efficient Self-Invalidation/Self-Downgrade for Critical Sections with Relaxed Semantics, IEEE Transactions on Parallel and Distributed Systems, 28:12, (3413-3425), Online publication date: 1-Dec-2017.
- Yates R and Scott M (2017). Improving STM performance with transactional structs, ACM SIGPLAN Notices, 52:10, (186-196), Online publication date: 31-Oct-2017.
- Zhang M, Biswas S and Bond M (2017). Avoiding consistency exceptions under strong memory models, ACM SIGPLAN Notices, 52:9, (115-127), Online publication date: 31-Oct-2017.
- Cao M, Zhang M, Sengupta A, Biswas S and Bond M (2017). Hybridizing and Relaxing Dependence Tracking for Efficient Parallel Runtime Support, ACM Transactions on Parallel Computing, 4:2, (1-42), Online publication date: 10-Oct-2017.
- Yates R and Scott M Improving STM performance with transactional structs Proceedings of the 10th ACM SIGPLAN International Symposium on Haskell, (186-196)
- Kordic B, Popovic M, Ghilezan S and Basicevic I An approach to formal verification of python software transactional memory Proceedings of the Fifth European Conference on the Engineering of Computer-Based Systems, (1-10)
- Zhang M, Biswas S and Bond M Avoiding consistency exceptions under strong memory models Proceedings of the 2017 ACM SIGPLAN International Symposium on Memory Management, (115-127)
- de Carvalho J, Araujo G and Baldassin A Revisiting phased transactional memory Proceedings of the International Conference on Supercomputing, (1-10)
- Quislant R, Gutierrez E, Zapata E and Plata O (2017). Enhancing scalability in best-effort hardware transactional memory systems, Journal of Parallel and Distributed Computing, 104:C, (73-87), Online publication date: 1-Jun-2017.
- Shin J, Balakrishnan M, Marian T and Weatherspoon H (2017). Isotope, ACM Transactions on Storage, 13:1, (1-25), Online publication date: 24-Mar-2017.
- Golan-Gueta G, Ramalingam G, Sagiv M and Yahav E (2017). Automatic Scalable Atomicity via Semantic Locking, ACM Transactions on Parallel Computing, 3:4, (1-29), Online publication date: 23-Mar-2017.
- Sengupta A, Cao M, Bond M and Kulkarni M Legato: end-to-end bounded region serializability using commodity hardware transactional memory Proceedings of the 2017 International Symposium on Code Generation and Optimization, (1-13)
- Bonetta D, Salucci L, Marr S and Binder W (2016). GEMs: shared-memory parallel programming for Node.js, ACM SIGPLAN Notices, 51:10, (531-547), Online publication date: 5-Dec-2016.
- Mohamedin M, Palmieri R, Peluso S and Ravindran B (2016). On designing NUMA-aware concurrency control for scalable transactional memory, ACM SIGPLAN Notices, 51:8, (1-2), Online publication date: 9-Nov-2016.
- Bonetta D, Salucci L, Marr S and Binder W GEMs: shared-memory parallel programming for Node.js Proceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications, (531-547)
- Kolli A, Rosen J, Diestelhorst S, Saidi A, Pelley S, Liu S, Chen P and Wenisch T Delegated persist ordering The 49th Annual IEEE/ACM International Symposium on Microarchitecture, (1-13)
- Litz H, Braun B and Cheriton D EXCITE-VM Proceedings of the 2016 International Conference on Parallel Architectures and Compilation, (401-412)
- Marques A and Baldassin A Energy-aware scheduling in transactional memory systems Proceedings of the 29th Symposium on Integrated Circuits and Systems Design: Chip on the Mountains, (1-6)
- Quislant R, Gutierrez E, Zapata E and Plata O Insights into the Fallback Path of Best-Effort Hardware Transactional Memory Systems Proceedings of the 22nd International Conference on Euro-Par 2016: Parallel Processing - Volume 9833, (251-263)
- Spiegelman A, Golan-Gueta G and Keidar I (2016). Transactional data structure libraries, ACM SIGPLAN Notices, 51:6, (682-696), Online publication date: 1-Aug-2016.
- Viotti P and Vukolić M (2016). Consistency in Non-Transactional Distributed Storage Systems, ACM Computing Surveys, 49:1, (1-34), Online publication date: 28-Jul-2016.
- Zhang D and Dechev D Lock-free Transactions without Rollbacks for Linked Data Structures Proceedings of the 28th ACM Symposium on Parallelism in Algorithms and Architectures, (325-336)
- Spiegelman A, Golan-Gueta G and Keidar I Transactional data structure libraries Proceedings of the 37th ACM SIGPLAN Conference on Programming Language Design and Implementation, (682-696)
- Herman N, Inala J, Huang Y, Tsai L, Kohler E, Liskov B and Shrira L Type-aware transactions for faster concurrent code Proceedings of the Eleventh European Conference on Computer Systems, (1-16)
- Ramos J, Du Bois A and Pilla M An embedded domain specific language for distributed memory transactions in Java Proceedings of the 31st Annual ACM Symposium on Applied Computing, (1980-1985)
- Zhang M, Biswas S and Bond M Relaxed dependence tracking for parallel runtime support Proceedings of the 25th International Conference on Compiler Construction, (45-55)
- Mohamedin M, Palmieri R, Peluso S and Ravindran B On designing NUMA-aware concurrency control for scalable transactional memory Proceedings of the 21st ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, (1-2)
- Lu Y, Shu J and Sun L (2016). Blurred Persistence, ACM Transactions on Storage, 12:1, (1-29), Online publication date: 26-Feb-2016.
- Shin J, Balakrishnan M, Marian T and Weatherspoon H Isotope Proceedings of the 14th Usenix Conference on File and Storage Technologies, (23-37)
- Yiapanis P, Brown G and Luján M (2015). Compiler-Driven Software Speculation for Thread-Level Parallelism, ACM Transactions on Programming Languages and Systems, 38:2, (1-45), Online publication date: 4-Jan-2016.
- Biswas S, Zhang M, Bond M and Lucia B (2015). Valor: efficient, software-only region conflict exceptions, ACM SIGPLAN Notices, 50:10, (241-259), Online publication date: 18-Dec-2015.
- Golan-Gueta G, Ramalingam G, Sagiv M and Yahav E (2015). Automatic scalable atomicity via semantic locking, ACM SIGPLAN Notices, 50:8, (31-41), Online publication date: 18-Dec-2015.
- Zhang M, Huang J, Cao M and Bond M (2015). Low-overhead software transactional memory with progress guarantees and strong semantics, ACM SIGPLAN Notices, 50:8, (97-108), Online publication date: 18-Dec-2015.
- Baldassin A, Borin E and Araujo G (2015). Performance implications of dynamic memory allocators on transactional memory systems, ACM SIGPLAN Notices, 50:8, (87-96), Online publication date: 18-Dec-2015.
- Cotard S, Queudet A, Béchennec J, Faucou S and Trinquet Y (2015). STM-HRT, ACM Transactions on Embedded Computing Systems, 14:4, (1-25), Online publication date: 8-Dec-2015.
- Jeffrey M, Subramanian S, Yan C, Emer J and Sanchez D A scalable architecture for ordered parallelism Proceedings of the 48th International Symposium on Microarchitecture, (228-241)
- Ghosh A, Chaki R and Chaki N (2015). A new concurrency control mechanism for multi-threaded environment using transactional memory, The Journal of Supercomputing, 71:11, (4095-4115), Online publication date: 1-Nov-2015.
- Sengupta A Efficient support for strong semantics in transactional and non-transactional programs Companion Proceedings of the 2015 ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity, (67-68)
- Biswas S, Zhang M, Bond M and Lucia B Valor: efficient, software-only region conflict exceptions Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications, (241-259)
- Alistarh D, Kopinsky J, Kuznetsov P, Ravi S and Shavit N Inherent Limitations of Hybrid Transactional Memory Proceedings of the 29th International Symposium on Distributed Computing - Volume 9363, (185-199)
- Arbel M, Golan-Gueta G, Hillel E and Keidar I Towards Automatic Lock Removal for Scalable Synchronization Proceedings of the 29th International Symposium on Distributed Computing - Volume 9363, (170-184)
- Ziv O, Aiken A, Golan-Gueta G, Ramalingam G and Sagiv M (2015). Composing concurrency control, ACM SIGPLAN Notices, 50:6, (240-249), Online publication date: 7-Aug-2015.
- Bushkov V and Guerraoui R Safety-Liveness Exclusion in Distributed Computing Proceedings of the 2015 ACM Symposium on Principles of Distributed Computing, (227-236)
- Mohamedin M, Palmieri R and Ravindran B On Scheduling Best-Effort HTM Transactions Proceedings of the 27th ACM symposium on Parallelism in Algorithms and Architectures, (74-76)
- Mohamedin M, Palmieri R, Hassan A and Ravindran B Managing Resource Limitation of Best-Effort HTM Proceedings of the 27th ACM symposium on Parallelism in Algorithms and Architectures, (71-73)
- Hay J and Wilsey P Experiments with Hardware-based Transactional Memory in Parallel Simulation Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation, (75-86)
- Scott M (2015). Transactional Memory Today, ACM SIGACT News, 46:2, (96-104), Online publication date: 4-Jun-2015.
- Ziv O, Aiken A, Golan-Gueta G, Ramalingam G and Sagiv M Composing concurrency control Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation, (240-249)
- Hayduk Y, Sobe A and Felber P Dynamic Message Processing and Transactional Memory in the Actor Model Proceedings of the 15th IFIP WG 6.1 International Conference on Distributed Applications and Interoperable Systems - Volume 9038, (94-107)
- Papagiannopoulou D, Capodanno G, Moreshet T, Herlihy M and Bahar R (2015). Energy-Efficient and High-Performance Lock Speculation Hardware for Embedded Multicore Systems, ACM Transactions on Embedded Computing Systems, 14:3, (1-27), Online publication date: 21-May-2015.
- Sun L, Lu Y and Shu J DP2 Proceedings of the 12th ACM International Conference on Computing Frontiers, (1-8)
- Trono J (2015). Transactions, Journal of Computing Sciences in Colleges, 30:5, (160-166), Online publication date: 1-May-2015.
- Duarte R, Du Bois A, Pilla M and Cavalheiro G Composable memory transactions with eager version management Proceedings of the 30th Annual ACM Symposium on Applied Computing, (2093-2098)
- Golan-Gueta G, Ramalingam G, Sagiv M and Yahav E Automatic scalable atomicity via semantic locking Proceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, (31-41)
- Zhang M, Huang J, Cao M and Bond M Low-overhead software transactional memory with progress guarantees and strong semantics Proceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, (97-108)
- Baldassin A, Borin E and Araujo G Performance implications of dynamic memory allocators on transactional memory systems Proceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, (87-96)
- Srinath S, Ilbeyi B, Tan M, Liu G, Zhang Z and Batten C Architectural Specialization for Inter-Iteration Loop Dependence Patterns Proceedings of the 47th Annual IEEE/ACM International Symposium on Microarchitecture, (583-595)
- Gonzalez-Mesa M, Gutierrez E, Zapata E and Plata O (2014). Effective Transactional Memory Execution Management for Improved Concurrency, ACM Transactions on Architecture and Code Optimization, 11:3, (1-27), Online publication date: 27-Oct-2014.
- Qian X, Sahelices B and Torrellas J (2014). OmniOrder, ACM SIGARCH Computer Architecture News, 42:3, (421-432), Online publication date: 16-Oct-2014.
- Herlihy M (2014). The Future of Synchronization on Multicores, Ubiquity, 2014:September, (1-9), Online publication date: 22-Sep-2014.
- Ravichandran K, Gavrilovska A and Pande S DeSTM Proceedings of the 23rd international conference on Parallel architectures and compilation, (213-224)
- Calciu I, Gottschlich J, Shpeisman T, Pokam G and Herlihy M Invyswell Proceedings of the 23rd international conference on Parallel architectures and compilation, (187-200)
- Qian X, Sahelices B and Torrellas J OmniOrder Proceeding of the 41st annual international symposium on Computer architecuture, (421-432)
- Sharma G and Busch C (2014). Transactional memory, ACM SIGACT News, 45:2, (74-103), Online publication date: 9-Jun-2014.
- Gajinov V, Stipić S, Erić I, Unsal O, Ayguadé E and Cristal A DaSH: a benchmark suite for hybrid dataflow and shared memory programming models Proceedings of the 11th ACM Conference on Computing Frontiers, (1-11)
- Stipić S, Karakostas V, Smiljković V, Gajinov V, Unsal O, Cristal A and Valero M Dynamic transaction coalescing Proceedings of the 11th ACM Conference on Computing Frontiers, (1-10)
- Gonzalez-Mesa M, Quislant R, Gutierrez E and Plata O Exploring Irregular Reduction Support in Transactional Memory Algorithms and Architectures for Parallel Processing, (257-266)
- Hayduk Y, Sobe A, Harmanci D, Marlier P and Felber P Speculative Concurrent Processing with Transactional Memory in the Actor Model Proceedings of the 17th International Conference on Principles of Distributed Systems - Volume 8304, (160-175)
- Fung W and Aamodt T Energy efficient GPU transactional memory via space-time optimizations Proceedings of the 46th Annual IEEE/ACM International Symposium on Microarchitecture, (408-420)
- Stipić S, Smiljković V, Unsal O, Cristal A and Valero M (2013). Profile-guided transaction coalescing—lowering transactional overheads by merging transactions, ACM Transactions on Architecture and Code Optimization, 10:4, (1-18), Online publication date: 1-Dec-2013.
- Armejach A, Titos-Gil R, Negi A, Unsal O and Cristal A (2013). Techniques to improve performance in requester-wins hardware transactional memory, ACM Transactions on Architecture and Code Optimization, 10:4, (1-25), Online publication date: 1-Dec-2013.
- Ruan W, Liu Y and Spear M (2013). Boosting timestamp-based transactional memory by exploiting hardware cycle counters, ACM Transactions on Architecture and Code Optimization, 10:4, (1-21), Online publication date: 1-Dec-2013.
- Wamhoff J, Schwalbe M, Faqeh R, Fetzer C and Felber P Transactional Encoding for Tolerating Transient Hardware Errors 15th International Symposium on Stabilization, Safety, and Security of Distributed Systems - Volume 8255, (1-16)
- Schmidt-Schauß M and Sabel D (2013). Correctness of an STM Haskell implementation, ACM SIGPLAN Notices, 48:9, (161-172), Online publication date: 12-Nov-2013.
- Zhao J, Lublinerman R, Budimlić Z, Chaudhuri S and Sarkar V (2013). Isolation for nested task parallelism, ACM SIGPLAN Notices, 48:10, (571-588), Online publication date: 12-Nov-2013.
- Ravichandran K and Pande S (2013). Multiverse, ACM SIGPLAN Notices, 48:10, (533-552), Online publication date: 12-Nov-2013.
- Bond M, Kulkarni M, Cao M, Zhang M, Fathi Salmi M, Biswas S, Sengupta A and Huang J (2013). OCTET, ACM SIGPLAN Notices, 48:10, (693-712), Online publication date: 12-Nov-2013.
- Zhao J, Lublinerman R, Budimlić Z, Chaudhuri S and Sarkar V Isolation for nested task parallelism Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications, (571-588)
- Ravichandran K and Pande S Multiverse Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications, (533-552)
- Bond M, Kulkarni M, Cao M, Zhang M, Fathi Salmi M, Biswas S, Sengupta A and Huang J OCTET Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications, (693-712)
- Metzlaff S, Weis S and Ungerer T Leveraging transactional memory for a predictable execution of applications composed of hard real-time and best-effort tasks Proceedings of the 21st International conference on Real-Time Networks and Systems, (45-54)
- Lesani M and Palsberg J Proving Non-opacity Proceedings of the 27th International Symposium on Distributed Computing - Volume 8205, (106-120)
- Schmidt-Schauß M and Sabel D Correctness of an STM Haskell implementation Proceedings of the 18th ACM SIGPLAN international conference on Functional programming, (161-172)
- Mai Thuong Tran T, Steffen M and Truong H Compositional Static Analysis for Implicit Join Synchronization in a Transactional Setting Proceedings of the 11th International Conference on Software Engineering and Formal Methods - Volume 8137, (212-228)
- Turcu A, Ravindran B and Palmieri R Hyflow2 Proceedings of the 2013 International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools, (79-88)
- Schindewolf M, Rocker B, Karl W and Heuveline V Evaluation of two formulations of the conjugate gradients method with transactional memory Proceedings of the 19th international conference on Parallel Processing, (508-520)
- Bonetta D, Binder W and Pautasso C (2013). TigerQuoll, ACM SIGPLAN Notices, 48:8, (251-260), Online publication date: 23-Aug-2013.
- Heumann S, Adve V and Wang S (2013). The tasks with effects model for safe concurrency, ACM SIGPLAN Notices, 48:8, (239-250), Online publication date: 23-Aug-2013.
- Wamhoff J, Fetzer C, Felber P, Rivière E and Muller G (2013). FastLane, ACM SIGPLAN Notices, 48:8, (113-122), Online publication date: 23-Aug-2013.
- Attiya H, Gotsman A, Hans S and Rinetzky N A programming language perspective on transactional memory consistency Proceedings of the 2013 ACM symposium on Principles of distributed computing, (309-318)
- Ouyang J, Chen P, Flinn J and Narayanasamy S ...and region serializability for all Proceedings of the 5th USENIX Conference on Hot Topics in Parallelism, (12-12)
- Golan-Gueta G, Ramalingam G, Sagiv M and Yahav E (2013). Concurrent libraries with foresight, ACM SIGPLAN Notices, 48:6, (263-274), Online publication date: 23-Jun-2013.
- Golan-Gueta G, Ramalingam G, Sagiv M and Yahav E Concurrent libraries with foresight Proceedings of the 34th ACM SIGPLAN Conference on Programming Language Design and Implementation, (263-274)
- Didona D, Felber P, Harmanci D, Romano P and Schenker J Identifying the Optimal Level of Parallelism in Transactional Memory Applications Revised Selected Papers of the First International Conference on Networked Systems - Volume 7853, (233-247)
- Abdulla P, Dwarkadas S, Rezine A, Shriraman A and Zhu Y Verifying safety and liveness for the FlexTM hybrid transactional memory Proceedings of the Conference on Design, Automation and Test in Europe, (785-790)
- Yalcin G, Unsal O and Cristal A FaulTM Proceedings of the Conference on Design, Automation and Test in Europe, (220-225)
- Bonetta D, Binder W and Pautasso C TigerQuoll Proceedings of the 18th ACM SIGPLAN symposium on Principles and practice of parallel programming, (251-260)
- Heumann S, Adve V and Wang S The tasks with effects model for safe concurrency Proceedings of the 18th ACM SIGPLAN symposium on Principles and practice of parallel programming, (239-250)
- Wamhoff J, Fetzer C, Felber P, Rivière E and Muller G FastLane Proceedings of the 18th ACM SIGPLAN symposium on Principles and practice of parallel programming, (113-122)
- Sun N, Tan G, Zhang X, Yao E and Yan J Vlock Proceedings of the 2013 IEEE/ACM International Symposium on Code Generation and Optimization (CGO), (1-10)
- Demsky B and Lam P (2013). Views, ACM Transactions on Software Engineering and Methodology, 22:1, (1-33), Online publication date: 1-Feb-2013.
- Yan Z, Jiang H, Tan Y and Feng D (2013). An integrated pseudo-associativity and relaxed-order approach to hardware transactional memory, ACM Transactions on Architecture and Code Optimization, 9:4, (1-26), Online publication date: 1-Jan-2013.
- Gramoli V and Milani A (2012). WTTM 2012, the fourth workshop on the theory of transactional memory, ACM SIGACT News, 43:4, (116-122), Online publication date: 19-Dec-2012.
- Barnett G and Qin S A composable mixed mode concurrency control semantics for transactional programs Proceedings of the 14th international conference on Formal Engineering Methods: formal methods and software engineering, (38-53)
- Schindewolf M, Bihari B, Gyllenhaal J, Schulz M, Wang A and Karl W What scientific applications can benefit from hardware transactional memory? Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis, (1-11)
- Afek Y, Matveev A and Shavit N Pessimistic software lock-elision Proceedings of the 26th international conference on Distributed Computing, (297-311)
- Dalessandro L and Scott M Sandboxing transactional memory Proceedings of the 21st international conference on Parallel architectures and compilation techniques, (171-180)
- Gottschlich J, Herlihy M, Pokam G and Siek J Visualizing transactional memory Proceedings of the 21st international conference on Parallel architectures and compilation techniques, (159-170)
- Singh A, Narayanasamy S, Marino D, Millstein T and Musuvathi M (2012). End-to-end sequential consistency, ACM SIGARCH Computer Architecture News, 40:3, (524-535), Online publication date: 5-Sep-2012.
- Gayatri R, Badia R, Ayguade E, Luj$#225;n M and Watson I Transactional access to shared memory in starss, a task based programming model Proceedings of the 18th international conference on Parallel Processing, (514-525)
- de Kruijf M, Sankaralingam K and Jha S (2012). Static analysis and compiler design for idempotent processing, ACM SIGPLAN Notices, 47:6, (475-486), Online publication date: 6-Aug-2012.
- Bushkov V, Guerraoui R and Kapałka M On the liveness of transactional memory Proceedings of the 2012 ACM symposium on Principles of distributed computing, (9-18)
- Liu Y, Diestelhorst S and Spear M Delegation and nesting in best-effort hardware transactional memory Proceedings of the twenty-fourth annual ACM symposium on Parallelism in algorithms and architectures, (38-47)
- de Kruijf M, Sankaralingam K and Jha S Static analysis and compiler design for idempotent processing Proceedings of the 33rd ACM SIGPLAN Conference on Programming Language Design and Implementation, (475-486)
- Singh A, Narayanasamy S, Marino D, Millstein T and Musuvathi M End-to-end sequential consistency Proceedings of the 39th Annual International Symposium on Computer Architecture, (524-535)
- Heumann S and Adve V Disciplined concurrent programming using tasks with effects Proceedings of the 4th USENIX conference on Hot Topics in Parallelism, (7-7)
- Turcu A and Ravindran B On open nesting in distributed transactional memory Proceedings of the 5th Annual International Systems and Storage Conference, (1-12)
- El-Shambakey M and Ravindran B STM concurrency control for embedded real-time software with tighter time bounds Proceedings of the 49th Annual Design Automation Conference, (437-446)
- Volos H, Tack A, Swift M and Lu S (2012). Applying transactional memory to concurrency bugs, ACM SIGPLAN Notices, 47:4, (211-222), Online publication date: 1-Jun-2012.
- Schindewolf M and Karl W Capturing transactional memory application's behavior --- the prerequisite for performance analysis Proceedings of the 2012 international conference on Multicore Software Engineering, Performance, and Tools, (30-41)
- Herath I, Rosas-Ham D, Lujan M and Watson I SnCTM Proceedings of the 9th conference on Computing Frontiers, (65-74)
- Volos H, Tack A, Swift M and Lu S (2012). Applying transactional memory to concurrency bugs, ACM SIGARCH Computer Architecture News, 40:1, (211-222), Online publication date: 18-Apr-2012.
- Dragojević A and Harris T STM in the small Proceedings of the 7th ACM european conference on Computer Systems, (1-14)
- Stipić S, Tomić S, Zyulkyarov F, Cristal A, Unsal O and Valero M TagTM - accelerating STMs with hardware tags for fast meta-data access Proceedings of the Conference on Design, Automation and Test in Europe, (39-44)
- Volos H, Tack A, Swift M and Lu S Applying transactional memory to concurrency bugs Proceedings of the seventeenth international conference on Architectural Support for Programming Languages and Operating Systems, (211-222)
- Botincan M, Dodds M and Jagannathan S Resource-sensitive synchronization inference by abduction Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (309-322)
- Botincan M, Dodds M and Jagannathan S (2012). Resource-sensitive synchronization inference by abduction, ACM SIGPLAN Notices, 47:1, (309-322), Online publication date: 18-Jan-2012.
- Bieniusa A and Fuhrmann T Lifting the barriers --- reducing latencies with transparent transactional memory Proceedings of the 13th international conference on Distributed Computing and Networking, (16-30)
- Wang Q, Kulkarni S, Cavazos J and Spear M (2012). A transactional memory with automatic performance tuning, ACM Transactions on Architecture and Code Optimization, 8:4, (1-23), Online publication date: 1-Jan-2012.
- Zhang B and Ravindran B A quorum-based replication framework for distributed software transactional memory Proceedings of the 15th international conference on Principles of Distributed Systems, (18-33)
- Fung W, Singh I, Brownsword A and Aamodt T Hardware transactional memory for GPU architectures Proceedings of the 44th Annual IEEE/ACM International Symposium on Microarchitecture, (296-307)
- Gupta G and Sohi G Dataflow execution of sequential imperative programs on multicore architectures Proceedings of the 44th Annual IEEE/ACM International Symposium on Microarchitecture, (59-70)
- Anjo I and Cachopo J Lightweight transactional arrays for read-dominated workloads Proceedings of the 11th international conference on Algorithms and architectures for parallel processing - Volume Part II, (1-13)
- Nicácio D, Baldassin A and Araújo G LUTS Proceedings of the 11th international conference on Algorithms and architectures for parallel processing - Volume Part I, (144-157)
- Fernandes S and Cachopo J Strict serializability is harmless Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion, (257-276)
- Lublinerman R, Zhao J, Budimlić Z, Chaudhuri S and Sarkar V Delegated isolation Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications, (885-902)
- Aftandilian E, Guyer S, Vechev M and Yahav E Asynchronous assertions Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications, (275-288)
- Golan-Gueta G, Bronson N, Aiken A, Ramalingam G, Sagiv M and Yahav E Automatic fine-grain locking using shape properties Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications, (225-242)
- Lublinerman R, Zhao J, Budimlić Z, Chaudhuri S and Sarkar V (2011). Delegated isolation, ACM SIGPLAN Notices, 46:10, (885-902), Online publication date: 18-Oct-2011.
- Aftandilian E, Guyer S, Vechev M and Yahav E (2011). Asynchronous assertions, ACM SIGPLAN Notices, 46:10, (275-288), Online publication date: 18-Oct-2011.
- Golan-Gueta G, Bronson N, Aiken A, Ramalingam G, Sagiv M and Yahav E (2011). Automatic fine-grain locking using shape properties, ACM SIGPLAN Notices, 46:10, (225-242), Online publication date: 18-Oct-2011.
- Ferri C, Marongiu A, Lipton B, Bahar R, Moreshet T, Benini L and Herlihy M SoC-TM Proceedings of the seventh IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis, (39-48)
- Harmanci D, Gramoli V and Felber P Atomic boxes Proceedings of the 25th European conference on Object-oriented programming, (634-657)
- Martin J, Rossbach C and Isard M SPECTRE Proceedings of the Second Asia-Pacific Workshop on Systems, (1-5)
- Du Bois A An implementation of composable memory transactions in Haskell Proceedings of the 10th international conference on Software composition, (34-50)
- Saad M and Ravindran B HyFlow Proceedings of the 20th international symposium on High performance distributed computing, (265-266)
- Tabba F, Hay A and Goodman J Transactional conflict decoupling and value prediction Proceedings of the international conference on Supercomputing, (33-42)
- Seyedi A, Armejach A, Cristal A, Unsal O, Hur I and Valero M Circuit design of a dual-versioning L1 data cache for optimistic concurrency Proceedings of the 21st edition of the great lakes symposium on Great lakes symposium on VLSI, (325-330)
- Mehrara M and Mahlke S Dynamically accelerating client-side web applications through decoupled execution Proceedings of the 9th Annual IEEE/ACM International Symposium on Code Generation and Optimization, (74-84)
- Chakrabarti D, Banerjee P, Boehm H, Joisha P and Schreiber R The runtime abort graph and its application to software transactional memory optimization Proceedings of the 9th Annual IEEE/ACM International Symposium on Code Generation and Optimization, (42-53)
- Dalessandro L, Carouge F, White S, Lev Y, Moir M, Scott M and Spear M (2011). Hybrid NOrec, ACM SIGPLAN Notices, 46:3, (39-52), Online publication date: 17-Mar-2011.
- Dalessandro L, Carouge F, White S, Lev Y, Moir M, Scott M and Spear M (2011). Hybrid NOrec, ACM SIGARCH Computer Architecture News, 39:1, (39-52), Online publication date: 17-Mar-2011.
- Dalessandro L, Carouge F, White S, Lev Y, Moir M, Scott M and Spear M Hybrid NOrec Proceedings of the sixteenth international conference on Architectural support for programming languages and operating systems, (39-52)
- Vallejo E, Beivide R, Cristal A, Harris T, Vallejo F, Unsal O and Valero M Architectural Support for Fair Reader-Writer Locking Proceedings of the 2010 43rd Annual IEEE/ACM International Symposium on Microarchitecture, (275-286)
- Dalessandro L, Scott M and Spear M Transactions as the foundation of a memory consistency model Proceedings of the 24th international conference on Distributed computing, (20-34)
- Zyulkyarov F, Stipic S, Harris T, Unsal O, Cristal A, Hur I and Valero M Discovering and understanding performance bottlenecks in transactional applications Proceedings of the 19th international conference on Parallel architectures and compilation techniques, (285-294)
Index Terms
- Transactional Memory, 2nd Edition
Recommendations
Safe privatization in transactional memory
PPoPP '18Transactional memory (TM) facilitates the development of concurrent applications by letting the programmer designate certain code blocks as atomic. Programmers using a TM often would like to access the same data both inside and outside transactions, ...
Safe privatization in transactional memory
PPoPP '18: Proceedings of the 23rd ACM SIGPLAN Symposium on Principles and Practice of Parallel ProgrammingTransactional memory (TM) facilitates the development of concurrent applications by letting the programmer designate certain code blocks as atomic. Programmers using a TM often would like to access the same data both inside and outside transactions, ...
Stretching transactional memory
PLDI '09Transactional memory (TM) is an appealing abstraction for programming multi-core systems. Potential target applications for TM, such as business software and video games, are likely to involve complex data structures and large transactions, requiring ...