container marking : combining data placement, garbage collection and wear leveling for flash
DESCRIPTION
Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash. MASCOTS '11. Xiao-Yu Hu , Robert Haas, and Eleftheriou Evangelos From IBM Reserarch , Zurich, Switzerland. 2011. 08. 23 ( Tue ) Kwangwoon univ . SystemSoftware Lab. HoSeok Seo. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash](https://reader035.vdocument.in/reader035/viewer/2022081507/56816602550346895dd93350/html5/thumbnails/1.jpg)
Container Marking : Combining Data Placement, Garbage Collection and
Wear Leveling for FlashMASCOTS '11
Xiao-Yu Hu, Robert Haas, and Eleftheriou EvangelosFrom IBM Reserarch, Zurich, Switzerland
2011. 08. 23 (Tue)Kwangwoon univ. SystemSoftware Lab.
HoSeok Seo1
![Page 2: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash](https://reader035.vdocument.in/reader035/viewer/2022081507/56816602550346895dd93350/html5/thumbnails/2.jpg)
2
Introduction Garbage Collection
Reclaim blocks that include invalid page to reuse it as free blocks
Wear Leveling Use blocks evenly to extends overall SSD endurance life
But, Wear Leveling makes Unnecessary invalid pages Unnecessary Writes ( for relocation of valid pages )
In this paper Proposes Container Marking Scheme to solve these prob-
lems
![Page 3: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash](https://reader035.vdocument.in/reader035/viewer/2022081507/56816602550346895dd93350/html5/thumbnails/3.jpg)
3
Background Garbage Collection
Greedy- Select victims that have less valid pages
Cost-benefit(FIFO)- Consider two parameters
• time after last updated block• Number of valid pages
- Select victims that have the biggest value
![Page 4: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash](https://reader035.vdocument.in/reader035/viewer/2022081507/56816602550346895dd93350/html5/thumbnails/4.jpg)
4
Motivation Why are active and inactive pages distinguished?
![Page 5: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash](https://reader035.vdocument.in/reader035/viewer/2022081507/56816602550346895dd93350/html5/thumbnails/5.jpg)
5
Scheme Principle If a block has the same active level pages,
it has high chance to have invalid pages a lot.
Marker Blocks have a marker indicating block’s endurance life. Pages have a marker indicating page’s active level
Data placement One block has the same active level pages. More active pages is located more younger blocks
![Page 6: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash](https://reader035.vdocument.in/reader035/viewer/2022081507/56816602550346895dd93350/html5/thumbnails/6.jpg)
6
Container-marking based data place-ment Block marker range : 1 ~ 2L
Low marker : older blocks High marker : younger blocks
The free block pool is organized by a priority queue in term ofthe remaining life count of the blocks.
The priority queue can be logically divided into 2L segments.
Once a free block has been filled up with data, it is removed from the free block pool and goes into one of 2L lists of occupied blocks depending on its marker
![Page 7: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash](https://reader035.vdocument.in/reader035/viewer/2022081507/56816602550346895dd93350/html5/thumbnails/7.jpg)
7
Container-marking based data place-ment
![Page 8: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash](https://reader035.vdocument.in/reader035/viewer/2022081507/56816602550346895dd93350/html5/thumbnails/8.jpg)
8
Modified greedy selection Victim selection policy for garbage collection. Prevent relatively younger blocks from being
locked by inactive data.
To select j-th block,V : the number of valid page in
a blockE : remaining
life count
![Page 9: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash](https://reader035.vdocument.in/reader035/viewer/2022081507/56816602550346895dd93350/html5/thumbnails/9.jpg)
9
Page marker estimation Basic
At high utilization, pages on average have a higher chance to be relocated than to be updated.
In this case, the markers gradually decrease and converge to lower values.
Type EstimationNew M = LUpdated M = m’ + 1Relocated M = m’ - 1
![Page 10: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash](https://reader035.vdocument.in/reader035/viewer/2022081507/56816602550346895dd93350/html5/thumbnails/10.jpg)
10
Page marker estimationwith probabilistic marker
![Page 11: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash](https://reader035.vdocument.in/reader035/viewer/2022081507/56816602550346895dd93350/html5/thumbnails/11.jpg)
11
Implementation Java-based Simulator
Map Policy : page-level mapping
Container-marking meta data (32bits) Remaining life count (20bit) The number of valid pages within the block (8bits) Container marker (4bits)
![Page 12: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash](https://reader035.vdocument.in/reader035/viewer/2022081507/56816602550346895dd93350/html5/thumbnails/12.jpg)
12
Result
![Page 13: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash](https://reader035.vdocument.in/reader035/viewer/2022081507/56816602550346895dd93350/html5/thumbnails/13.jpg)
13
Result