Greedy page replacement algorithm for flash-aware swap system

Because of the attractive features, flash memory replaces magnetic disk as swap storage. All page write operations to flash-memory-based swap storage are requested during the page replacement algorithm in terms of swapping out dirty pages to obtain free page frames. Due to out-of-place update scheme, intensive write operations could result in using up the flash-memory-based swap storage quickly and incurring frequent garbage collection operations with high energy consumption. Moreover, the cost of flash page write operation is much higher than that of flash page read operation. Therefore, in this paper, we propose a greedy page replacement algorithm, called GDLRU, for flash-aware swap system. In order to reduce the number of flash page write operations, GDLRU introduces a clean-aware victim page selection method called CPS which evicts clean page preferentially. If there is no clean page, CPS evicts the dirty page with the least dirty data preferentially. To further reduce the number of flash page write operations, GDLRU also introduces a clean-aware victim page update scheme called CPU which only writes back the dirty flash pages within the victim dirty page. The simulation results indicate that our proposed algorithm outperforms other existing page replacement algorithms in terms of replacement cost.

[1]  Sunhwa Park,et al.  New techniques for real-time FAT file system in mobile multimedia devices , 2006, IEEE Trans. Consumer Electron..

[2]  Gerhard Weikum,et al.  The LRU-K page replacement algorithm for database disk buffering , 1993, SIGMOD Conference.

[3]  J. T. Robinson,et al.  Data cache management using frequency-based replacement , 1990, SIGMETRICS '90.

[4]  Sooyong Kang,et al.  LRU-WSR: integration of LRU and writes sequence reordering for flash memory , 2008, IEEE Transactions on Consumer Electronics.

[5]  Kern Koh,et al.  FARS: A page replacement algorithm for NAND flash memory based embedded systems , 2008, 2008 8th IEEE International Conference on Computer and Information Technology.

[6]  Seon-Yeong Park,et al.  FASS : A Flash-Aware Swap System , 2005 .

[7]  M. Lin,et al.  Optimised Linux swap system for flash memory , 2011 .

[8]  Nicholas Nethercote,et al.  Valgrind: A Program Supervision Framework , 2003, RV@CAV.

[9]  Song Jiang,et al.  LIRS: an efficient low inter-reference recency set replacement policy to improve buffer cache performance , 2002, SIGMETRICS '02.

[10]  Dennis Shasha,et al.  2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm , 1994, VLDB.

[11]  Daniel Pierre Bovet,et al.  Understanding the Linux Kernel , 2000 .

[12]  Kern Koh,et al.  Swap space management technique for portable consumer electronics with NAND flash memory , 2010, IEEE Transactions on Consumer Electronics.

[13]  Kern Koh,et al.  A New Linux Swap System for Flash Memory Storage Devices , 2008, 2008 International Conference on Computational Sciences and Its Applications.