As modern network infrastructure moves from hardware-based to software-based using Network Function Virtualization, a new set of requirements is raised for operating system developers. By using the real-time kernel options and advanced CPU isolation features common to the HPC use-cases, Linux is becoming a central building block for this new architecture that aims to enable a new set of low latency networked services. Tuning Linux for these applications is not an easy task, as it requires a deep understanding of the Linux execution model and the mix of user-space tooling and tracing features. This paper discusses the internal aspects of Linux that influence the Operating System Noise from a timing perspective. It also presents Linux's osnoise tracer, an in-kernel tracer that enables the measurement of the Operating System Noise as observed by a workload, and the tracing of the sources of the noise, in an integrated manner, facilitating the analysis and debugging of the system. Finally, this paper presents a series of experiments demonstrating both Linux's ability to deliver low OS noise (in the single-digit $\mu$μs order), and the ability of the proposed tool to provide precise information about root-cause of timing-related OS noise problems.
CITATION STYLE
De Oliveira, D. B., Casini, D., & Cucinotta, T. (2023). Operating System Noise in the Linux Kernel. IEEE Transactions on Computers, 72(1), 196–207. https://doi.org/10.1109/TC.2022.3187351
Mendeley helps you to discover research relevant for your work.