The Battle of the Schedulers: FreeBSD ULE vs. Linux CFS - Archive ouverte HAL Accéder directement au contenu
Communication Dans Un Congrès Année : 2018

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

Résumé

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
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

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

Identifiants

  • HAL Id : hal-01853267 , version 1

Citer

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⟩
366 Consultations
689 Téléchargements

Partager

Gmail Facebook X LinkedIn More