TY - GEN
T1 - EZIOTracer
T2 - 1st Workshop on Challenges and Opportunities of Efficient and Performant Storage Systems, CHEOPS 2021, held In Conjunction with EuroSys 2021
AU - Naas, Mohammed Islam
AU - Trahay, François
AU - Colin, Alexis
AU - Olivier, Pierre
AU - Rubini, Stéphane
AU - Singhoff, Frank
AU - Boukhobza, Jalil
N1 - Publisher Copyright:
© 2021 ACM.
PY - 2021/4/26
Y1 - 2021/4/26
N2 - 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.
AB - 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.
KW - Linux I/O stack
KW - Storage system
KW - Tracing tools
KW - eBPF
KW - kernel
UR - https://www.scopus.com/pages/publications/85108023507
U2 - 10.1145/3439839.3458731
DO - 10.1145/3439839.3458731
M3 - Conference contribution
AN - SCOPUS:85108023507
T3 - Proceedings of the Workshop on Challenges and Opportunities of Efficient and Performant Storage Systems, CHEOPS 2021 - In Conjunction with EuroSys 2021
BT - Proceedings of the Workshop on Challenges and Opportunities of Efficient and Performant Storage Systems, CHEOPS 2021 - In Conjunction with EuroSys 2021
PB - Association for Computing Machinery, Inc
Y2 - 26 April 2021 through 26 April 2021
ER -