Improving read performance by isolating multiple queues in NVMe SSDs

As NVMe SSDs have become viable, recent researches have focused on optimizing the performance of NVMe SSDs, which provide multiple I/O queues to maximize the I/O parallelism of flash-chip, while traditional operating systems are designed ordinarily for single queue storage, such as HDD and SATA SSD. Unfortunately, no prior works have considered the write interference while NVMe SSD still has the possibility of the interference. This interference is crucial in read-intensive environments because write requests negatively affect the latency of read requests. In this paper, we propose a novel queue isolation scheme that efficiently eliminates the write interference and improves the read performance by isolating read and write requests. Our experimental results clearly show that our scheme improves the read performance by up to 33% in heavy read workloads, compared to Baseline.

[1]  Xubin He,et al.  Reducing SSD read latency via NAND flash program and erase suspension , 2012, FAST.

[2]  Dongkun Shin,et al.  Workload-aware budget compensation scheduling for NVMe solid state drives , 2015, 2015 IEEE Non-Volatile Memory System and Applications Symposium (NVMSA).

[3]  Mrinmoy Ghosh,et al.  Performance analysis of NVMe SSDs and their implication on real world databases , 2015, SYSTOR.

[4]  Xiaodong Zhang,et al.  Understanding intrinsic characteristics and system implications of flash memory based solid state drives , 2009, SIGMETRICS '09.

[5]  Jin-Soo Kim,et al.  NVMeDirect: A User-space I/O Framework for Application-specific Optimization on NVMe SSDs , 2016, HotStorage.

[6]  Mrinmoy Ghosh,et al.  Performance Characterization of Hyperscale Applicationson on NVMe SSDs , 2015, SIGMETRICS.

[7]  Philippe Bonnet,et al.  Linux block IO: introducing multi-queue SSD access on multi-core systems , 2013, SYSTOR '13.

[8]  Hyeonsang Eom,et al.  OS I/O Path Optimizations for Flash Solid-state Drives , 2014, USENIX Annual Technical Conference.

[9]  Dongwoo Lee,et al.  Improving performance by bridging the semantic gap between multi-queue SSD and I/O virtualization framework , 2015, 2015 31st Symposium on Mass Storage Systems and Technologies (MSST).

[10]  Kai Shen,et al.  FIOS: a fair, efficient flash I/O scheduler , 2012, FAST.

[11]  Heon Young Yeom,et al.  An Empirical Evaluation of NVM Express SSD , 2015, 2015 International Conference on Cloud and Autonomic Computing.

[12]  Guoliang Xing,et al.  Reducing Smartphone Application Delay through Read/Write Isolation , 2015, MobiSys.