Today memories NVRAM NVRAM and operating systems Summary Bibliography
Operating System Implications of Fast, Cheap, Non-Volatile Memory
Adam Morawski
MIMUW
2012-01-16
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Today memories Hard disk NVRAM Flash memory NVRAM and operating systems SRAM Summary DRAM Bibliography Hard disk
Very cheap, very big capacities available Very big latencies (3000000ns) Read and write only whole blocks (512B - few kB) Very bad performance while using randomly placed small amounts of data (can’t be operating memory) Delicate, high power mechanical device
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Today memories Hard disk NVRAM Flash memory NVRAM and operating systems SRAM Summary DRAM Bibliography Flash memory
Cheap, big capacities on small chips available Fast read (70ns), even small randomly placed data Slow write (2500ns/block), only whole blocks - can’t be operating memory Limited durability (104 - 107 single block writes - high voltage, data retention of about 20 years)
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Today memories Hard disk NVRAM Flash memory NVRAM and operating systems SRAM Summary DRAM Bibliography SRAM
Static Random Access Memory random access to single bytes/words can be very fast (2ns), while not writing current can be very low (memory cells are made of logic gates) volatile (can’t be reliable data store) expensive, small capacities, memory cells are big
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Today memories Hard disk NVRAM Flash memory NVRAM and operating systems SRAM Summary DRAM Bibliography DRAM
Dynamic RAM like SRAM but a little bit slower cheap, big capacities available, small cells size volatile must be refreshed, clock frequency can’t be changed in wide range not neglible power consumption (cells are made of capacitors and driving transistors)
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Today memories NVRAM Resistance-based memories NVRAM and operating systems Other ideas Summary Bibliography MRAM
Magnetoresistive RAM In development from 90-ies Resistance change depending on magnetization Random access, non-volatile, fast, durable Commercially available but can’t compete with DRAM EverSpin Technologies MR2A16AVYS35: 4Mb, 35ns, $20 (500 pcs) - $30 (1 pc)
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Today memories NVRAM Resistance-based memories NVRAM and operating systems Other ideas Summary Bibliography Memristor
Fourth fundamental passive electronic component Resistance as a function of previous charge flow Theoretically predicted in 1971 Made in 2008 (HP Labs, titanium dioxide) Memory: non-volatile, random access, can be clocked up to 1GHz In november 2011 commercial availability in 18 mounths announced
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Today memories NVRAM Resistance-based memories NVRAM and operating systems Other ideas Summary Bibliography Phase Change Memory
Resistance change depending on way of heating material Promising predictions but big current needed to write Prototypes: IBM, june 2011, 200kb, good properties Hybrid technologies (with MEMS) - 512Mb prototypes Limited durability! (108 writes - heat)
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Today memories NVRAM Resistance-based memories NVRAM and operating systems Other ideas Summary Bibliography FeRAM
Ferroelectric RAM Changing crystal properties with current, read as energy measuring while writing Non-volatile, random access, low power, fast (< 10ns) Durability up to 1016 cycles, has to be refreshed after read, big cell size Fujitsu MB85R1002ANC-GE1: 1Mb, 150ns, ok $10
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory In 2008 working 3-bit prototype (IBM)
Today memories NVRAM Resistance-based memories NVRAM and operating systems Other ideas Summary Bibliography Racetrack memory
Magnetic domains movement in thin ferromagnetic wire Non-volatile, almost random access, durable Predictions: access time down to 30ns, density like in HDDs, throughput worse than in DRAM
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Today memories NVRAM Resistance-based memories NVRAM and operating systems Other ideas Summary Bibliography Racetrack memory
Magnetic domains movement in thin ferromagnetic wire Non-volatile, almost random access, durable Predictions: access time down to 30ns, density like in HDDs, throughput worse than in DRAM In 2008 working 3-bit prototype (IBM)
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Possible architectures Today memories System kernel NVRAM File system NVRAM and operating systems Machine state Summary Data portability Bibliography Safety, privacy etc Possible architectures
NVRAM as data store NVRAM and DRAM in common address space (NUMA) only NVRAM
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Possible architectures Today memories System kernel NVRAM File system NVRAM and operating systems Machine state Summary Data portability Bibliography Safety, privacy etc System kernel
Taking into account memory cells wearing-off (wear-leveling) No need of swapping Is there a need of paging?
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Possible architectures Today memories System kernel NVRAM File system NVRAM and operating systems Machine state Summary Data portability Bibliography Safety, privacy etc File system
Capability of random access, not only to whole blocks Common address space with executed code and program-allocated memory Other bottle-necks, optimalisations In some cases there is no need to load some data to memory Is there a need for virtual memory (malloc) and data-store (fopen) division? Are files needed at all?
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Possible architectures Today memories System kernel NVRAM File system NVRAM and operating systems Machine state Summary Data portability Bibliography Safety, privacy etc Machine state
Machine/program state more durable than with volatile memory In memory we can store program state (with code), not only code that is loaded to memory and executed to initialise this program state More options while rebooting/powering off - some pieces of system can save their state Wrong program can destroy itself unrecoverably - data structures corruption is non-volatile too Mayby some repair mechanisms are needed (checkpoints+event log)
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Possible architectures Today memories System kernel NVRAM File system NVRAM and operating systems Machine state Summary Data portability Bibliography Safety, privacy etc Machine state - installation, update, repair
Installing program as image, state (checkpoint), stopped program doesn’t have to be present in other form than running - program starting is not needed Saving checkpoints (to repair or update) - while there is as few dependencies of system as possible How to update - parallel checkpoints, hot-patching, old way - restart needed Existing mechanisms of running programs moving between machines can be used (COW...)
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Possible architectures Today memories System kernel NVRAM File system NVRAM and operating systems Machine state Summary Data portability Bibliography Safety, privacy etc Data portability
Single address space make harder direct data migration between machines Sending data only through network, with specialised protocols or.. as files
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Possible architectures Today memories System kernel NVRAM File system NVRAM and operating systems Machine state Summary Data portability Bibliography Safety, privacy etc Safety, privacy etc
Cold-boot attack prone Easier investigation after failure/attack (checkpoints, durable program state) Programmer have to has control of data (non)volatility Maybe some volatile memory has to be leaved for encryption keys etc
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Today memories NVRAM Almost as NVRAM - PalmOS NVRAM and operating systems NVRAM opportunities Summary Bibliography Almost as NVRAM - PalmOS
Everything in battery-supported DRAM No normal filesystem - only programs and their databases Execution in place Program state saved between application starts/context changes though there is no multitasking Program state can survive even cold-reset or be back-uped while synchronizing Palm with PC User point of view: there is no file saving operation - you are working on the only existing copy
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Today memories NVRAM Almost as NVRAM - PalmOS NVRAM and operating systems NVRAM opportunities Summary Bibliography Almost as NVRAM - PalmOS
”Turning off”: stopping CPU and some other pieces of hardware ”Turning on”: partial hardware initialisation, return to recently executed code Differences with NVRAM are visible while battery is disconnected or exhausted: data durability, no cold-boot attack risk
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory there can be a chance while DRAM will reach physical boundaries
Today memories NVRAM Almost as NVRAM - PalmOS NVRAM and operating systems NVRAM opportunities Summary Bibliography NVRAM opportunities
one of holy Gralls of electronics working on NVRAM is noticable some technologies can’t compete with DRAM while with others it can be unprofitable
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Today memories NVRAM Almost as NVRAM - PalmOS NVRAM and operating systems NVRAM opportunities Summary Bibliography NVRAM opportunities
one of holy Gralls of electronics working on NVRAM is noticable some technologies can’t compete with DRAM while with others it can be unprofitable there can be a chance while DRAM will reach physical boundaries
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory Today memories NVRAM NVRAM and operating systems Summary Bibliography Bibliography
1 Katelin Bailey, Luis Ceze, Steven D. Gribble, Henry M. Levy: Operating System Implications of Fast, Cheap, Non-Volatile Memory 2 B.C. Lee, Ping Zhou, Jun Yang, Youtao Zhang, Bo Zhao, E. Ipek, O. Mutlu, and D. Burger: Phase-change technology and the future of main memory 3 Wikipedia: MRAM, Racetrack Memory, Ferroelectric RAM, PCRAM
Adam Morawski Operating System Implications of Fast, Cheap, Non-Volatile Memory