BWS: Balanced Work Stealing for Time-Sharing Multicores
Running multithreaded programs in multicore systems has become a common practice for many application domains. Work stealing is a widely-adopted and effective approach for managing and scheduling the concurrent tasks of such programs. Existing work-stealing schedulers, however, are not effective when multiple applications time-share a single multicore - their management of steal-attempting threads often causes unbalanced system effects that hurt both workload throughput and fairness. In this paper, the authors present BWS (BalancedWork Stealing), a work-stealing scheduler for time-sharing multicore systems that leverages new, lightweight operating system support.