Intelligent Garbage Collection Policy Based on I/O Workload Prediction for NAND Flash-based Storage Devices