Although solid-state drives, which are based on flash memory
technology tend to perform faster than hard-disks because, unlike the latter,
they have no moving parts. And while the difference is most notable when
reading in the case of SSDs, they don’t do as well when writing, especially
when writing random sectors. Flash memory manufacturer Sandisk claims to have
solved this problem with a new technology called ExtremeFFS which they’ve
announced on Wednesday.
First, a primer: the concept of sectors is common to disks
as well as solid-state drives. They are portions of a drive where a file or
part thereof can be written. When a file is deleted, the sector is marked as
free but data is usually not physically wiped due to speed concerns. A magnetic
disk can overwrite such a sector with no problem, but due to the way flash
memory technology works, in the case of an SSD the data present must be erased
first, so in essence twice as many operations must be done.
This gets worse in the case of random writing, because
unlike contiguous sectors which are erased once then written over, here you
have to perform the erasing operation on many small fragments, and each
individual write must be preceded by an individual erase.
There’s also the issue of the amount software needed to
manage the physical end of things. Most operating systems and filesystem
drivers only know how work with disk-based storage media, one that can be
addressed with cylinders and sectors. By contrast Flash is arranged in the grid
structure typical of RAM. This means there has to be a solution to map the OS’s
model of filesystem locations to the actual hardware model present in the flash
memory.
SanDisk’s technology works around these problems with a
number of clever solutions.
First off, ExtremeFFS’ OS-to-physical mapping is not static.
The software and controller dynamically map the flash drives in such a way that
related file blocks are put together for the maximum streaming read performance.
Random erases and writes are distributed according to certain reliability and
performance criteria. Random writes for instance can be cached and then
actually written to the disk at the best location and time thus reducing the
number of erases per write.
ExtremeFFS can also do “housekeeping” and garbage collection
operations on the drive. It marks bad blocks and actually erases blocks marked
as empty, and does so during other, regular reads and writes.
Perhaps the most interesting feature is the software’s
ability to learn the user’s data access patterns in order to arrange data for
maximum efficiency.
The hardware company also revealed two new metrics during
the ExtremeFFS announcement that allow users to benchmark and evaluate
solid-state drives.
The first, Virtual
Revolutions per Minute (vRPM) makes a rather artificial performance between
SSD and HDD speeds by calculating how fast an HDD would have to spin to get the
performance of the measured SSD. The second, Long-term Data Endurance (LDE) measures how much data can be
written on the SSD before it’s worn out.
Both these tools seem to have the express purpose of showing
off how cool and reliable SSDs are, and do not offer very useful information,
but hey, who doesn’t want more toys. Nevertheless, when the benchmark division is
not doing Marketing’s job, SanDisk are off to developing technology which could
in the long run revolutionize storage media.