Mitigating starvation of Linux CPU-bound processes in the presence of network I/O

Khaled Salah*, A. Manea*, S. Zeadally, Jose M. Alcaraz Calero

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

1 Citation (Scopus)

Abstract

In prior research work, it has been demonstrated that Linux can starve CPU-bound processes in the presence of network I/O. The starvation of Linux CPU-bound processes occurs under the two Linux schedulers, namely the 2.6 O(1) scheduler and the more recent 2.6 Completely Fair Scheduler (CFS). In this paper, we analyze the underlying root causes of this starvation problem and we propose effective solutions that can mitigate such starvation. We present detailed implementations of our proposed solutions for both O(1) and CFS Linux schedulers. We empirically evaluate the effectiveness of our proposed solutions in terms of execution time and incoming traffic load. For our experimental study and analysis, we consider two types of mainboard architectures: Uni-Processing (UP) and Symmetric Multi-Processing (SMP). Our empirical results show that the proposed solutions are highly effective in mitigating the starvation problem for CPU-bound processes with no negative impact on the performance of network I/O-bound processes.
Original languageEnglish
Pages (from-to)1899-1914
Number of pages16
JournalJournal of Systems and Software
Volume85
Issue number8
Early online date28 Feb 2012
DOIs
Publication statusPublished - 31 Aug 2012
Externally publishedYes

Keywords

  • operating system
  • Linux
  • network I/O
  • CPU scheduler
  • starvation
  • performance
  • CPU-bound processes

Fingerprint

Dive into the research topics of 'Mitigating starvation of Linux CPU-bound processes in the presence of network I/O'. Together they form a unique fingerprint.

Cite this