Open-Channel SSDs Matjas Bjrling LinuxCon North America 2015 1 - - PowerPoint PPT Presentation

open channel ssds
SMART_READER_LITE
LIVE PREVIEW

Open-Channel SSDs Matjas Bjrling LinuxCon North America 2015 1 - - PowerPoint PPT Presentation

Open-Channel SSDs Matjas Bjrling LinuxCon North America 2015 1 Solid State Drives H i g h T h r o u g h p u t + L o w L a t e n c y P a r a l l e l i s m + C o n t r o l l e r Why Open-Channel


slide-1
SLIDE 1

Open-Channel SSDs

Matjas Bjørling LinuxCon North America 2015

1

slide-2
SLIDE 2

Solid State Drives

H i g h T h r

  • u

g h p u t + L

  • w

L a t e n c y P a r a l l e l i s m + C

  • n

t r

  • l

l e r

slide-3
SLIDE 3

Why Open-Channel SSDs

3

D e a l i n g w i t h fm a s h c h i p c

  • n

s t r a i n s i s a n e c e s s i t y N

  • w

a y a r

  • u

n d t h e F l a s h T r a n s l a t i

  • n

L a y e r ( F T L ) E m b e d d e d F T L s e n a b l e d w i d e S S D a d

  • p

t i

  • n
  • e

s p . f

  • r

C l i e n t c

  • m

p u t i n g : C l i e n t : s i n g l e h

  • s

t , s i n g l e S S D , l

  • w

I / O e ffj c i e n c y , w i d e v a r i e t y

  • f

a p p l i c a t i

  • n

s S e r v e r s y s t e m s h a v e a m u c h d i fg e r e n t p r

  • fj

l e : S e r v e r : m u l t i

  • h
  • s

t , m u l t i

  • S

S D , h i g h I / O e ffj c i e n c y , l i m i t e d #

  • f

a p p l i c a t i

  • n

s

F l a s h I n t e r f a c e B l

  • c

k I / O

slide-4
SLIDE 4

Why Open-Channel SSDs

4

E m b e d d e d F T L ’ s i n t r

  • d

u c e s i g n i fj c a n t l i m i t a t i

  • n

s f

  • r

S e r v e r c

  • m

p u t e : H a r d w i r e d e s i g n d e c i s i

  • n

s a b

  • u

t d a t a p l a c e m e n t ,

  • v

e r

  • p

r

  • v

i s i

  • n

i n g , s c h e d u l i n g , g a r b a g e c

  • l

l e c t i

  • n

, a n d w e a r l e v e l i n g . D e s i g n e d

  • n

m

  • r

e

  • r

l e s s e x p l i c i t a s s u m p t i

  • n

s a b

  • u

t t h e a p p l i c a t i

  • n

w

  • r

k l

  • a

d . I n t r

  • d

u c e s r e d u n d a n c i e s , m i s s e d

  • p

t i m i z a t i

  • n

s , a n d u n d e r u t i l i z a t i

  • n
  • f

r e s

  • u

r c e s .

slide-5
SLIDE 5

Why Open-Channel SSDs

5

L i m i t e d n u m b e r

  • f

S S D s i n t h e m a r k e t w i t h e m b e d d e d F T L s f

  • r

s p e c i fj c : Wo r k l

  • a

d s ( e . g . , 9 % r e a d s ) A p p l i c a t i

  • n

s ( e . g . , S Q L S e r v e r , K e y

  • v

a l u e s t

  • r

e s ) C

  • s

t a n d l a c k

  • f

fm e x i b i l i t y f

  • r

t h e s e “ h a r d

  • w

i r e d ” s

  • l

u t i

  • n

s i s p r

  • h

i b i t i v e : Wh a t i f t h e w

  • r

k l

  • a

d c h a n g e s ( a t r u n

  • t

i m e ) ? Wh a t a b

  • u

t n e w w

  • r

k l

  • a

d s ? A n d n e w a p p l i c a t i

  • n

s ?

slide-6
SLIDE 6
  • O

p e n

  • C

h a n n e l S S D s s h a r e c

  • n

t r

  • l

r e s p

  • n

s i b i l i t i e s w i t h t h e H

  • s

t i n

  • r

d e r t

  • i

m p l e m e n t a n d m a i n t a i n f e a t u r e s t h a t t y p i c a l S S D s i m p l e m e n t s t r i c t l y i n t h e d e v i c e fj r m w a r e

D e v i c e i n f

  • r

m a t i

  • n

:

  • S

S D

  • ffm
  • a

d e n g i n e s & r e s p

  • n

s i b i l i t i e s

  • S

S D g e

  • m

e t r y

  • N

A N D m e d i a

  • C

h a n n e l s , t i m i n g s , e t c .

  • B

a d b l

  • c

k s l i s t

  • E

C C

Open-Channel SSD: Overview

5

T h i s a r c h i t e c t u r e s e n a b l e s Q u a l i t y

  • f

S e r v i c e f

  • r

S S D s

H

  • s

t m a n a g e s :

  • D

a t a p l a c e m e n t

  • I

