000142307 001__ 142307
000142307 005__ 20190316234639.0
000142307 02470 $$2ISI$$a000291369800011
000142307 037__ $$aCONF
000142307 245__ $$aDecoupling contention management from scheduling
000142307 269__ $$a2010
000142307 260__ $$c2010
000142307 336__ $$aConference Papers
000142307 500__ $$aSYSTEMS PUBLICATION_SHORE_MT
000142307 520__ $$aMany 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.
000142307 6531_ $$aConcurrency control
000142307 6531_ $$aload management
000142307 6531_ $$acontention
000142307 6531_ $$aspinning
000142307 6531_ $$ablocking
000142307 6531_ $$ascheduling
000142307 6531_ $$athread
000142307 6531_ $$amulticore
000142307 6531_ $$aSynchronization
000142307 700__ $$aJohnson, Ryan
000142307 700__ $$0243533$$aStoica, Radu$$g184153
000142307 700__ $$0243527$$aAilamaki, Anastasia$$g177957
000142307 700__ $$aMowry, Todd
000142307 7112_ $$aASPLOS 2010$$cPittsburgh, PA, USA$$dMarch 13-17
000142307 773__ $$q117-128$$tProceedings of the 15th international conference on Architectural support for programming languages and operating systems
000142307 8564_ $$s534273$$uhttps://infoscience.epfl.ch/record/142307/files/p117-johnson.pdf$$yn/a$$zn/a
000142307 909C0 $$0252224$$pDIAS$$xU11836
000142307 909CO $$ooai:infoscience.tind.io:142307$$pconf$$pIC$$qGLOBAL_SET
000142307 917Z8 $$x188175
000142307 917Z8 $$x188175
000142307 917Z8 $$x188175
000142307 917Z8 $$x190851
000142307 937__ $$aDIAS-CONF-2009-010
000142307 973__ $$aEPFL$$rREVIEWED$$sPUBLISHED
000142307 980__ $$aCONF