High performance dynamic lock-free hash tables and list-based sets
Proceedings of the fourteenth annual ACM symposium on Parallel algorithms and architectures
Split-ordered lists: Lock-free extensible hash tables
Journal of the ACM (JACM)
DISC'09 Proceedings of the 23rd international conference on Distributed computing
ACM SIGOPS Operating Systems Review
Hi-index | 0.00 |
In this work, we present transaction polymorphism, a synchronization technique that consists of providing more control to the programmer than traditional (i.e., monomorphic) transactions to achieve comparable performance to generic lock-based and lock-free solutions. We prove the following results: (i) Lock-based synchronization enables strictly higher concurrency than monormophic transactions. (ii) Polymorphic transactions enable strictly higher concurrency than monomorphic transactions. The former result indicates that there exist some transactional programs that will never perform as well as their lock-based counterparts, whatever improvement could be made at the hardware level to diminish the overhead associated with transactional accesses. The latter result shows, however, that transaction polymorphism is a promising solution to cope with this issue.