/ O S c h e d u l i n g

  • O

v e r

  • P

r

  • v

i s i

  • n

i n g

  • G

a r b a g e C

  • l

l e c t i

  • n
  • We

a r

  • l

e v e l i n g

slide-7
SLIDE 7

Open-Channel SSD: Architecture

7

T a r g e t s

  • E

x p

  • s

e s p h y s i c a l m e d i a t

  • u

s e r

  • s

p a c e B l

  • c

k M a n a g e r s

  • M

a n a g e s p h y s i c a l S S D c h a r a c t e r i s t i c s O p e n

  • C

h a n n e l S S D

  • R

e s p

  • n

s i b i l i t y

  • O

ffm

  • a

d e n g i n e s

slide-8
SLIDE 8

Open-Channel SSD: Confjgurability

8

1 .T a r g e t a c r

  • s

s S S D s 2 .G l

  • b

a l G a r b a g e C

  • l

l e c t i

  • n

3 .S i n g l e A d d r e s s S p a c e B M s e x p

  • s

e a g e n e r i c i n t e r f a c e S S D V e n d

  • r
  • a

g n

  • s

t i c

slide-9
SLIDE 9

Open-Channel SSD: Example

  • Over-provisioning can be greatly reduced,
  • E.g., 20% lower cost for the same performance
  • SSD steady state can be considerably improved
  • Predictable latency
  • Reduce I/O outliers signifjcantly

IOPS Time

slide-10
SLIDE 10

Open-Channel SSD: Host Overhead

1

Component Descriptjon Natjve Latency(us) LightNVM Latency(us) Read Write Read Write Kernel and fjo

  • verhead

Submission and completjon (4K) 1.18 1.21 1.34 (+0.16) 1.44 (+0.23) Completjon tjme for devices High-performance SSD 10us (2%) Null NVMe hardware device 35us (0.07%) Common SSD 100us (0.002%)

L

  • w
  • v

e r h e a d n e g l e c t i b l e t

  • h

a r d w a r e

  • v

e r h e a d . 1 6 u s

  • n

r e a d s a n d . 2 3 u s

  • n

w r i t e s

S S D : E C C , T r a n s l a t i

  • n

& B a d b l

  • c

k t a b l e m e t a d a t a

  • ffm
  • a

d e d t

  • d

e v i c e .

slide-11
SLIDE 11

Open-Channel SSD: Where are they useful?

Sofuware-defjned storage solutjons:

  • Manage storage centrally across multjple SSDs
  • Petabytes of fmash
  • Open-Channel SSDs are “sofuware programmable”
  • Versus “Hardware/Firmware confjgurable”
  • Applicatjons can defjne their own FTLs based on their

workload

  • FTL optjmizatjons that change over tjme
  • Multj-tenancy environments

O p e n

  • C

h a n n e l S S D s

  • >

A p p l i c a t i

  • n
  • d

r i v e n S t

  • r

a g e

slide-12
SLIDE 12

Open Channel SSDs: Applicatjon-Driven Storage

  • Generic interface for programmable

SSDs to abstract the hardware

  • Avoid multjple layers of translatjon
  • Minimize overhead when

manipulatjng persistent data

  • Make informed decisions regarding

latency, resource utjlizatjon, and data movement (compared to the best- efgort techniques today)

2 . Wh a t i s t h e r

  • l

e

  • f

t h e O S i n t h i s a r c h i t e c t u r e ? 3 . H

  • w

c a n w e h i d e N A N D m e d i a c

  • m

p l e x i t y f r

  • m

t h e a p p l i c a t i

  • n

( a n d t h e O S ) ? 1 . H

  • w

d

  • w

e s u p p

  • r

t a p p l i c a t i

  • n

s t h a t b e n e fj t f r

  • m

c u s t

  • m

F T L s ?

slide-13
SLIDE 13

P r

  • t
  • t

y p e i n p r

  • g

r e s s

Open Channel SSDs: RocksDB Use-case

T a l k t

  • J

a v i e r G

  • n

z a l e z i f y

  • u

w a n t t

  • k

n

  • w

m

  • r

e

slide-14
SLIDE 14

Kernel Support

  • LightNVM: Linux kernel support for Open-Channel SSDs
  • Open, fmexible, extensible, and scalable layer for Open-Channel SSDs

for the Linux kernel

  • Development: htups://github.com/OpenChannelSSD
  • Supports multjple block managers and targets

slide-15
SLIDE 15

LightNVM Status

  • Pluggable Architecture
  • Block Managers – Generic, Vendor specifjc,etc
  • Targets – Block, Direct Flash
  • Supported drivers:
  • NVMe, Null driver (FTL performance testjng and debugging)
  • Push into the Linux kernel. v7 posted to LKML (7/7-15).
  • Users may extend, contribute, and develop new targets for their
  • wn use-cases.
  • Direct integratjon with RocksDB under development.

slide-16
SLIDE 16

Thank you

16

Development: htups://github.com/OpenChannelSSD/ Interface Specifjcatjon: htup://goo.gl/BYTjLI Contact: matjas@cnexlabs.com