Abstract

Recently, a multi-queue block I/O layer has been introduced in the Linux kernel to support NVMe SSDs efficiently. It can provide a high I/O bandwidth by employing several queues but does not provide a differentiated I/O services yet. In this paper, we present a new scheme that supports the priorities in the multi-queue block I/O layer. Our scheme brings the CFS (Completely Fair Scheduler) technique that is one of CPU scheduler into the I/O layer. In this way, we can provide a differentiated I/O service regardless of whether processes are CPU-intensive or I/O intensive. Besides, by considering the I/O request type, read requests are preferentially handled over write requests. Through implementation on the Linux kernel, we show that the proposed scheme appropriately services the I/O requests according to priority and request type and improves runtimes of read-intensive and write-intensive processes by 33% and 15%, respectively.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.