Skip to Main content Skip to Navigation
New interface
Conference papers

Fork/Wait and Multicore Frequency Scaling: a Generational Clash

Abstract : The complexity of computer architectures has risen since the early years of the Linux kernel: Simultaneous Multi-Threading (SMT), multicore processing, and frequency scaling with complex algorithms such as Intel ® Turbo Boost have all become omnipresent. In order to keep up with hardware innovations, the Linux scheduler has been rewritten several times, and many hardware-related heuristics have been added. Despite this, we show in this paper that a fundamental problem was never identified: the POSIX process creation model, i.e., fork/wait, can behave inefficiently on current multicore architectures due to frequency scaling. We investigate this issue through a simple case study: the compilation of the Linux kernel source tree. To do this, we develop SchedLog, a low-overhead scheduler tracing tool, and SchedDisplay, a scriptable tool to graphically analyze SchedLog's traces efficiently. We implement two solutions to the problem at the sched-uler level which improve the speed of compiling part of the Linux kernel by up to 26%, and the whole kernel by up to 10%.
Document type :
Conference papers
Complete list of metadata

Cited literature [36 references]  Display  Hide  Download
Contributor : Gilles Muller Connect in order to contact the contributor
Submitted on : Tuesday, November 5, 2019 - 8:49:18 PM
Last modification on : Wednesday, September 28, 2022 - 3:06:06 PM
Long-term archiving on: : Friday, February 7, 2020 - 6:43:56 AM


Files produced by the author(s)



Damien Carver, Redha Gouicem, Jean-Pierre Lozi, Julien Sopena, Baptiste Lepers, et al.. Fork/Wait and Multicore Frequency Scaling: a Generational Clash. 10th Workshop on Programming Languages and Operating Systems, Oct 2019, Huntsville, Canada. pp.53-59, ⟨10.1145/3365137.3365400⟩. ⟨hal-02349987v1⟩



Record views


Files downloads