Transactional memory: architectural support for lock-free data structures
ISCA '93 Proceedings of the 20th annual international symposium on computer architecture
The SPLASH-2 programs: characterization and methodological considerations
ISCA '95 Proceedings of the 22nd annual international symposium on Computer architecture
Speculative lock elision: enabling highly concurrent multithreaded execution
Proceedings of the 34th annual ACM/IEEE international symposium on Microarchitecture
Obstruction-Free Synchronization: Double-Ended Queues as an Example
ICDCS '03 Proceedings of the 23rd International Conference on Distributed Computing Systems
Software transactional memory for dynamic-sized data structures
Proceedings of the twenty-second annual symposium on Principles of distributed computing
Transactional Memory Coherence and Consistency
Proceedings of the 31st annual international symposium on Computer architecture
Unbounded Transactional Memory
HPCA '05 Proceedings of the 11th International Symposium on High-Performance Computer Architecture
Composable memory transactions
Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming
Virtualizing Transactional Memory
Proceedings of the 32nd annual international symposium on Computer Architecture
Advanced contention management for dynamic software transactional memory
Proceedings of the twenty-fourth annual ACM symposium on Principles of distributed computing
Multifacet's general execution-driven multiprocessor simulator (GEMS) toolset
ACM SIGARCH Computer Architecture News - Special issue: dasCMP'05
Architectural Semantics for Practical Transactional Memory
Proceedings of the 33rd annual international symposium on Computer Architecture
Unbounded page-based transactional memory
Proceedings of the 12th international conference on Architectural support for programming languages and operating systems
Understanding the Linux Kernel, 2nd Edition
Understanding the Linux Kernel, 2nd Edition
Making the fast case common and the uncommon case simple in unbounded transactional memory
Proceedings of the 34th annual international symposium on Computer architecture
An effective hybrid transactional memory system with strong isolation guarantees
Proceedings of the 34th annual international symposium on Computer architecture
An integrated hardware-software approach to flexible transactional memory
Proceedings of the 34th annual international symposium on Computer architecture
Delaunay Triangulation with Transactions and Barriers
IISWC '07 Proceedings of the 2007 IEEE 10th International Symposium on Workload Characterization
Adaptive software transactional memory
DISC'05 Proceedings of the 19th international conference on Distributed Computing
Refereeing conflicts in hardware transactional memory
Proceedings of the 23rd international conference on Supercomputing
Preventing versus curing: avoiding conflicts in transactional memories
Proceedings of the 28th ACM symposium on Principles of distributed computing
Proactive transaction scheduling for contention management
Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture
Scheduling support for transactional memory contention management
Proceedings of the 15th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming
Transactional Scheduling for Read-Dominated Workloads
OPODIS '09 Proceedings of the 13th International Conference on Principles of Distributed Systems
On the Impact of Serializing Contention Management on STM Performance
OPODIS '09 Proceedings of the 13th International Conference on Principles of Distributed Systems
Brief announcement: transactional scheduling for read-dominated workloads
DISC'09 Proceedings of the 23rd international conference on Distributed computing
Window-based greedy contention management for transactional memory
DISC'10 Proceedings of the 24th international conference on Distributed computing
On transactional scheduling in distributed transactional memory ystems
SSS'10 Proceedings of the 12th international conference on Stabilization, safety, and security of distributed systems
A competitive analysis for balanced transactional memory workloads
OPODIS'10 Proceedings of the 14th international conference on Principles of distributed systems
Synchronization via scheduling: techniques for efficiently managing shared state
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation
Proceedings of the international conference on Supercomputing
LUTS: a lightweight user-level transaction scheduler
ICA3PP'11 Proceedings of the 11th international conference on Algorithms and architectures for parallel processing - Volume Part I
Hardware transactional memory for GPU architectures
Proceedings of the 44th Annual IEEE/ACM International Symposium on Microarchitecture
Improving performance by reducing aborts in hardware transactional memory
HiPEAC'10 Proceedings of the 5th international conference on High Performance Embedded Architectures and Compilers
On the impact of serializing contention management on STM performance
Journal of Parallel and Distributed Computing
Reconciling transactional conflicts with compiler's help
Proceedings of the Tenth International Symposium on Code Generation and Optimization
Transactional scheduling for read-dominated workloads
Journal of Parallel and Distributed Computing
Mileage-based contention management in transactional memory
Proceedings of the 21st international conference on Parallel architectures and compilation techniques
Restricted admission control in view-oriented transactional memory
The Journal of Supercomputing
Improving performance of software transactional memory through contention locality
The Journal of Supercomputing
Tightfit: adaptive parallelization with foresight
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
Enhancing concurrency in distributed transactional memory through commutativity
Euro-Par'13 Proceedings of the 19th international conference on Parallel Processing
Hugh: a semantically aware universal construction for transactional memory systems
Euro-Par'13 Proceedings of the 19th international conference on Parallel Processing
Transparent support for partial rollback in software transactional memories
Euro-Par'13 Proceedings of the 19th international conference on Parallel Processing
Techniques to improve performance in requester-wins hardware transactional memory
ACM Transactions on Architecture and Code Optimization (TACO)
Performance evaluation of View-Oriented Transactional Memory
Parallel Computing
Hi-index | 0.00 |
Transactional memory systems are expected to enable parallel programming at lower programming complexity, while delivering improved performance over traditional lock-based systems. Nonetheless, there are certain situations where transactional memory systems could actually perform worse. Transactional memory systems can outperform locks only when the executing workloads contain sufficient parallelism. When the workload lacks inherent parallelism, launching excessive transactions can adversely degrade performance. These situations are likely to become dominant in future workloads when large-scale transactions are frequently executed. In this paper, we propose a new paradigm called adaptive transaction scheduling to address this issue. Based on the parallelism feedback from applications, our adaptive transaction scheduler dynamically dispatches and controls the number of concurrently executing transactions. In our case study, we show that our low-cost mechanism not only guarantees that hardware transactional memory systems perform no worse than a single global lock, but also significantly improves performance for both hardware and software transactional memory systems.