Linearizability: a correctness condition for concurrent objects
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Programming Languages and Systems (TOPLAS)
Locking without blocking: making lock based concurrent data structure algorithms nonblocking
PODS '92 Proceedings of the eleventh ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Transactional memory: architectural support for lock-free data structures
ISCA '93 Proceedings of the 20th annual international symposium on computer architecture
A method for implementing lock-free shared-data structures
SPAA '93 Proceedings of the fifth annual ACM symposium on Parallel algorithms and architectures
Disjoint-access-parallel implementations of strong shared memory primitives
PODC '94 Proceedings of the thirteenth annual ACM symposium on Principles of distributed computing
A critique of ANSI SQL isolation levels
SIGMOD '95 Proceedings of the 1995 ACM SIGMOD international conference on Management of data
Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing
The serializability of concurrent database updates
Journal of the ACM (JACM)
Transactional information systems: theory, algorithms, and the practice of concurrency control and recovery
Transactional lock-free execution of lock-based programs
Proceedings of the 10th international conference on Architectural support for programming languages and operating systems
Software transactional memory for dynamic-sized data structures
Proceedings of the twenty-second annual symposium on Principles of distributed computing
Distributed Computing: Fundamentals, Simulations and Advanced Topics
Distributed Computing: Fundamentals, Simulations and Advanced Topics
Enforcing isolation and ordering in STM
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
On the correctness of transactional memory
Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming
On obstruction-free transactions
Proceedings of the twentieth annual symposium on Parallelism in algorithms and architectures
Software transactional memory: why is it only a research toy?
Communications of the ACM - Remembering Jim Gray
The semantics of progress in lock-based transactional memory
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The complexity of obstruction-free implementations
Journal of the ACM (JACM)
Rock: A High-Performance Sparc CMT Processor
IEEE Micro
On avoiding spare aborts in transactional memory
Proceedings of the twenty-first annual symposium on Parallelism in algorithms and architectures
Inherent limitations on disjoint-access parallel implementations of transactional memory
Proceedings of the twenty-first annual symposium on Parallelism in algorithms and architectures
The Art of Multiprocessor Programming
The Art of Multiprocessor Programming
Highly-concurrent multi-word synchronization
ICDCN'08 Proceedings of the 9th international conference on Distributed computing and networking
Proceedings of the twenty-second annual ACM symposium on Parallelism in algorithms and architectures
Simplifying concurrent algorithms by exploiting hardware transactional memory
Proceedings of the twenty-second annual ACM symposium on Parallelism in algorithms and architectures
A universal construction for wait-free transaction friendly data structures
Proceedings of the twenty-second annual ACM symposium on Parallelism in algorithms and architectures
Flat combining and the synchronization-parallelism tradeoff
Proceedings of the twenty-second annual ACM symposium on Parallelism in algorithms and architectures
Built-in coloring for highly-concurrent doubly-linked lists
DISC'06 Proceedings of the 20th international conference on Distributed Computing
Hi-index | 0.00 |
This talk overviews some of the lower bounds on the complexity of implementing software transactional memory, and explains their underlying assumptions. The talk will discuss how these lower bounds align with experimental results and design choices made in existing implementations to indicate that the transactional approach for concurrent programming must compromise either programming simplicity or scalability. The talk will describe several contemporary research avenues that address the challenge of concurrent programming. For example, optimizing coarse-grained techniques, and concurrent programming with mini-transactions - simple atomic operations on a small number of locations. This extended abstract outlines some of the ideas that will be presented in the talk