Publication Type |
Journal Article |
School or College |
College of Engineering |
Department |
Computing, School of |
Creator |
Carter, John B. |
Other Author |
Kuo, Chen-Chi; Kuramkote, Ravindra |
Title |
MP-LOCKs: Replacing hardware synchronization primitives with message passing |
Date |
2011-05 |
Description |
Shared memory programs guarantee the correctness of concurrent accesses to shared data using interprocessor synchronization operations. The most common synchronization operators are locks, which are traditionally implemented in user-level libraries via a mix of shared memory accesses and hardware synchronization primitives like test-and-set. In this paper, we argue that synchronization operations implemented using fast message passing and kernel-embedded lock managers are an attractive alternative to dedicated synchronization hardware. We propose three message passing lock (MP-LOCK) algorithms (centralized, distributed, and reactive) and provide guidelines for implementing them efficiently. MP-LOCKs redice tje design complexity and runtime occupancy of DSM controllers and can exploit software's inherent flexibility to adapt to differing applications lock access patterns. We compared the performance of MP-LOCKs with two common shared memory lock algorithms: test-and-set and MCS locks and found that MP-LOCKs scale better. For machines with 16 to 32 nides, applications using MP-LOCKs ran up to 186% faster than the same applications with shared memory locks. For small systems (up to 8 nodes), MP-LOCK performance lags shared memory lock performance due to the higher software overhead. However, three of the MP-LOCK applications slow down by no more than 18%, while the other two slowed by no more than 180%. Given these results, we conclude that locks based on message passing should be considered as a replacement for hardware locks in future scalable multiprocessors that supports efficient message passing mechanisms. In addition, it is possible to implement efficient software synchronization primitives in clusters of workstations by using the guidelines we proposed. |
Type |
Text |
Publisher |
University of Utah |
First Page |
98 |
Last Page |
21 |
Subject |
MP-LOCKs; Message passing; Shared memory programs; Synchronization operators; Synchronization primitives |
Language |
eng |
Bibliographic Citation |
Kuo, C.-C., Carter, J. B., & Kuramkote, R. (1998). MP-LOCKs: Replacing hardware synchronization primitives with message passing. UUCS-98-021. |
Series |
University of Utah Computer Science Technical Report |
Rights Management |
©University of Utah |
Format Medium |
application/pdf |
Format Extent |
5,020,533 bytes |
Identifier |
ir-main,15967 |
ARK |
ark:/87278/s66d6bj3 |
Setname |
ir_uspace |
ID |
706318 |
Reference URL |
https://collections.lib.utah.edu/ark:/87278/s66d6bj3 |