PIPULS: Predicting I/O patterns using LSTM in storage systems
Date of Original Version
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.
2019 International Conference on High Performance Big Data and Intelligent Systems, HPBD and IS 2019
Li, Wenjiang, Dongyang Li, Yan Wang, Bin Xu, Weijun Li, Lina Yu, and Qing Yang. "PIPULS: Predicting I/O patterns using LSTM in storage systems." 2019 International Conference on High Performance Big Data and Intelligent Systems, HPBD and IS 2019 , (2019): 14-21. doi:10.1109/HPBDIS.2019.8735467.