Lower Bounds and Impossibility Results for Transactional Memory Computing

We overview some impossibility results and lower bounds on the complexity of implementing software transactional memory, and explain their underlying assumptions.

[1]  Leslie Lamport,et al.  How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs , 2016, IEEE Transactions on Computers.

[2]  Marcin Paprzycki,et al.  Distributed Computing: Fundamentals, Simulations and Advanced Topics , 2001, Scalable Comput. Pract. Exp..

[3]  Nir Shavit,et al.  Implicit Privatization Using Private Transactions , 2010 .

[4]  Nir Shavit,et al.  Software transactional memory , 1995, PODC '95.

[5]  Rachid Guerraoui,et al.  On the liveness of transactional memory , 2012, PODC '12.

[6]  Jim Gray,et al.  A critique of ANSI SQL isolation levels , 1995, SIGMOD '95.

[7]  Rachid Guerraoui,et al.  Snapshot Isolation Does Not Scale Either , 2013 .

[8]  Rachid Guerraoui,et al.  Toward a theory of transactional contention managers , 2005, PODC '05.

[9]  Maurice Herlihy,et al.  Software transactional memory for dynamic-sized data structures , 2003, PODC '03.

[10]  Nir Shavit,et al.  Atomic snapshots of shared memory , 1990, PODC '90.

[11]  Maurice Herlihy,et al.  Transactional Memory: Architectural Support For Lock-free Data Structures , 1993, Proceedings of the 20th Annual International Symposium on Computer Architecture.

[12]  Faith Ellen,et al.  The complexity of updating snapshot objects , 2011, J. Parallel Distributed Comput..

[13]  Gottfried Vossen,et al.  Transactional Information Systems: Theory, Algorithms, and the Practice of Concurrency Control and Recovery , 2002 .

[14]  Maurice Herlihy,et al.  Wait-free synchronization , 1991, TOPL.

[15]  Michel Raynal,et al.  Read Invisibility, Virtual World Consistency and Probabilistic Permissiveness are Compatible , 2011, ICA3PP.

[16]  Amos Israeli,et al.  Disjoint-access-parallel implementations of strong shared memory primitives , 1994, PODC '94.

[17]  Rachid Guerraoui,et al.  The semantics of progress in lock-based transactional memory , 2009, POPL '09.

[18]  Greg Barnes,et al.  A method for implementing lock-free shared-data structures , 1993, SPAA '93.

[19]  Dan Grossman,et al.  Enforcing isolation and ordering in STM , 2007, PLDI '07.

[20]  Rachid Guerraoui,et al.  On obstruction-free transactions , 2008, SPAA '08.

[21]  Hagit Attiya,et al.  Inherent Limitations on Disjoint-Access Parallel Implementations of Transactional Memory , 2010, Theory of Computing Systems.

[22]  Rachid Guerraoui,et al.  Transactions in the jungle , 2010, SPAA '10.

[23]  Rachid Guerraoui,et al.  On the correctness of transactional memory , 2008, PPoPP.

[24]  James R. Goodman,et al.  Transactional lock-free execution of lock-based programs , 2002, ASPLOS X.

[25]  Rachid Guerraoui,et al.  The complexity of obstruction-free implementations , 2009, JACM.

[26]  Hagit Attiya,et al.  Transactional scheduling for read-dominated workloads , 2009, J. Parallel Distributed Comput..

[27]  Christos H. Papadimitriou,et al.  The serializability of concurrent database updates , 1979, JACM.

[28]  Mark Moir,et al.  Towards formally specifying and verifying transactional memory , 2009, Formal Aspects of Computing.

[29]  Maurice Herlihy,et al.  Linearizability: a correctness condition for concurrent objects , 1990, TOPL.

[30]  Dennis Shasha,et al.  Locking without blocking: making lock based concurrent data structure algorithms nonblocking , 1992, PODS '92.

[31]  Michel Raynal,et al.  Brief announcement: virtual world consistency: a new condition for STM systems , 2009, PODC '09.

[32]  Petr Kuznetsov,et al.  On the Cost of Concurrency in Transactional Memory , 2011, OPODIS.

[33]  Michael F. Spear,et al.  Privatization techniques for software transactional memory , 2007, PODC '07.

[34]  D. M. Hutton,et al.  The Art of Multiprocessor Programming , 2008 .

[35]  Rachid Guerraoui,et al.  Permissiveness in Transactional Memories , 2008, DISC.

[36]  Idit Keidar,et al.  On Avoiding Spare Aborts in Transactional Memory , 2015, Theory of Computing Systems.

[37]  Nir Shavit,et al.  Transactional Locking II , 2006, DISC.

[38]  Torvald Riegel,et al.  Snapshot Isolation for Software Transactional Memory , 2006 .

[39]  Leslie Lamport,et al.  Proving the Correctness of Multiprocess Programs , 1977, IEEE Transactions on Software Engineering.

[40]  Idit Keidar,et al.  On maintaining multiple versions in STM , 2010, PODC.

[41]  Hagit Attiya,et al.  The Cost of Privatization , 2010, DISC.

[42]  Pascal Felber,et al.  Toward a Theory of Input Acceptance for Transactional Memories , 2008, OPODIS.