Upload
flashdomain
View
541
Download
6
Embed Size (px)
DESCRIPTION
Citation preview
eNVy : A Non-Volatile, Main eNVy : A Non-Volatile, Main Memory Storage SystemMemory Storage System
Michael Wu and Willy Zwaenepoel.Michael Wu and Willy Zwaenepoel.
Proceedings of the 6th Symposium on Architectural Support for PrograProceedings of the 6th Symposium on Architectural Support for Programming Languages and Operating Systems, October 1994mming Languages and Operating Systems, October 1994
Speaker : Ha do youngSpeaker : Ha do young
ContentsContents
IntroductionIntroduction Traditional storage systemTraditional storage system Comparison of storage tech.Comparison of storage tech. Overviews on eNVyOverviews on eNVy
eNVy architectureeNVy architecture Cleaning policyCleaning policy SimulationSimulation Hardware ExtensionsHardware Extensions ConclusionConclusion
IntroductionIntroduction
Traditional storage systemTraditional storage system use magnetic diskuse magnetic disk
difficult to reduce access timedifficult to reduce access time SolutionsSolutions
cache, write buffer, RAID array…cache, write buffer, RAID array…
Alternative approachAlternative approach persistent storage system using solid-persistent storage system using solid-
state memoriesstate memories
Introduction (Cont’)Introduction (Cont’)
Comparison of storage tech.Comparison of storage tech.
envy : read 180 ns / write 200 nsenvy : read 180 ns / write 200 ns
Introduction (Cont’)Introduction (Cont’)
Overviews on eNVyOverviews on eNVy large persistent storage system built on top of large persistent storage system built on top of
Flash memoryFlash memory as a simple linear array of non-volatile memoryas a simple linear array of non-volatile memory overcomeovercome
bulk erase naturebulk erase nature write, erase time > read timewrite, erase time > read time lifetimelifetime
ContentsContents IntroductionIntroduction eNVy architectureeNVy architecture
featuresfeatures SRAM as write bufferSRAM as write buffer segmentsegment cleaningcleaning
Cleaning policyCleaning policy SimulationSimulation Hardware ExtensionsHardware Extensions ConclusionConclusion
eNVy architectureeNVy architecture
eNVy architecture (Cont’)eNVy architecture (Cont’)
FeaturesFeatures manage data in page levelmanage data in page level use page tableuse page table copy-on-write schemecopy-on-write scheme
in-place update using SRAM as write bufferin-place update using SRAM as write buffer small amount of battery backed SRAM small amount of battery backed SRAM
page table / write buffer page table / write buffer optimized cleaning alg.optimized cleaning alg.
eNVy architecture (Cont’)eNVy architecture (Cont’) Write operationWrite operation
eNVy architecture (Cont’)eNVy architecture (Cont’) SegmentSegment
erase unit in eNVyerase unit in eNVy
eNVy architecture (Cont’)eNVy architecture (Cont’) CleaningCleaning
ContentsContents IntroductionIntroduction eNVy architectureeNVy architecture Cleaning policyCleaning policy
Cleaning costCleaning cost Greedy methodGreedy method Locality gatheringLocality gathering Hybrid methodHybrid method
SimulationSimulation Hardware ExtensionsHardware Extensions ConclusionConclusion
Cleaning policyCleaning policy
Cleaning policy decidesCleaning policy decides which segments to cleanwhich segments to clean when to cleanwhen to clean where to write new datawhere to write new data
Three different cleaning strategiesThree different cleaning strategies greedy methodgreedy method locality gatheringlocality gathering hybrid methodhybrid method
Cleaning policy (Cont’)Cleaning policy (Cont’)
Cleaning policy (Cont’)Cleaning policy (Cont’) Flash Cleaning costFlash Cleaning cost
# of Flash program operations by cleaning alg.# of Flash program operations by cleaning alg. depends on segment utilization (u)depends on segment utilization (u)
Segment utilization : Segment utilization : percentage of storage percentage of storage space actually occupied by space actually occupied by live datalive data
Cleaning policy (Cont’)Cleaning policy (Cont’)
Greedy methodGreedy method OperationOperation
clean the most invalidated segmentclean the most invalidated segment tends to clean segments in a FIFO ordertends to clean segments in a FIFO order
good for uniform distributiongood for uniform distribution
Cleaning policy (Cont’)Cleaning policy (Cont’) Locality gatheringLocality gathering
OperationOperation heuristicheuristic
frequency X cleaning costfrequency X cleaning cost data redistributiondata redistribution
to lower utilizations of hot seg.to lower utilizations of hot seg. locality gatheringlocality gathering
hot data → lower # seg.hot data → lower # seg. cold data → higher # seg.cold data → higher # seg.
locality preservationlocality preservation seg.↔write buf : record seg. #seg.↔write buf : record seg. #
use high localitiesuse high localities swap seg. for even wearingswap seg. for even wearing
Cleaning policy (Cont’)Cleaning policy (Cont’)
Hybrid methodHybrid method partitionpartition
Several adjoining segmentsSeveral adjoining segments locality gathering between partitionslocality gathering between partitions greedy method within each partitiongreedy method within each partition
Cleaning policy (Cont’)Cleaning policy (Cont’)
PerformancePerformance
ContentsContents IntroductionIntroduction eNVy architectureeNVy architecture Cleaning policyCleaning policy SimulationSimulation
Simulation environmentSimulation environment ThroughputThroughput LatencyLatency LifetimeLifetime
Hardware ExtensionsHardware Extensions ConclusionConclusion
SimulationSimulation
Simulation environmentSimulation environment
Simulation (Cont’)Simulation (Cont’) WorkloadWorkload
I/O workload by TPC-A database benchmarkI/O workload by TPC-A database benchmark Simulation ParametersSimulation Parameters
Simulation (Cont’)Simulation (Cont’)
ThroughputThroughput
Simulation (Cont’)Simulation (Cont’)
LatencyLatency
Simulation (Cont’)Simulation (Cont’)
LifetimeLifetime 10000 TPS simulation10000 TPS simulation most modern computer equipment lifespanmost modern computer equipment lifespan
3 ~ 5 years3 ~ 5 years
ContentsContents
IntroductionIntroduction eNVy architectureeNVy architecture Cleaning policyCleaning policy SimulationSimulation Hardware ExtensionsHardware Extensions ConclusionConclusion
Hardware extensionsHardware extensions
Multiple program and erase Multiple program and erase operationoperation Concurrent operationConcurrent operation
Hardware atomic transaction supportHardware atomic transaction support data in Flashdata in Flash
invalidated but not destroyedinvalidated but not destroyed can just roll back from Flashcan just roll back from Flash
ConclusionConclusion
Flash is becoming important storage mediuFlash is becoming important storage mediumm
More portable and better performanceMore portable and better performance
eNVy provides an efficient interface to a hieNVy provides an efficient interface to a high speed, Flash-based storage systemgh speed, Flash-based storage system