Skip to main navigation Skip to search Skip to main content

EZIOTracer: Unifying kernel and user space I/O tracing for data-intensive applications

  • Mohammed Islam Naas
  • , François Trahay
  • , Alexis Colin
  • , Pierre Olivier
  • , Stéphane Rubini
  • , Frank Singhoff
  • , Jalil Boukhobza
  • Université de Brest (UBO)
  • University of Manchester
  • ENSTA Bretagne

Research output: Contribution to journalArticlepeer-review

Abstract

Tracing is a popular method for evaluating, investigating, and modeling the performance of today's storage systems. Tracing has become crucial with the increase in complexity of modern storage applications/systems, that are manipulating an ever-increasing amount of data and are subject to extreme performance requirements. There exists many tracing tools focusing either on the user-level or the kernel-level, however we observe the lack of a unified tracer targeting both levels: This prevents a comprehensive understanding of modern applications' storage performance profiles. In this paper, we present EZIOTracer, a unified I/O tracer for both (Linux) kernel and user spaces, targeting data intensive applications. EZIOTracer is composed of a userland as well as a kernel space tracer, complemented with a trace analysis framework able to merge the output of the two tracers, and in particular to relate user-level events to kernel-level ones, and vice-versa. On the kernel side, EZIOTracer relies on eBPF to offer safe, low-overhead, low memory footprint, and flexible tracing capabilities. We demonstrate using FIO benchmark the ability of EZIOTracer to track down I/O performance issues by relating events recorded at both the kernel and user levels. We show that this can be achieved with a relatively low overhead that ranges from 2% to 26% depending on the I/O intensity.

Original languageEnglish
Pages (from-to)88-98
Number of pages11
JournalOperating Systems Review (ACM)
Volume55
Issue number1
DOIs
Publication statusPublished - 1 Jul 2021

Keywords

  • ebpf
  • kernel
  • linux i/o stack
  • storage system
  • tracing tools

Fingerprint

Dive into the research topics of 'EZIOTracer: Unifying kernel and user space I/O tracing for data-intensive applications'. Together they form a unique fingerprint.

Cite this