Abstract

Many NAND flash storage systems access flash memories by generating flash commands to process input/output (I/O) requests from a host system. Because the order in which flash commands are processed affects the I/O performance, command scheduling has been performed in previous studies to prioritize flash read commands for improving the read performance. However, in addition to the flash commands for accessing user data requested by the host, flash commands for internal tasks that improve the I/O performance and operation efficiency of the flash storage are issued. Particularly in embedded flash storage, the flash commands by the map cache management have a significant influence on the latency of I/O requests. The processing time of the I/O request depends on the execution time of the flash commands for mapping information and the flash commands for user data. In this paper, we propose command scheduling to improve read performance to address the occurrence of map flash commands. Priority is given to the flash read and program command from the read request, and among these commands, the flash command originating from the read request, which has a shorter processing time, is executed first. Consequently, the waiting time of the flash command is reduced, thereby improving the read latency. Experiments conducted with real workloads show that the proposed scheduling scheme reduces the average read latency by up to 51% compared with the existing scheduling scheme and demonstrates an effective performance improvement in a small map cache.

Highlights

  • An input/output (I/O) request sent from the host system to the storage system is translated into flash commands to be processed in the NAND flash storage system

  • We propose a command scheduling to improve the read performance of embedded flash storage systems based on the fact that the processing time of the I/O request is determined by the flash command sets

  • EFFECTIVE COMMAND SCHEDULING FOR MAP CACHE STORAGE we present a method of identifying flash commands related to read requests and reordering the flash commands so that requests with a shorter processing time are completed first to improve the read performance of the map cache flash storage

Read more

Summary

INTRODUCTION

An input/output (I/O) request sent from the host system to the storage system is translated into flash commands to be processed in the NAND flash storage system. Because the address translation procedure is essential for processing I/O requests, the flash command generated by the map cache should be considered in command scheduling. The existing scheme of scheduling flash commands based on their request size without considering the flash commands related to the I/O requests has a limitation in reducing the average latency. We propose a command scheduling to improve the read performance of embedded flash storage systems based on the fact that the processing time of the I/O request is determined by the flash command sets. Among multiple I/O requests that share the flash command by the map cache, read requests with the least processing time are scheduled to be prioritized, further reducing the read latency.

BACKGROUND
MOTIVATION
EFFECTIVE COMMAND SCHEDULING FOR MAP CACHE STORAGE
Findings
CONCLUSION
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