Abstract
We present a simple yet effective technique for improving performance of lock-based code using the hardware lock elision (HLE) feature in Intel's upcoming Haswell processor.
We also describe how to extend Haswell's HLE mechanism to achieve a similar effect to our lock elision scheme entirely in hardware.
- Intel Architecture Instruction Set Extensions Programming Reference. http://software.intel.com/file/41604, 2012.Google Scholar
- T. S. Craig. Building FIFO and priority-queuing spin locks from atomic swap. Technical Report 93-02-02, Department of Computer Science and Engineering, University of Washington, 1993.Google Scholar
- M. Herlihy and J. E. B. Moss. Transactional memory: architectural support for lock-free data structures. In ISCA 1993. Google Scholar
Digital Library
- P. S. Magnusson, A. Landin, and E. Hagersten. Queue locks on cache coherent multiprocessors. In Proceedings of the 8th International Symposium on Parallel Processing, pages 165--171, Washington, DC, USA, 1994. IEEE Computer Society. Google Scholar
Digital Library
- J. M. Mellor-Crummey and M. L. Scott. Algorithms for scalable synchronization on shared-memory multiprocessors. ACM Transactions on Computer Systems, 9(1):21--65, Feb. 1991. Google Scholar
Digital Library
- N. Piggin. x86: FIFO ticket spinlocks. http://lkml.org/lkml/2007/11/1/125, 2007.Google Scholar
- R. Rajwar and J. R. Goodman. Speculative Lock Elision: enabling highly concurrent multithreaded execution. In MICRO 2001. Google Scholar
Digital Library
Index Terms
Programming with hardware lock elision
Recommendations
Programming with hardware lock elision
PPoPP '13: Proceedings of the 18th ACM SIGPLAN symposium on Principles and practice of parallel programmingWe present a simple yet effective technique for improving performance of lock-based code using the hardware lock elision (HLE) feature in Intel's upcoming Haswell processor.
We also describe how to extend Haswell's HLE mechanism to achieve a similar ...
Amalgamated Lock-Elision
DISC 2015: Proceedings of the 29th International Symposium on Distributed Computing - Volume 9363Hardware lock-elision HLE introduces concurrency into legacy lock-based code by optimistically executing critical sections in a fast-path as hardware transactions. Its main limitation is that in case of repeated aborts, it reverts to a fallback-path ...
Speculative lock elision: enabling highly concurrent multithreaded execution
MICRO 34: Proceedings of the 34th annual ACM/IEEE international symposium on MicroarchitectureSerialization of threads due to critical sections is a fundamental bottleneck to achieving high performance in multithreaded programs. Dynamically, such serialization may be unnecessary because these critical sections could have safely executed ...







Comments