Using data clustering to improve cleaning performance for plash memory
Software—Practice & Experience
Cleaning policies in mobile computers using flash memory
Journal of Systems and Software
Algorithms and data structures for flash memories
ACM Computing Surveys (CSUR)
A flash-memory based file system
TCON'95 Proceedings of the USENIX 1995 Technical Conference Proceedings
Write amplification analysis in flash-based solid state drives
SYSTOR '09 Proceedings of SYSTOR 2009: The Israeli Experimental Systems Conference
NANDFS: a flexible flash file system for RAM-constrained systems
EMSOFT '09 Proceedings of the seventh ACM international conference on Embedded software
Proceedings of the 46th Annual Design Automation Conference
Enhancing lifetime and security of PCM-based main memory with start-gap wear leveling
Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture
Write endurance in flash drives: measurements and analysis
FAST'10 Proceedings of the 8th USENIX conference on File and storage technologies
SIGACT news online algorithms column 17
ACM SIGACT News
Exploiting memory device wear-out dynamics to improve NAND flash memory system performance
FAST'11 Proceedings of the 9th USENIX conference on File and stroage technologies
A caching-oriented management design for the performance enhancement of solid-state drives
ACM Transactions on Storage (TOS)
Analytic modeling of SSD write performance
Proceedings of the 5th Annual International Systems and Storage Conference
Proceedings of the ACM SIGMETRICS/international conference on Measurement and modeling of computer systems
Bloom filter-based dynamic wear leveling for phase-change RAM
DATE '12 Proceedings of the Conference on Design, Automation and Test in Europe
Analytic Models of SSD Write Performance
ACM Transactions on Storage (TOS)
Hi-index | 0.00 |
The cells of flash memories can only endure a limited number of write cycles, usually between 10,000 and 1,000,000. Furthermore, cells containing data must be erased before they can store new data, and erasure operations erase large blocks of memory, not individual cells. To maximize the endurance of the device (the amount of useful data that can be written to it before one of its cells wears out), flash-based systems move data around in an attempt to reduce the total number of erasures and to level the wear of the different erase blocks. This data movement introduces interesting online problems called wear-leveling problems. We show that a simple randomized algorithm for one problem is essentially optimal. For a more difficult problem, we show that clever offline algorithms can improve upon naive approaches, but online algorithms essentially cannot.