Linux block IO: introducing multi-queue SSD access on multi-core systems

Matias Bjørling, Jens Axboe, David Nellans, Philippe Bonnet

    Research output: Conference Article in Proceeding or Book/Report chapterArticle in proceedingsResearchpeer-review

    Abstract

    The IO performance of storage devices has accelerated from hundreds of IOPS five years ago, to hundreds of thousands of IOPS today, and tens of millions of IOPS projected in five years. This sharp evolution is primarily due to the introduc- tion of NAND-flash devices and their data parallel design. In this work, we demonstrate that the block layer within the operating system, originally designed to handle thousands of IOPS, has become a bottleneck to overall storage system performance, specially on the high NUMA-factor processors systems that are becoming commonplace. We describe the design of a next generation block layer that is capable of handling tens of millions of IOPS on a multi-core system equipped with a single storage device. Our experiments show that our design scales graciously with the number of cores, even on NUMA systems with multiple sockets.
    Original languageEnglish
    Title of host publicationSYSTOR '13 Proceedings of the 6th International Systems and Storage Conference. Association for Computing Machinery, 22. (Systor).
    Number of pages1
    PublisherAssociation for Computing Machinery
    Publication date2013
    Pages1
    Article number22
    ISBN (Print)978-1-4503-2116-7
    DOIs
    Publication statusPublished - 2013

    Keywords

    • block layer
    • latency
    • linux
    • non-volatile memory
    • solid state drives
    • throughput

    Fingerprint

    Dive into the research topics of 'Linux block IO: introducing multi-queue SSD access on multi-core systems'. Together they form a unique fingerprint.

    Cite this