PIPULS: Predicting I/O Patterns Using LSTM in Storage Systems

2019 
Accurately predicting storage I/O patterns can help improving performance and endurance of flash memory SSDs. While existing studies made efforts in using machine learning to predict I/O behaviors, long latency limits wide adoption of such techniques. In this paper, we propose an efficient LSTM (Long Short-Term Memory) neural network solution to detect I/O intensities and idle periods inside storage device in real time, referred to as PIPULS (Predicting I/O Patterns Using LSTM in Storage). PIPULS is a supervised learning model that accurately and efficiently predicts I/O behaviors in SSD storage. We have built a prototype PIPULS consisting of an FPGA implementation for testing phase and a software module for training phase. The prototype PIPULS has been deployed in an NVM-express SSD platform for real-time I/O predictions. Extensive experiments have been carried out using real-world I/O traces to demonstrate the feasibility and performance of PIPULS in NVM-e SSD storage. Our experimental results show that PIPULS model can predict future I/O intensities with high accuracy (correlation coefficient = 92%). The run time latency is less than 2us. It takes 0.5MB of FPGA block RAM usage and 5% hardware resource utilization in the Xilinx VU9P FPGA implementation.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    13
    References
    3
    Citations
    NaN
    KQI
    []