The Battle of the Schedulers: FreeBSD ULE vs. Linux CFS - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Conference Papers Year : 2018

The Battle of the Schedulers: FreeBSD ULE vs. Linux CFS


This paper analyzes the impact on application performance of the design and implementation choices made in two widely used open-source schedulers: ULE, the default FreeBSD scheduler, and CFS, the default Linux scheduler. We compare ULE and CFS in otherwise identical circumstances. We have ported ULE to Linux, and use it to schedule all threads that are normally scheduled by CFS. We compare the performance of a large suite of applications on the modified kernel running ULE and on the standard Linux kernel running CFS. The observed performance differences are solely the result of scheduling decisions, and do not reflect differences in other subsystems between FreeBSD and Linux. There is no overall winner. On many workloads the two schedulers perform similarly, but for some work-loads there are significant and even surprising differences. ULE may cause starvation, even when executing a single application with identical threads, but this starvation may actually lead to better application performance for some workloads. The more complex load balancing mechanism of CFS reacts more quickly to work-load changes, but ULE achieves better load balance in the long run.
Fichier principal
Vignette du fichier
atc18-bouron.pdf (1.39 Mo) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-01853267 , version 1 (02-08-2018)


  • HAL Id : hal-01853267 , version 1


Justinien Bouron, Sébastien Chevalley, Baptiste Lepers, Willy Zwaenepoel, Redha Gouicem, et al.. The Battle of the Schedulers: FreeBSD ULE vs. Linux CFS. 2018 USENIX Annual Technical Conference, Jul 2018, Boston, MA, United States. ⟨hal-01853267⟩
363 View
686 Download


Gmail Facebook X LinkedIn More