Decoupling contention management from schedulingReport as inadecuate

Decoupling contention management from scheduling - Download this document for free, or read online. Document in PDF available to download.

Presented at: ASPLOS 2010, Pittsburgh, PA, USA, March 13-17 Published in: Proceedings of the 15th international conference on Architectural support for programming languages and operating systems, p. 117-128 Publication date: 2010

Many parallel applications exhibit unpredictable communication between threads, leading to contention for shared objects. The choice of contention management strategy impacts strongly the performance and scalability of these applications: spinning provides maximum performance but wastes significant processor resources, while blocking-based approaches conserve processor resources but introduce high overheads on the critical path of computation. Under situations of high or changing load, the operating system complicates matters further with arbitrary scheduling decisions which often preempt lock holders, leading to long serialization delays until the preempted thread resumes execution. We observe that contention management is orthogonal to the problems of scheduling and load management and propose to decouple them so each may be solved independently and effectively. To this end, we propose a load control mechanism which manages the number of active threads in the system separately from any contention which may exist. By isolating contention management from damaging interactions with the OS scheduler, we combine the efficiency of spinning with the robustness of blocking. The proposed load control mechanism results in stable, high performance for both lightly and heavily loaded systems, requires no special privileges or modifications at the OS level, and can be implemented as a library which benefits existing code.

Keywords: Concurrency control ; load management ; contention ; spinning ; blocking ; scheduling ; thread ; multicore ; Synchronization Note: SYSTEMS PUBLICATION_SHORE_MT Reference DIAS-CONF-2009-010View record in Web of Science

Author: Johnson, Ryan; Stoica, Radu; Ailamaki, Anastasia; Mowry, Todd



Related documents