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.

Full Text
Published version (Free)

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