By High-Performance Storage SIG
The traditional I/O software stack can no longer fully meet the performance of high-performance storage devices. High-performance I/O stack is one of the key research topics in the current storage field, such as the user-mode solution SPDK and the standard kernel-mode solution io_uring.
The Linux community has designed a new asynchronous I/O framework, io_uring. io_uring provides a pair of shared ring buffers for the communication between the application and kernel to avoid memory copying during submission and completion events. The benefits of this design are listed below:
Since the first half of 2020, OpenAnolis has been involved in the development of the io_uring community, contributing multiple features and optimizations and also putting it into practice in graph database scenarios containerized development.
Advantages: Applications use io_uring based on standard system calls. Compared with the traditional Linux Native AIO, io_uring eliminates the limitation of only supporting Direct I/O and the additional memory copy overhead. Compared with the user-mode framework SPDK, io_uring can reuse the standard driver of the Linux kernel without the need for additional user-mode driver development. Therefore, it can apply more commonly with more friendly programming interface.
Technical Features:
Application Scenario: io_uring is applicable to most businesses and applications with a demand for asynchronous I/O. As of now, io_uring has been integrated into multiple mainstream open-source applications, such as RocksDB, Netty, QEMU, SPDK, PostgreSQL, MariaDB, etc.
Alibaba Cloud Graph Compute is a high-performance distributed graph computing product that supports the store, query, and compute complex graph-relational data and efficient graph algorithms and models. It is widely used in scenarios, such as advertisement search and recommendation, real-time risk control, knowledge graphs, social networks, etc. Its core engine iGraph introduces io_uring in disk-based query and access scenarios to support running steady at high IOPS.
Practical Effect: After iGraph is adapted and optimized with io_uring, the end-to-end latency of the service is optimized by up to 20% without any new introduced CPU overhead compared to the original Linux Native AIO version.
OpenAnolis Whitepaper: A Smooth Migration Solution for CentOS
85 posts | 5 followers
FollowOpenAnolis - November 30, 2022
OpenAnolis - July 8, 2022
OpenAnolis - September 19, 2023
Alibaba Cloud Community - January 5, 2023
Alibaba Cloud Community - May 12, 2023
Alibaba Cloud Community - December 2, 2022
85 posts | 5 followers
FollowExplore Web Hosting solutions that can power your personal website or empower your online business.
Learn MoreExplore how our Web Hosting solutions help small and medium sized companies power their websites and online businesses.
Learn MoreAlibaba Cloud Linux is a free-to-use, native operating system that provides a stable, reliable, and high-performance environment for your applications.
Learn MoreHigh Performance Computing (HPC) and AI technology helps scientific research institutions to perform viral gene sequencing, conduct new drug research and development, and shorten the research and development cycle.
Learn MoreMore Posts by OpenAnolis