Today’s ultra-low latency SSDs can deliver an I/O latency of sub-ten microseconds. With this dramatically shrunken device time, operations inside the kernel I/O stack, which were traditionally considered lightweight, are no longer a negligible portion. This motivates us to reexamine the storage I/O stack design and propose an asynchronous I/O stack (AIOS), where synchronous operations in the I/O path are replaced by asynchronous ones to overlap I/O-related CPU operations with device I/O. The asynchronous I/O stack leverages a lightweight block layer specialized for NVMe SSDs using the page cache without block I/O scheduling and merging, thereby reducing the sojourn time in the block layer. We prototype the proposed asynchronous I/O stack on the Linux kernel and evaluate it with various workloads. Synthetic FIO benchmarks demonstrate that the application-perceived I/O latency falls into single-digit microseconds for 4 KB random reads on Optane SSD, and the overall I/O latency is reduced by 15–33% across varying block sizes. This I/O latency reduction leads to a significant performance improvement of real-world applications as well: 11–44% IOPS increase on RocksDB and 15–30% throughput improvement on Filebench and OLTP workloads.
|Title of host publication||Proceedings of the 2019 USENIX Annual Technical Conference, USENIX ATC 2019|
|Number of pages||14|
|Publication status||Published - 2019|
|Event||2019 USENIX Annual Technical Conference, USENIX ATC 2019 - Renton, United States|
Duration: 2019 Jul 10 → 2019 Jul 12
|Name||Proceedings of the 2019 USENIX Annual Technical Conference, USENIX ATC 2019|
|Conference||2019 USENIX Annual Technical Conference, USENIX ATC 2019|
|Period||19/7/10 → 19/7/12|
Bibliographical noteFunding Information:
We would like to thank the anonymous reviewers and our shepherd, Youjip Won, for their valuable comments. We also thank Prof. Jin-Soo Kim for his devotion of time at LAX and valuable technical feedback. This work was supported partly by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT) (NRF-2017R1C1B2007273, NRF-2016M3C4A7952587) and by Samsung Electronics.
© Proceedings of the 2019 USENIX Annual Technical Conference, USENIX ATC 2019. All rights reserved.
All Science Journal Classification (ASJC) codes
- Computer Science(all)