The Ultimate Guide to Choosing WordPress Pros and Cons
Storage Class Memory: Technology Overview & System Impacts
1. Phase Change Memory
Storage Class Memory:
Technology Overview & System Impacts
Zhichao Liang
frankey0207@gmail.com
Storage Class Memory
2. Phase Change Memory
Outline
• Why & what is storage class memory?
• A typical storage class memory device: PCM
• The impacts of SCM on database system
• Conclusion
Storage Class Memory
3. Phase Change Memory
Outline
• Why & what is storage class memory?
• A typical storage class memory device: PCM
• The impacts of SCM on database system
• Conclusion
Storage Class Memory
7. Phase Change Memory
HDD access time (cont. )
Access time
rotation time seek time
HDD with a faster than HDD size will transform
15,000 rpm almost from 3.5-inch to 2.4-inch
impossible within the and then 1.8-inch for the
next 10 years! best case.
Storage Class Memory
8. Phase Change Memory
HDD power
• The power P supplied to a disk drive is given by P = I
+ M +S.
- I : power for interface & control logic;
- M: motor to spin the disk;
- S : move head to the new track.
I & M already close to S can be improved on smaller
their theoretical size disk drive or shutting down
efficiency limits! completely when not in use!
Storage Class Memory
9. Phase Change Memory
SSD disadvantage
• The short life time of SSD is an obstacle for its use in
industrial-length applications.
Device Endurance
DRAM 10 power 15
Disk drive 10 power 12
Flash memory 10 power 4 ~ 5
• The limited scalability of SSD
hinder its capacity increasing
& price decreasing.
Storage Class Memory
10. Phase Change Memory
Definition of SCM
• Storage Class Memory (SCM) is IBM’s term for a new
class of data storage and memory devices.
• SCM blurs the distinction between Memory (fast,
expensive, volatile) and Storage (slow, cheap, non-volatile).
• Features of SCM:
- Solid state, no moving parts
- Short Access times (within an order-of-magnitude of DRAM)
- Low cost per bit (DISK like, within an order-of-magnitude)
- Non-volatile ( ~ 10 years)
Storage Class Memory
14. Phase Change Memory
Outline
• Why & what is storage class memory?
• A typical storage class memory device: PCM
• The impacts of SCM on database system
• Conclusion
Storage Class Memory
15. Phase Change Memory
Phase change memory
• Phase change memory (PCM) is the leading contender
for first true SCM.
• At least 18 companies are working
on PCM, such as Samsung, IBM,
Intel, Micro, etc.
• PCM is an electronic device using
two distinct solid phases
of a metal alloy to store
a bit.
Storage Class Memory
16. Phase Change Memory
PCM basic concept
• Ge-Sb-Te exists in a (quasi)stable amorphous and a
stable crystalline phase.
- Phases have very different electrical resistances – ratio of
1:100 to 1:1000, and different optical reflectivity.
• Transition between phases by controlled heating and
cooling
- Write ‘1’ (SET) : longer (50ns) weaker current pulse
- Write ‘0’ (RESET) : short (10ns) intense current pulse
- Read : short weak pulse senses resistance
Storage Class Memory
17. Phase Change Memory
PCM
A data cell at each
of the intersections
of a wordline and a
bitline!
Slow crystallization
affects write
performance!
Storage Class Memory
18. Phase Change Memory
PCM vs DRAM
Device Type DRAM PCM-S PCM-M
Capacity 16GB 128GB 16GB
Feature Size 32nm 32nm 32nm
Read Latency 60ns 800ns 300ns
Write Latency 60ns 1400ns 1400ns
Retention Time ms 2-10 years dependent
Write Endurance 10 power 15 10 power 8 10 power 12
An SCM cell at the maximum write times would be worn out within a few
minutes! So a wear-leveling layer maybe necessary!
Storage Class Memory
19. Phase Change Memory
Taxonomy of PCM system uses
Memory Oriented: Storage Oriented:
1) PCM replaces DRAM 1) PCM replaces HDD/SSD
completely; completely;
2) PCM stands by DRAM. 2) PCM as the cache of
HDD/SSD.
PCM replaces DRAM completely:
L2 & L3 PCM
CPU PCM
cache control
Storage Class Memory
20. Phase Change Memory
Taxonomy of PCM system uses
Memory Oriented: Storage Oriented:
1) PCM replaces DRAM 1) PCM replaces HDD/SSD
completely; completely;
2) PCM stands by DRAM. 2) PCM as the cache of
HDD/SSD.
PCM stands by DRAM:
DRAM
CPU VM contol
PCM
PCM
control
Storage Class Memory
21. Phase Change Memory
Taxonomy of PCM system uses
Memory Oriented: Storage Oriented:
1) PCM replaces DRAM 1) PCM replaces HDD/SSD
completely; completely;
2) PCM stands by DRAM. 2) PCM as the cache of
HDD/SSD.
PCM replaces HDD/SSD completely:
1) Via legacy
I/O buses?
CPU I/O control PCM 2) Via new
PCM
control interface?
3) Page device ?
Storage Class Memory
22. Phase Change Memory
Taxonomy of PCM system uses
Memory Oriented: Storage Oriented:
1) PCM replaces DRAM 1) PCM replaces HDD/SSD
completely; completely;
2) PCM stands by DRAM. 2) PCM as the cache of
HDD/SSD.
PCM as the cache of HDD/SSD:
PCM
DRAM I/O control PCM HDD
control
Storage Class Memory
23. Phase Change Memory
Outline
• Why & what is storage class memory?
• A typical storage class memory device: PCM
• The impacts of PCM on database system
• Conclusion
Storage Class Memory
24. Phase Change Memory
Database system overview
Read & Write
Applications
Access Methods Transaction
Data Page &
Log File
Lock
B+ Tree Index
Hash Index
Buffer Pool
HDD
LRU, Clock
Log
Storage Class Memory
25. Phase Change Memory
PCM replaces DRAM
• PCM buffer pool access (300ns) will be slower than
DRAM buffer pool access (60ns).
• PCM buffer pool write (1400ns) will be slower than
DRAM buffer pool write (60ns).
• Data durability can be guaranteed even database
server restart or power off.
• What about logging? Logging is still necessary?
• Wear-leveling can be a problem!
• Rethink of buffer pool replacement strategy!
Storage Class Memory
26. Phase Change Memory
PCM replaces DRAM (cont.)
• PCM buffer pool access (300ns) will be slower than
DRAM buffer pool access (60ns).
• PCM buffer pool write (1400ns) will be slower than
DRAM buffer pool write (60ns). How to reduce
Asymmetric read
& write on PCM write on PCM
• Data durability can be guaranteed even database
server restart or power off.
• What about logging? Logging is still necessary?
• Wear-leveling can be a problem!
• Rethink of buffer pool replacement strategy!
Storage Class Memory
27. Phase Change Memory
PCM with DRAM
• Using PCM to extend the DRAM, older data in DRAM
will be transmitted to PCM.
• Or using PCM and DRAM in parallel mode.
• Complete data durability can not be guaranteed but
can be improved much.
• Rethink of buffer pool replacement strategy!
• How to make use of DRAM and PCM to achieve the
optimized lifetime of PCM.
Storage Class Memory
28. Phase Change Memory
PCM with DRAM (cont.)
• Using PCM to extend the DRAM, older data in DRAM
will be transmitted to PCM.
• Or using PCM and DRAM in parallel mode.
Data
Cool and hot
• Complete data durability can not beplacement but
data
guaranteed
can be improved much.
distinction strategy
• Rethink of buffer pool replacement strategy!
• How to make use of DRAM and PCM to achieve the
optimized lifetime of PCM.
Storage Class Memory
29. Phase Change Memory
PCM replaces HDD
• In the near future, the capacity of PCM won’t be as
much as disk.
• Even if whole DB fits in PCM and even though PCM is
persistent, still need to externalize DB regularly, since
PCM won’t have good endurance!
• In-memory buffer pool can be obviated, or at least
read buffer can be obviated.
• The read performance of DBMS can be improved
much, whatever sequential read or random read.
Storage Class Memory
30. Phase Change Memory
PCM replaces HDD (cont.)
• Hardware-enforced block boundaries, such as sector
on HDD and page on SSD, are eliminated.
- Unlikely large amounts of data become suddenly unavailable
- More likely bits, or small ranges of bytes will fail together
- Eliminates need for read-modify-write for small updates
• Opportunity to rethink data structures
for implementing database system,
such as B+ Tree, record organization,
etc.
Storage Class Memory
31. Phase Change Memory
PCM with HDD
• Using PCM to extend HDD, fresh data in PCM & older
data in HDD.
• Or using PCM for special use, e.g., storing index data
on PCM or logging data on PCM.
• The write performance can be improved much,
whatever sequential write or random write.
• How to reduce the amount of write when storing
index data on PCM?
• The best configuration of PCM & HDD capacity?
Storage Class Memory
32. Phase Change Memory
Conclusion
• SCM is an promising technology for building large
storage system.
• PCM has some special characteristics different from
HDD & SSD, which need to be reconsidered for
system design.
• Research on PCM-based database system just catch
the attention of researchers and a lot opportunities
are there.
Storage Class Memory