13
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 1

Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash

  • Upload
    bree

  • View
    89

  • Download
    1

Embed Size (px)

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 Presentation

Citation preview

Page 1: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash

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

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

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

4

Motivation Why are active and inactive pages distinguished?

Page 5: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash

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

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

7

Container-marking based data place-ment

Page 8: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash

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

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

10

Page marker estimationwith probabilistic marker

Page 11: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash

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

12

Result

Page 13: Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash

13

Result