The new skinny on flash SSDs... - by
Zsolt Kerekes,
editor StorageSearch.com -
July 2009
This
article proposes a simple new terminology for grouping
flash SSDs with
respect to the relative size of the internal
RAM cache. These are:-
Understanding which type your SSD belongs to can
be helpful, because each set has common modalities. This means you can re-use
knowledge and models learned from one SSD device and apply that view to other
SSDs which have a similar architecture.
Thinking about flash SSDs in
this way makes it easier to group and sort SSDs you may be working with
relative to the macro market situation. For any particular product - the new
terminology provides a shorthand clue about
- what behavior to expect,
- other similar devices you should be comparing it with,
- characteristics and limitations - and
- the risk / benefit profile suitability of the SSD for your chosen
application.
If you don't consciously go through this tick list /
thought process when comparing flash SSDs (even when they have the same
interface, form factor and flash memory type) - the results will be like
comparing apples and oranges. And you will not get the optimum results from your
invested efforts.
Categorizing the RAM cache architecture is essential
because it affects a lot of parameters including:-
- the way you should design the benchmark test to assess long term
performance to avoid halo effects
- power consumption - bigger internal RAM means more watts consumed and
higher running temperature
- reliability -
increasing the RAM size impacts reliability in many ways
- more components to go wrong - which impacts MTBF
- can attenuate flash write cycles and improve
endurance
(using a simpler implementation of
SSD controller)
- increases the holdup time required for the internal UPS or capacitor to
flush the cache - which increases
criticality of
the UPS
- more software threads define the state of the SSD - so more intensive
power cycle testing is required to confirm that the firmware design has been
validated correctly
- price - there are
complex alternatives to be balanced here
- bigger RAM cache increases the SSD cost (due to direct cost of RAM and
UPS) but
- smaller RAM cache may mean a faster (more expensive) SSD controller is
required to achieve the same performance (compared to using more RAM and a
slower internal micro-controller)
- performance - generally you would expect that increasing the size of the
RAM cache would always be the best way to increase the performance of the flash
SSD - but above a certain point in any design - another option is to increase
the speed of the SSD controller instead (or perform more of its functions in
hardware rather than micro-code)
It's important to realize that the RAM
cache is not the only cache technology available to the SSD designer. Some
manufacturers stream write data to pre-erased flash blocks before doing much
processing on them in RAM. SanDisk
refers to their way of doing this as "nCache".
Generally
the use of flash cache provides a simple and cheap way of implementing high R/W
throughput (MB/s) for sequential streaming data - but suffers from the
disadvantage of not being intrinsically as good as RAM when it comes to small
random IOPS. Some designers get around the
random IOPS
performance problem in a flash cache environment by using hardware based
mapping and translation schemes - but these are not as yet common in the market.
For simplicity it's useful to classify RAM cache types within flash
SSDs into the following 3 types. | |
. |
New
flash SSD terminology proposed by StorageSearch.com - July 28, 2009 |
Fat flash
SSD
> 10,000 ppm |
A flash SSD in which the ratio
of RAM cache to flash array is at least 10x higher than that in
(more common) regular flash SSDs.
The first Fat flash SSD in
rackmount form factor was the
RamSan-500 launched in
September 2007 by Texas Memory Systems. RAM cache size was 64GB compared to SLC
flash SSD capacity of 2TB - giving a RAM/flash ratio of 32,000 ppm ).
In the 2.5" form factor - an early example of fat flash SSD
was the
Platinum M-Cell SSD from
DTS which (at launch time in June 2009) included 1GB internal RAM cache in an
SLC flash SSD with 64GB capacity - giving a RAM/flash ratio of 16,000
ppm.
The extreme cases of "fattest" flash SSDs are of course
RAM SSDs. Those have
become rarer in rackmount
SSD form factors - but are still around in the form of modules such as
flash backed DIMMs. |
Regular
flash SSD
around 1,000 ppm
(typically 500 to 2,000 ppm) |
This is the design choice used
in most fast flash SSDs currently in the market which include a RAM cache.
It's a self referential definition. It's a market efficient
compromize which results in competitively attractive products. It makes the SSD
controller much easier to design than in the "skinny RAM" category
below. And it doesn't push up the design costs like the "fat RAM"
designs above. The regular RAM cache size suits a wide range of flash SSD
applications - those in which neither performance nor reliability are being
pushed to the design limits.
If we look at
2.5" flash SSDs -
the most popular products from most manufacturers typically have an internal
RAM/flash ratio in the range 500ppm to
2,000ppm.
Manufacturers in this category include:-
Corsair (Performance
Series), Memoright
(GT series), OCZ (Summit
Series),
STEC (Zeus IOPS) and
Super Talent
(UltraDrive ME). |
Skinny
flash SSD
< 100 ppm |
These are designs which include
miniscule amounts of RAM - orders of magnitude smaller than Regular flash
SSDs.
In extreme cases there may not even be any external RAM chips
at all. The RAM being implemented as part of the real-estate inside the SSD
controller.
In the current market some extreme skinny flash SSDs have
a RAM/flash ratio below 1ppm.
Advocates of skinny flash SSD
architecture cite reliability as the main driving force. Tossing out the RAM
reduces chip count and can help towards lower power consumption.
Companies
who currently market most of their SSDs in this category include
SandForce (SF-1000)
and
WD Solid State
Storage (SiliconDrive III), and
Virident Systems
(FlashMAX). (And later - Microsemi
- TRRUST-STOR).
Foremay's
SC199 Cheetah V-series (2.5" SSD) is skinny with no RAM cache - whereas
their U-series (1.8" SSD) is regular with 64MB cache.
Getting good
performance in skinny RAM architecture requires a very well designed SSD
controller and a deep commitment at the outset that you are going to stick with
this method. (And not bail out when you hit a hard design problem.) Instead of
having the luxury of using RAM to cache large blocks of write data - you have to
cache write data to flash. Which requires good garbage collection and
pre-erased block availability. The nv RAM is restricted to storing the state of
the machine and tables which may only be tens of kilobytes in size.
This
is the RISC approach to flash SSD design. The battery / capacitor holdup time
(when power fails) can be a low multiple of a single flash write-erase cycle.
Another advantage of the skinny approach is faster power up ready
time - when power is restored. This is a parameter which is not defined in most
datasheets - but can be
surprisingly long
in some products. | |
. |
Notes:- the ratio of RAM to flash in a
flash SSD is always a fraction. To simplify comparisons betweeen these fractions
I'm using the form "integer ppm" - where
integer = RAM capacity divided by flash capacity x 1 million (parts
per million)
As an example the RAM/flash ratio for a product with
256MB RAM and 256GB flash is 1,000 ppm.
A product with a RAM/flash
ratio of 1 million is actually a
RAM-SSD with internal
flash backup.
RAM/flash
Ratios will Vary Over Time
Don't take the exact numeric examples
above as gospel. The exact ratio of RAM/flash cache for each classification
of SSD will vary according to market conditions - and the
relative
prices of RAM versus flash memory. But that still provides a convenient
frame of reference and mental bin for sorting those with massively more RAM, and
those with massively less than the most common (regular) models.
What
About MRAM? PRAM? etc?
I've used the term "RAM" above as
a catch-all phrase which includes DRAM, SRAM and true nv RAMs such as MRAM. I
don't think it's likely that flash SSDs using a 3 tiered cache (true nv RAM,
battery / capacitor backed RAM, and flash) will become widely established. So
the fat, regular, skinny appellations can be used regardless of the RAM cache
type.
What's the Way Ahead?
It's hard to predict in
advance how useful new jargon will be. The market is always the deciding factor
in jargon adoption - just as with
products.
3
years ago (in 2006) when I suggested to flash SSD oems the importance of a
creating new standard way to refer to flash SSD life - related to endurance -
that didn't work. But there was a real need in the market - and my educational
article on
SSD Myths and
Legends - "write endurance" - originally aimed at a niche market -
has been seen by nearly 0.5 million readers.
Since then users have
had to learn a great deal more about
SSD jargon to sort
out the wheat from the chafe.
I plan to start using the new labels in
editorial August 1, 2009. As always - feedback from vendors and readers will
be used to update these terms and this article from time to time.
3rd party citations for these new terms:-
- Fast
Eddy Felson - from the blog - Dr. Codd Was Right - "musings on the
primacy of the relational model, database and silliness of all things xml"
|
|
later articles on a similar theme:-
Why size matters in
SSD architecture - the memory chip count ceiling at which the
SSD controller is
optimized - predetermines cost, performance and reliability
how fast can your SSD
run backwards? - Key Symmetries in SSD design - what they are and why you
need to know
an
introduction to enterprise SSD silos - 7 ways to classify where all
SSDs will fit in the pure SSD datacenter classified by relative latency
and proximity to application memory.
what's in a number? -
SSDserver rank - a hex based shorthand to describe any SSD accelerated
server
controllernomics
and user risk reward with big memory "flash as RAM - the topic of real
DRAM to flash capacity ratios takes on a new twist when that flash is being
deployed to emulate RAM. This is an article (2017) based on conversations with
Diablo about the user
experiences of their Memory1. | |
. |

| |
.. |
The main performance
benefit of HMB (use of host memory buffer) in RAMless consumer NVMe PCIe SSDs is
random reads (40 to 70%) and burst writes (upto 5x).
But multi-level
eror checks and protection are needed in the controller to ensure data integrity
in the flash SSD in the event of a surprise disconnection from host memory. |
Notes from the paper -
Improving
the Design of DRAM-Less PCIe SSD (pdf) - by Sean Yang,
Product Manager - Phison. at Flash
Memory Summit (August 2017). | | |
.. |
what were
the big SSD ideas which emerged in 2016? |
"For Hyperstone, the
biggest idea and industry trend that we pushed and participated in is the
implementation of page-based-FTL running on DRAM-less controller
architectures. This approach improves random write performance, increases
endurance while maintaining power-fail robustness at the same time. As this
architecture also reduces system cost it is also adopted in consumer markets..."
Susan Heidrich,
Sales & Marketing Manager - Hyperstone | | |
.. |
 |
. |
random access memory
doesn't have to be RAM |
The idea of using flash as a
new memory tier isn't new. And neither is the idea of using flash in DRAM memory
slots. But in 2014 there were several developments which added weight to the
usefulness of these ideas.
12 key
SSD ideas which changed in 2014 | | |
. |
|
. |
|
. |
 |
. |
the Problem with
Write IOPS
the "play it again Sam" syndrome |
Editor:- Flash SSD "random
write IOPS" are now similar to "read IOPS" in many of the
fastest SSDs.
So
why are they such a poor predictor of application performance?
And
why are users still buying
RAM SSDs which cost
9x more than SLC? - even when the IOPS specs look similar. |
 |
This article tells you
why the specs got faster - but the applications didn't. And why competing SSDs
with apparently identical benchmark results can perform completely
differently. ...read
the article | | | |
. |
how fast can your SSD run
backwards? |
Editor:- April 20, 2012 - StorageSearch.com today published
a new article which looks at the
11 key symmetries in
SSD design.
SSDs are complex devices and there's a lot of
mysterious behavior which isn't fully revealed by
benchmarks and
vendor's product datasheets and whitepapers. Underlying all the important
aspects of SSD behavior are asymmetries which arise from the intrinsic
technologies and architecture inside the SSD.
Which symmetries are
most important in an SSD? - That depends on your application. But knowing
that these symmetries exist, what they are, and judging how your selected SSD
compares will give you new insights into SSD
performance,
cost and
reliability.
There's
no such thing as - the perfect SSD - existing in the market today - but
the SSD symmetry list helps you to understand where any SSD in any memory
technology stands relative to the ideal. And it explains why deviations from the
ideal can matter. |
| | |
. |
SSD power down
management architectures |
Why should you care
what happens in an SSD when the power goes down?
This important design
feature - which barely rates a mention in most SSD datasheets and press releases
- is really important in determining SSD data integrity and operational
reliability.
This article - which surveys power down management
design architectures and characteristics in SSDs - will help you understand
why some SSDs which work perfectly well in one type of application might fail
in others... even when the changes in the operational environment appear to be
negligible. |
| | |
. |
 |
. |
what's in a number? - for
MCS add 4 |
Editor:- March 4, 2014 - The presence (or
absence) of Memory Channel SSDs in a server is one of the factors which go
towards calculating the
SSDserver rank -
a new latency based configuration metric - which is proposed as a standard
by StorageSearch.com.
...read the
article | | |
. | |