Cost of mutual exclusion with spin locks on multi-core CPUs

  • Published 2012


Multi-core CPUs promise great performance increase in applications and algorithms that can take advantage of them. Such algorithms, offering high level of parallelism, must protect data structures from concurrent modifications possibly violating data integrity. Synchronization mechanisms offer protection from such erroneous behavior by limiting data modifications to a single thread. In shared memory systems, such as multi-core CPUs, synchronization is cheap as threads can communicate with each other via locks placed in the main system memory. These locks, however, present as performance overhead not only by limiting the level of parallelism but also by changing the characteristics of the application. By investigating various implementations of mutual exclusion mechanisms with the use of spin locks an overview is presented of synchronization options in multi-core systems and the performance of several spin locks is evaluated. Key–Words: mutual exclusion; spin locks; multi-core CPU; test-and-set

3 Figures and Tables

Cite this paper

@inproceedings{SCHRDI2012CostOM, title={Cost of mutual exclusion with spin locks on multi-core CPUs}, author={DUD{\'A}S TAM{\'A}S SCHR{\'A}DI}, year={2012} }