Sangam: A Confluence of Knowledge Streams

Smartlocks: Lock Acquisition Scheduling for Self-Aware Synchronization

Show simple item record

dc.contributor Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
dc.contributor Massachusetts Institute of Technology. Laboratory for Information and Decision Systems
dc.contributor Eastep, Jonathan Michael
dc.contributor Wingate, David
dc.contributor Agarwal, Anant
dc.creator Eastep, Jonathan Michael
dc.creator Wingate, David
dc.creator Santambrogio, Marco D.
dc.creator Agarwal, Anant
dc.date 2014-03-21T15:02:32Z
dc.date 2014-03-21T15:02:32Z
dc.date 2010-06
dc.date.accessioned 2023-03-01T18:11:40Z
dc.date.available 2023-03-01T18:11:40Z
dc.identifier 9781450300742
dc.identifier http://hdl.handle.net/1721.1/85868
dc.identifier Jonathan Eastep, David Wingate, Marco D. Santambrogio, and Anant Agarwal. 2010. Smartlocks: lock acquisition scheduling for self-aware synchronization. In Proceedings of the 7th international conference on Autonomic computing (ICAC '10). ACM, New York, NY, USA, 215-224.
dc.identifier https://orcid.org/0000-0002-7015-4262
dc.identifier.uri http://localhost:8080/xmlui/handle/CUHPOERS/279104
dc.description As multicore processors become increasingly prevalent, system complexity is skyrocketing. The advent of the asymmetric multicore compounds this - it is no longer practical for an average programmer to balance the system constraints associated with today's multicores and worry about new problems like asymmetric partitioning and thread interference. Adaptive, or self-aware, computing has been proposed as one method to help application and system programmers confront this complexity. These systems take some of the burden off of programmers by monitoring themselves and optimizing or adapting to meet their goals. This paper introduces a self-aware synchronization library for multicores and asymmetric multicores called Smartlocks. Smartlocks is a spin-lock library that adapts its internal implementation during execution using heuristics and machine learning to optimize toward a user-defined goal, which may relate to performance or problem-specific criteria. Smartlocks builds upon adaptation techniques from prior work like reactive locks [1], but introduces a novel form of adaptation that we term lock acquisition scheduling designed specifically to address asymmetries in multicores. Lock acquisition scheduling is optimizing which waiter will get the lock next for the best long-term effect when multiple threads (or processes) are spinning for a lock. This work demonstrates that lock scheduling is important for addressing asymmetries in multicores. We study scenarios where core speeds vary both dynamically and intrinsically under thermal throttling and manufacturing variability, respectively, and we show that Smartlocks significantly outperforms conventional spin-locks and reactive locks. Based on our findings, we provide guidelines for application scenarios where Smartlocks works best versus less optimally.
dc.format application/pdf
dc.language en_US
dc.publisher Association for Computing Machinery (ACM)
dc.relation http://dx.doi.org/10.1145/1809049.1809079
dc.relation Proceedings of the 7th international conference on Autonomic computing ( ICAC '10)
dc.rights Creative Commons Attribution-Noncommercial-Share Alike
dc.rights http://creativecommons.org/licenses/by-nc-sa/4.0/
dc.source MIT web domain
dc.title Smartlocks: Lock Acquisition Scheduling for Self-Aware Synchronization
dc.type Article
dc.type http://purl.org/eprint/type/ConferencePaper


Files in this item

Files Size Format View
Agarwal_Smartlocks.pdf 965.8Kb application/pdf View/Open

This item appears in the following Collection(s)

Show simple item record

Search DSpace


Advanced Search

Browse