150 likes | 367 Views
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.
E N D
Container Marking : Combining Data Placement, Garbage Collection and Wear Leveling for Flash MASCOTS '11 Xiao-Yu Hu, Robert Haas, and EleftheriouEvangelos From IBM Reserarch, Zurich, Switzerland 2011. 08. 23 (Tue) Kwangwoonuniv. SystemSoftware Lab. HoSeokSeo
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 problems
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
Motivation • Why are active and inactive pages distinguished?
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
Container-marking based data placement • 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 of the 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
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 block E : remaining life count
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.
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)