Dynamic Inter-core Scheduling in Barrelfish: avoiding contention with malleable process domains
2011 (English)Conference paper (Refereed)
Trying to attack the problem of resource contention, created by multiple parallel applications running simultaneously, we propose a space-sharing, two-level, adaptive scheduler for the Barrelfish operating system. The first level is system-wide, existing inside the OS, and has knowledge of the available resources, while the second level is aware of the parallelism in the application. Feedback on efficiency from the second-level to the first-level, allows the latter to adaptively modify the allotment of cores (domain) thus intelligently avoiding time-sharing. In order to avoid excess inter-core communication, the first-level scheduler is designed as a distributed service, taking advantage of the message-passing nature of Barrelfish. The processor topology is partitioned so that each instance of the scheduler handles an appropriately sized subset of cores. Malleability is achieved by suspending worker-threads. Two different methodologies are introduced and explained, each ideal for different situations.
Place, publisher, year, edition, pages
Linköping: Linköping University Electronic Press, 2011.
barrelfish, task-based programming, two-level scheduling
Research subject SRA - ICT
IdentifiersURN: urn:nbn:se:kth:diva-63820OAI: oai:DiVA.org:kth-63820DiVA: diva2:482762
MCC-2011. Fourth Swedish Workshop on Multicore Computing. Linköping University. Linköping, Sweden. November 23-25, 2011.
QC 201202022012-02-022012-01-242012-02-02Bibliographically approved