DocumentCode
922001
Title
Spin detection hardware for improved management of multithreaded systems
Author
Li, Tong ; Lebeck, Alvin R. ; Sorin, Daniel J.
Author_Institution
Intel Labs., Hillsboro, OR
Volume
17
Issue
6
fYear
2006
fDate
6/1/2006 12:00:00 AM
Firstpage
508
Lastpage
521
Abstract
Spinning is a synchronization mechanism commonly used in applications and operating systems. Excessive spinning, however, often indicates performance or correctness (e.g., livelock) problems. Detecting if applications and operating systems are spinning is essential for achieving high performance, especially in consolidated servers running virtual machines. Prior research has used source or binary instrumentation to detect spinning. However, these approaches place a significant burden on programmers and may even be infeasible in certain situations. In this paper, we propose efficient hardware to detect spinning in unmodified applications and operating systems. Based on this hardware, we develop 1) scheduling and power policies that adaptively manage resources for spinning threads, 2) system support that helps detect when a multithreaded program is livelocked, and 3) hardware performance counters that accurately reflect system performance. Using full-system simulation with SPEC OMP, SPLASH-2, and Wisconsin commercial workloads, we demonstrate that our mechanisms effectively improve the management of multithreaded systems
Keywords
multi-threading; multiprocessing systems; operating systems (computers); resource allocation; scheduling; synchronisation; virtual machines; binary instrumentation; full-system simulation; hardware performance; multithreaded system; operating system; power policy; resource management; scheduling; spin detection hardware; synchronization mechanism; system performance; virtual machine; Energy management; Hardware; Instruments; Operating systems; Power system management; Programming profession; Resource management; Spinning; Virtual machining; Yarn; Deadlock; livelock; multiprocessor; multithreaded system; performance counter; scheduling; spinning; synchronization; virtualization.;
fLanguage
English
Journal_Title
Parallel and Distributed Systems, IEEE Transactions on
Publisher
ieee
ISSN
1045-9219
Type
jour
DOI
10.1109/TPDS.2006.78
Filename
1626218
Link To Document