zIO: Accelerating IO-Intensive Applications with Transparent Zero-Copy IO
Timothy Stamler, Deukyeon Hwang, Amanda Raybuck, Wei Zhang, Simon Peter
摘要
We present zIO, a transparent zero-copy IO mechanism for unmodified IO-intensive applications. zIO tracks IO data through the application, eliminating copies that are unnecessary while maintaining data consistency.
Applications often modify only a part of the data they process. zIO leverages this insight and interposes on IO stack and standard library memory copy calls to track IO data and eliminate unnecessary copies. Instead, intermediate data locations are unmapped, allowing zIO to intercept and resolve any access via page faults to maintain data consistency. To avoid harming application performance in situations where data tracking overhead is high, zIO's tracking policy decides on a per IO basis when to eliminate copies. Further, we demonstrate how to use zIO to achieve optimistic network receiver persistence for applications storing data from the network in non-volatile memory (NVM). By mapping socket receive buffers in NVM and leveraging kernel-bypass IO, we can rely on zIO to transparently eliminate all copies from the network, through the application, to storage.
We implement zIO as a user-space library. On top of kernel IO stacks, zIO eliminates application-level IO copies. We also integrate zIO with kernel-bypass IO stacks, where it can additionally eliminate copies incurred by the IO stack APIs and enable optimistic network receiver persistence. We evaluate zIO with IO-intensive applications, such as Redis, Icecast, and MongoDB. zIO improves application throughput by up to 1.8× with Linux and by up to 2.5× with kernel-bypass IO stacks and optimistic network receiver persistence. Compared to common uses of zero-copy IO stack APIs, such as memory mapped files, zIO can improve performance by up to 17% due to reduced TLB shootdown overhead.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper6
- Bifrost: Analysis and Optimization of Network I/O Tax in Confidential Virtual MachinesDingji Li, Zeyu Mi, Chenhui Ji, Yifan Tan 等USENIX ATC 2023 · 被引用 31 次
- Cornflakes: Zero-Copy Serialization for Microsecond-Scale NetworkingDeepti Raghavan, Shreya Ravi, Gina Yuan, Pratiksha Thaker 等SOSP 2023 · 被引用 18 次
- Revitalizing the Forgotten On-Chip DMA to Expedite Data Movement in NVM-based Storage SystemsJingbo Su, Jiahao Li, Luofan Chen, Cheng Li 等FAST 2023 · 被引用 14 次
- Optimizing File Systems on Heterogeneous Memory by Integrating DRAM Cache with Virtual Memory ManagementYubo Liu, Yuxin Ren, Mingrui Liu, Hongbo Li 等FAST 2024 · 被引用 13 次
- I/O in a Flash: Evolution of ONTAP to Low-Latency SSDsMatthew Curtis-Maury, Ram Kesavan, Bharadwaj V. R., Nikhil Mattankot 等FAST 2024 · 被引用 3 次
它引用的顶会 Paper2
相关 Paper
- How to Copy Memory? Coordinated Asynchronous Copy as a First-Class OS ServiceJingkai He, Yunpeng Dong, Dong Du, Mo Zou 等SOSP 2025 · 被引用 2 次
- Libnvmmio: Reconstructing Software IO Path with Failure-Atomic Memory-Mapped InterfaceJungsik Choi, Jaewan Hong, Youngjin Kwon, Hwansoo HanUSENIX ATC 2020 · 被引用 36 次
- Exploring the Asynchrony of Slow Memory Filesystem with EasyIOBohong Zhu, Youmin Chen, Jiwu ShuEuroSys 2024 · 被引用 4 次
- IDIO: Network-Driven, Inbound Network Data Orchestration on Server ProcessorsMohammad Alian, Siddharth Agarwal, Jongmin Shin, Neel Patel 等MICRO 2022 · 被引用 21 次
- PAIO: General, Portable I/O Optimizations With Minor Application ModificationsRicardo Macedo, Yusuke Tanimura, Jason Haga, Vijay Chidambaram 等FAST 2022
