PRISM: Zooming in Persistent RAM Storage Behavior Juyoung Jung and Dr. Sangyeun Cho y g g gy Dept. of Computer Science University of Pittsburgh Juyoung Jung University of Pittsburgh
Contents Contents Introduction Introduction Background PRISM PRISM Preliminary Results Summary Summary Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Technical Challenge Technical Challenge HDD HDD HDD HDD - Slow and - Power hungry Power hungry Fundamental solution? Alternative storage medium Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Technical Challenge Technical Challenge NAND flash based SSD NAND flash based SSD + much faster + better energy + + smaller … ll - erase-before-write erase before write - write cycles - unbalanced rw - scalability … Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Emerging Persistent RAMs Technologies Emerging Persistent RAMs Technologies Latency Program Endurance Density energy Read Write Erase 10 4 ~10 6 4~5F 2 NAND flash NAND flash 25us 25us 200us 200us 1.5ms 1.5ms 10nJ 10nJ 10 10 4 5F 10 8 ~10 9 5F 2 PCM 20ns 100ns N/A 100pJ 10 15 4F 2 STT-RAM 10ns 10ns N/A 0.02pJ 10 6 6F 2 RRAM 10ns 20ns N/A 2pJ 10 13 6F 2 FeRAM 75ns 50ns N/A 2pJ PRAMs Win ! Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Write endurance Read/write / Latency imbalance Energy Technological consumption consumption maturity Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Our Contribution Our Contribution There is little work to evaluate Persistent RAM There is little work to evaluate Persistent RAM based Storage Device (PSD) Research environment not well prepared p p Present an efficient tool to study the impact of Present an efficient tool to study the impact of PRAM storage device built with totally different physical properties Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
PRISM PRISM P e R s I stent RAM S torage M onitor P e R s I stent RAM S torage M onitor Study Persistent RAM (PRAM) storage behavior Study Persistent RAM (PRAM) storage behavior Potentials of new byte addressable storage device PRAMs’ challenges as storage media PRAMs challenges as storage media Guide PSD ( P RAM S torage D evice) design Guide PSD ( P RAM S torage D evice) design Measure detailed storage activities (SW/HW) Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
PRISM PRISM HDD or SSD PSD Block devices Non-Block devices Non-Block devices Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
PRISM PRISM test.exe Low ‐ level storage behavior read(file1) address mapping address mapping write(buf,file1) wear leveling bit masking exploit parallelism resource conflicts etc. Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
PRISM Implementation Approach PRISM Implementation Approach User Applications Instrumentation Instrumentation Technique T T Technique h i h i Virtual File System Tracers Individual FS (EXT3, HFS, TMPFS, etc.) SW File system y Buffer/Page Cache Buffer/Page Cache I/O scheduler Block I/O Layer Emulation Emulation Tracers HDD/SSD device driver Interconnect Slots, chips HW PSD Simulation Simulation Simulation Simulation Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
PRISM Components PRISM Components User Apps User Apps Frontend Tracer Backend PSDSim Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Frontend Tracer Frontend Tracer Application write File I/O requests File I/O requests Linux VFS write In ‐ memory TMPFS file system write Write data Metadata User ‐ defined Invoking Tracer Tracer Tracer WR tracer Module Module Modules Proc ‐ based Logger access time byte ‐ granule request info t i f Raw data gathered …… Juyoung Jung University of Pittsburgh
PRISM Components PRISM Components User Apps User Apps Frontend Tracer Backend PSDSim Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Backend Event-driven PSDSim Backend Event-driven PSDSim the used PRAM technology the used PRAM technology storage capacity Raw trace data Storage configuration # of packages, dies, planes fixed/variable page size wear ‐ leveling scheme … Persistent RAM storage simulator (PSDSim) Wear leveling Emulator PRAM PRAM Reference Reference Storage Statistics Controller Analyzer PRAM Energy Model Energy Model Various performance results Various performance results Juyoung Jung University of Pittsburgh
Preliminary Results of Case Study Preliminary Results of Case Study Objective: enhancing PRAM write endurance Objective: enhancing PRAM write endurance Experimental Environment Components Components Specification Specification CPU Intel Core Duo 1.66 GHz (32 ‐ bit) L2 Cache L2 Cache 2 MB 2 MB Main Memory 1 GB SDRAM Operating System p g y Linux 2.6.24 File System Tmpfs 10 GB capacity Workload TPC ‐ C 2 ‐ hours measurement Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Possible Questions from Designers Possible Questions from Designers How our workloads generate writes to storage? How our workloads generate writes to storage? 1. Temporal behavior of write request pattern 2 2. The most dominant data size written The most dominant data size written 3. Virtual address space used by OS 4. File metadata update pattern 4 File metadata update pattern What about hardware resource access pattern? 1. Resource utilized efficiently 2. Do we need consider wear ‐ leveling? Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
TPC-C File update pattern TPC C File update pattern Temporal behavior of writes Populating 9 relational tables writes are very bursty proper queue size (Wall-clock time) Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
File Data Written Size File Data Written Size 4KB written size dominant Not cause whole block update Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Virtual Page Reuse Pattern Virtual Page Reuse Pattern HIGHMEM OS VMM allocates pages from low memory Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Example Hardware Organization Example Hardware Organization 256MB package 0 PKG 0 Die 0 Die 1 1GB PSD PKG 1 16MB plane 7 Page 0 8 planes in p Page 1 128MB Die 1 Page 2 PKG 2 Page 3 Plane 7 Plane1 Plane Plane1 Plane1 Plane1 Plane 0 Page N ‐ 1 PKG 3 Page N Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Hardware Resource Utilization Hardware Resource Utilization 4000 3500 3000 nt ccess Coun 2500 Die1 2000 Ac 1500 1500 1000 Die0 500 0 pkg0 pkg1 pkg2 pkg3 Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Storage-wide plane resource usage Storage wide plane resource usage 1258 600 plane0 plane1 plane2 plane3 plane4 plane5 plane6 plane7 500 Q. plane-level usage fair ? unt 400 400 Access Co 300 Serious unbalanced A resource utilization 200 100 100 0 Die0 Die1 Die0 Die1 Die0 Die1 Die0 Die1 Package 0 Package 1 Package 2 Package 3 Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Wear ‐ leveling Effect Wear leveling Effect Before Wear ‐ leveling g After RR Wear ‐ leveling g Balanced resource usage Juyoung Jung University of Pittsburgh
PRISM Overhead PRISM Overhead PRISM’s I/O performance impact PRISM s I/O performance impact We ran IOzone benchmark with 200MB (HDD ‐ friendly) sequential file write operations 4 4 3.5 RISM 3.5 3 3 normalized to P 3 malized Latency 2.5 2.5 2 2 1.5 3 5x slowdown 3.5x slowdown Norm Speed 1 5 1.5 1 1 0.5 0 0.5 Raw tmpfs PRISM HDD 0 0 Raw tmpfs PRISM Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
PRISM Overhead PRISM Overhead PRISM’s I/O performance impact PRISM s I/O performance impact We ran IOzone benchmark with 200MB (HDD ‐ friendly) sequential file write operations 14 4 11.5x faster 3.5 RISM 12 HDD 3 3 d normalized to H normalized to P 10 2.5 8 2 6 1.5 Speed 4 4 Speed 1 2 0.5 0 0 Raw tmpfs PRISM PRISM HDD HDD Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
PRISM Summary PRISM Summary Versatile tool to study PRAM storage system Versatile tool to study PRAM storage system Study interactions between storage level interface (programs/OS) and PRAM device accesses (p g / ) Run a realistic workload fast Extendible with user ‐ defined tracer easily Extendible with user defined tracer easily Explore internal hardware organizations in detail Juyoung Jung Juyoung Jung University of Pittsburgh University of Pittsburgh
Thank you ! Juyoung Jung University of Pittsburgh
Recommend
More recommend