uFLIP-OC: Understanding Flash I/O Patterns on Open-Channel Solid State Drives

Ivan Luiz Picoli, Carla Ysabela Villegas Pasco, Björn Thór Jónsson, Luc Bouganim, Philippe Bonnet

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


Solid-State Drives (SSDs) have gained acceptance by providing the same block device abstraction as magnetic hard drives, at the cost of suboptimal resource utilisation and unpredictable performance. Recently, Open-Channel SSDs have emerged as a means to obtain predictably high performance, based on a clean break from the block device abstraction. Open-channel SSDs embed a minimal flash translation layer (FTL) and expose their internals to the host. The Linux open-channel SSD subsystem, LightNVM, lets kernel modules as well as user-space applications control data placement and I/O scheduling. This way, it is the host that is responsible for SSD management. But what kind of performance model should the host rely on to guide the way it manages data placement and I/O scheduling? For addressing this question we have defined uFLIP-OC, a benchmark designed to identify the I/O patterns that are best suited for a given open-channel SSD. Our experiments on a DragonFire Card (DFC) SSD, equipped with the OX controller, illustrate the performance impact of media characteristics and parallelism. We discuss how uFLIP-OC can be used to guide the design of host-based data systems on open-channel SSDs.
Original languageEnglish
Title of host publicationAPSys '17 Proceedings of the 8th Asia-Pacific Workshop on Systems
Number of pages7
Place of PublicationMumbai, India
PublisherAssociation for Computing Machinery
Publication dateSept 2017
Article number20
ISBN (Print)978-1-4503-5197-3
Publication statusPublished - Sept 2017


  • Open-channel SSDs
  • NAND Flash
  • Benchmarking
  • uFLIP-OC


Dive into the research topics of 'uFLIP-OC: Understanding Flash I/O Patterns on Open-Channel Solid State Drives'. Together they form a unique fingerprint.

Cite this