PRISM: Zooming in Persistent RAM Storage Behavior Juyoung Jung and - - PowerPoint PPT Presentation

prism zooming in persistent ram storage behavior
SMART_READER_LITE
LIVE PREVIEW

PRISM: Zooming in Persistent RAM Storage Behavior Juyoung Jung and - - PowerPoint PPT Presentation

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


slide-1
SLIDE 1

PRISM: Zooming in Persistent RAM Storage Behavior

Juyoung Jung and Dr. Sangyeun Cho y g g gy

  • Dept. of Computer Science

University of Pittsburgh

University of Pittsburgh

Juyoung Jung

slide-2
SLIDE 2

Contents Contents

  • Introduction

Introduction

  • Background
  • PRISM
  • PRISM
  • Preliminary Results
  • Summary
  • Summary

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-3
SLIDE 3

Technical Challenge Technical Challenge

HDD HDD HDD HDD

  • Slow and

Power hungry

  • Power hungry

Fundamental solution? Alternative storage medium

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-4
SLIDE 4

Technical Challenge Technical Challenge

NAND flash based SSD NAND flash based SSD

+ much faster + better energy + ll + smaller …

  • erase-before-write

erase before write

  • write cycles
  • unbalanced rw
  • scalability …

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-5
SLIDE 5

Emerging Persistent RAMs Technologies Emerging Persistent RAMs Technologies

Latency Program energy Endurance Density Read Write Erase

NAND flash 25us 200us 1.5ms 10nJ 104~106 4~5F2 NAND flash 25us 200us 1.5ms 10nJ 10 10 4 5F 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 !

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-6
SLIDE 6

/ Write endurance Latency Read/write imbalance Technological Energy consumption maturity consumption

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-7
SLIDE 7

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

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-8
SLIDE 8

PRISM PRISM

  • PeRsIstent RAM Storage Monitor

PeRsIstent RAM Storage Monitor

  • 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 (PRAM Storage Device) design

  • Guide PSD (PRAM Storage Device) design
  • Measure detailed storage activities (SW/HW)

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-9
SLIDE 9

PRISM PRISM

HDD or SSD

PSD

Block devices

Non-Block devices

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

Non-Block devices

slide-10
SLIDE 10

PRISM PRISM

test.exe read(file1)

Low‐level storage behavior

address mapping write(buf,file1) wear leveling bit masking address mapping resource conflicts exploit parallelism etc.

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-11
SLIDE 11

PRISM Implementation Approach PRISM Implementation Approach

User Applications Instrumentation

T h i Instrumentation T h i

Virtual File System Individual FS (EXT3, HFS, TMPFS, etc.) Buffer/Page Cache

SW

File system

Technique Technique

Tracers

Buffer/Page Cache Block I/O Layer HDD/SSD device driver

I/O scheduler y

Emulation Emulation

Tracers

Interconnect

PSD HW

Slots, chips

Simulation Simulation

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

Simulation Simulation

slide-12
SLIDE 12

PRISM Components PRISM Components

User Apps User Apps

Frontend Tracer Backend PSDSim

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-13
SLIDE 13

Frontend Tracer Frontend Tracer Application File I/O requests

write

Linux VFS File I/O requests

write

In‐memory TMPFS file system Write data User‐defined Metadata

write

Tracer Module Tracer Modules Tracer Module

Invoking WR tracer

Proc‐based Logger

access time byte‐granule t i f

University of Pittsburgh

Juyoung Jung

Raw data gathered

request info ……

slide-14
SLIDE 14

PRISM Components PRISM Components

User Apps User Apps

Frontend Tracer Backend PSDSim

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-15
SLIDE 15

Backend Event-driven PSDSim Backend Event-driven PSDSim

the used PRAM technology

Raw trace data Storage configuration

the used PRAM technology storage capacity # of packages, dies, planes fixed/variable page size

Persistent RAM storage simulator (PSDSim)

wear‐leveling scheme …

PRAM Reference Wear leveling Emulator PRAM Reference Statistics Analyzer Storage Controller PRAM Energy Model Various performance results Energy Model

University of Pittsburgh

Juyoung Jung

Various performance results

slide-16
SLIDE 16

Preliminary Results of Case Study Preliminary Results of Case Study

 Objective: enhancing PRAM write endurance  Objective: enhancing PRAM write endurance  Experimental Environment

Components Specification Components Specification CPU Intel Core Duo 1.66 GHz (32‐bit) L2 Cache 2 MB L2 Cache 2 MB Main Memory 1 GB SDRAM Operating System Linux 2.6.24 p g y File System Tmpfs 10 GB capacity Workload TPC‐C 2‐hours measurement

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-17
SLIDE 17

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 The most dominant data size written

  • 2. 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?

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-18
SLIDE 18

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

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung (Wall-clock time)

slide-19
SLIDE 19

File Data Written Size File Data Written Size

4KB written size dominant Not cause whole block update

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-20
SLIDE 20

Virtual Page Reuse Pattern Virtual Page Reuse Pattern

HIGHMEM OS VMM allocates pages from low memory

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-21
SLIDE 21

Example Hardware Organization Example Hardware Organization

256MB package 0 PKG 0 1GB PSD Die 1 Die 0 PKG 1 Page 0 8 planes in 16MB plane 7 Plane 7 Plane1 Plane1 PKG 2 Page 1 Page 2 Page 3 p 128MB Die 1 Plane Plane1 Plane1 PKG 3 Plane 0 Page N‐1 Page N

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-22
SLIDE 22

Hardware Resource Utilization Hardware Resource Utilization

4000 3000 3500

nt

1500 2000 2500

ccess Coun

Die1 500 1000 1500

Ac

Die0 pkg0 pkg1 pkg2 pkg3

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-23
SLIDE 23

Storage-wide plane resource usage Storage wide plane resource usage

600

1258

400 500

plane0 plane1 plane2 plane3 plane4 plane5 plane6 plane7

unt

  • Q. plane-level usage fair ?

300 400

Serious unbalanced

Access Co

100 200

resource utilization

A

100 Die0 Die1 Die0 Die1 Die0 Die1 Die0 Die1

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

Package 0 Package 1 Package 2 Package 3

slide-24
SLIDE 24

Wear‐leveling Effect Wear leveling Effect

Before Wear‐leveling After RR Wear‐leveling g g

Balanced

resource usage

University of Pittsburgh

Juyoung Jung

slide-25
SLIDE 25

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

3 3.5 4 RISM 3.5 4

3 5x slowdown

1.5 2 2.5 3 normalized to P 1 5 2 2.5 3 malized Latency

3.5x slowdown

0.5 1 Raw tmpfs PRISM HDD Speed 0.5 1 1.5 Norm

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

Raw tmpfs PRISM

slide-26
SLIDE 26

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

11.5x faster

3 3.5 4 RISM 12 14 HDD 1.5 2 2.5 3 normalized to P 4 6 8 10 d normalized to H 0.5 1 Raw tmpfs PRISM HDD Speed 2 4 PRISM HDD Speed

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-27
SLIDE 27

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

University of Pittsburgh

Juyoung Jung

University of Pittsburgh

Juyoung Jung

slide-28
SLIDE 28

Thank you !

University of Pittsburgh

Juyoung Jung