PRISM: Zooming in Persistent RAM Storage Behavior

Download Report

Transcript PRISM: Zooming in Persistent RAM Storage Behavior

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