open channel ssds
play

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


  1. Open-Channel SSDs Matjas Bjørling LinuxCon North America 2015 1

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

  3. Why Open-Channel SSDs D e a l i n g w i t h fm a s h c h i p c o n s t r a i n s i s a n e c e s s i t y B l o c k I / O N o w a y a r o u n d t h e F l a s h T r a n s l a t i o 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 o p t i o n - e s p . f o r C l i e n t c o m p u t i n g : C l i e n t : s i n g l e h o s t , s i n g l e S S D , l o w I / O e ffj c i e n c y , w i d e v a r i e t y o f a p p l i c a t i o 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 o fj l e : S e r v e r : m u l t i - h o 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 # o f a p p l i c a t i o n s F l a s h I n t e r f a c e 3

  4. Why Open-Channel SSDs E m b e d d e d F T L ’ s i n t r o d u c e s i g n i fj c a n t l i m i t a t i o n s f o r S e r v e r c o 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 o n s a b o u t d a t a p l a c e m e n t , o v e r - p r o v i s i o n i n g , s c h e d u l i n g , g a r b a g e c o l l e c t i o n , a n d w e a r l e v e l i n g . D e s i g n e d o n m o r e o r l e s s e x p l i c i t a s s u m p t i o n s a b o u t t h e a p p l i c a t i o n w o r k l o a d . I n t r o d u c e s r e d u n d a n c i e s , m i s s e d o p t i m i z a t i o n s , a n d u n d e r u t i l i z a t i o n o f r e s o u r c e s . 4

  5. Why Open-Channel SSDs L i m i t e d n u m b e r o 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 o r s p e c i fj c : Wo r k l o a d s ( e . g . , 9 0 % r e a d s ) A p p l i c a t i o n s ( e . g . , S Q L S e r v e r , K e y - v a l u e s t o r e s ) C o s t a n d l a c k o f fm e x i b i l i t y f o r t h e s e “ h a r d - w i r e d ” s o l u t i o n s i s p r o h i b i t i v e : Wh a t i f t h e w o r k l o a d c h a n g e s ( a t r u n - t i m e ) ? Wh a t a b o u t n e w w o r k l o a d s ? A n d n e w a p p l i c a t i o n s ? 5

  6. Open-Channel SSD: Overview • O p e n - C h a n n e l S S D s s h a r e c o n t r o l r e s p o n s i b i l i t i e s w i t h t h e H o s t i n o r d e r t o 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 o r m a t i o n : H o s t m a n a g e s : • • S S D o ffm o a d e n g i n e s & D a t a p l a c e m e n t • r e s p o n s i b i l i t i e s I / O S c h e d u l i n g • • S S D g e o m e t r y O v e r - P r o v i s i o n i n g • N A N D m e d i a • G a r b a g e C o l l e c t i o n • C h a n n e l s , t i m i n g s , e t c . • We a r - l e v e l i n g • B a d b l o c k s l i s t • E C C 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 o f S e r v i c e f o r S S D s 5

  7. Open-Channel SSD: Architecture T a r g e t s • E x p o s e s p h y s i c a l m e d i a t o u s e r - s p a c e B l o 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 o n s i b i l i t y • O ffm o a d e n g i n e s 7

  8. Open-Channel SSD: Confjgurability 1 .T a r g e t a c r o s s S S D s 2 .G l o b a l G a r b a g e C o l l e c t i o 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 o 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 o r - a g n o s t i c 8

  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 

  10. Open-Channel SSD: Host Overhead Component Descriptjon Natjve Latency(us) LightNVM Latency(us) Read Write Read Write Kernel and fjo Submission and completjon 1.18 1.21 1.34 (+0.16) 1.44 (+0.23) overhead (4K) Completjon tjme High-performance SSD 10us (2%) for devices Null NVMe hardware device 35us (0.07%) Common SSD 100us (0.002%) S S D : E C C , T r a n s l a t i o n & B a d b l o c k t a b l e m e t a d a t a o ffm o a d e d t o d e v i c e . L o w o v e r h e a d n e g l e c t i b l e t o h a r d w a r e o v e r h e a d 1 0 0 . 1 6 u s o n r e a d s a n d 0 . 2 3 u s o n w r i t e s

  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 o n - d r i v e n S t o r a g e

  12. Open Channel SSDs: Applicatjon-Driven Storage • Generic interface for programmable 1 . H o w d o w e s u p p o r t SSDs to abstract the hardware a p p l i c a t i o n s t h a t b e n e fj t f r o m c u s t o m F T L s ? • Avoid multjple layers of translatjon • Minimize overhead when 2 . Wh a t i s t h e r o l e o f manipulatjng persistent data t h e O S i n t h i s • Make informed decisions regarding a r c h i t e c t u r e ? latency, resource utjlizatjon, and data movement (compared to the best- 3 . H o w c a n w e h i d e efgort techniques today) N A N D m e d i a c o m p l e x i t y f r o m t h e a p p l i c a t i o n ( a n d t h e O S ) ?

  13. Open Channel SSDs: RocksDB Use-case P r o t o t y p e i n p r o g r e s s T a l k t o J a v i e r G o n z a l e z i f y o u w a n t t o k n o w m o r e

  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 

  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 own use-cases. • Direct integratjon with RocksDB under development. 

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

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend