Feeds

The secret sauce in SanDisk's ExtremeFFS

Shortcuts the read-modify-write cycle

Gartner critical capabilities for enterprise endpoint backup

SanDisk's ExtremeFFS technology can speed random writes to flash memory up to 100 times but doesn't do anything for sequential writes. How does it work?

The company says ExtremeFFS (Extreme Flash File System) "operates on a page-based algorithm, which means there is no fixed coupling between physical and logical location. When a sector of data is written, the SSD puts it where it is most convenient and efficient. The result is an improvement in random write performance – by up to 100 times – as well as in overall endurance".

SanDisk SSD against lightning background

With Windows, particularly Vista, there are a large number of random writes to the flash solid state drive (SSD) and there is a mismatch between the size of these writes and the SSD block size. So there are two things going on here; there are a large number of random writes which are smaller than the SSD's block size and this affects the write endurance of the SSD, the overall endurance.

A file allocation table or the registry is used thousands of times a day and SanDisk's previous (M-Systems) TrueFFS, introduced in 1994 and incorporated in Windows 95, moved the FAT and registry around an SSD instead of keeping it one place to avoid exhausting the write life of a static FAT location. The logical location of the FAT was separated from its physical location but the logical addresses were tied to physical block addresses. What TrueFFS did was to move these physical block addresses around to level out the wear.

ExtremeFFS is said by SanDisk to have this in common with TrueFFS - no fixed coupling between physical and logical location. So what's new?

The classic method of matching a fast input stream with a slow write device is to buffer it. But buffering is not used here.

According to Don Barnetson, SanDisk's senior marketing director for SSD, flash is organised into 512KB blocks or sectors which contain pages, 8KB in SanDisk's case, and the page is the minimum flash read or write unit. Generally a write to a flash page or block first requires that page or block's contents to be erased, a read-modify-write operation. This is like putting a new book in an already full book shelf. An old book has to be taken out first so the new one can be put there. Such a read-modify-write operation can take 100 milliseconds.

If there is already empty flash then writing to it takes 1 millisecond, a hundred times faster. Suppose a registry entry or File Allocation Table record changes and a new value comes into the flash. It has to write the new data and delete the old data, either by over-writing it or marking it for delete.

If you can write the new value to empty flash and mark the old data for delete then you would separate these operations and avoid the full read-modify-write operation.

SanDisk and other flash product suppliers generally add extra capacity to the stated flash capacity so that there is empty space to begin with. ExtremeFFS also runs a garbage collection process whereby pages marked for erase are erased and so made empty and available. What happens is that the controller maintains a look-up table and this contains page status. Pages are full, marked for erase or empty.

When a random write comes in, on average needing a page or small number of pages, the controller looks for that number of empty pages and writes the data without having to go through a full read-modify-write operation. It marks any existing data that has been changed for delete.

The flash is multi-threaded, incorporating a non-blocking architecture, so that the 4 to 10 channels from the controller to the NAND chips can be doing different things simultaneously. They can be used for reading, writing or garbage collection.

Think of garbage collection as being akin to checking the bookshelf and removing unwanted books thus creating empty space. Or think of the Wallace and Grommit cartoon where new railway track is continuously being laid down in front of a speeding locomotive. That's what the garbage collection does; create fresh track for the speeding (writing) locomotive by pulling up used track from behind the train.

So there are always, or should always be, empty pages for small random writes to be written into quickly without having to do an erase before the write. That's been done already in the background. Without this page-based algorithm every random write would need a block-level operation and take 100 milliseconds instead of, for example, one.

In effect, SanDisk has accelerated random writes by avoiding the need to erase flash for the write data before writing it.

Sequential writes are not accelerated because they operate at block level already as the files are typically large, images from digital cameras, etc.

SanDisk has also added a process whereby pages that are often accessed sequentially are placed contiguously so that their access is speeded up.

The net effect of ExtremeFFS according to SanDisk is that SSDs are now much more suitable for Windows use because the thousands and thousands of small writes, sub-block size, that Windows makes are accelerated through the new page-level algorithm. This should show up as greatly improved benchmarks for Windows SSD-using systems.

More on TrueFFS here (PDF). ®

Boost IT visibility and business value

More from The Register

next story
Kate Bush: Don't make me HAVE CONTACT with your iPHONE
Can't face sea of wobbling fondle implements. What happened to lighters, eh?
Apple takes blade to 13-inch MacBook Pro with Retina display
Shaves price, not screen on mid-2014 model
iPhone 6 flip tip slips in Aussie's clip: Apple's 'reversible USB' leaks
New plug not compatible with official Type-C, according to fresh rumors
The agony and ecstasy of SteamOS: WHERE ARE MY GAMES?
And yes it does need a fat HDD (or SSD, it's cool with either)
FEAST YOUR EYES: Samsung's Galaxy Alpha has an 'entirely new appearance'
Wow, it looks like nothing else on the market, for sure
YES YES YES! Apple patents mousy, pressure-sensing iVibrator
Fanbois prepare to experience the great Cupertin-O
Steve Jobs had BETTER BALLS than Atari, says Apple mouse designer
Xerox? Pff, not even in the same league as His Jobsiness
TV transport tech, part 1: From server to sofa at the touch of a button
You won't believe how much goes into today's telly tech
Apple analyst: fruity firm set to shift 75 million iPhones
We'll have some of whatever he's having please
prev story

Whitepapers

5 things you didn’t know about cloud backup
IT departments are embracing cloud backup, but there’s a lot you need to know before choosing a service provider. Learn all the critical things you need to know.
Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Build a business case: developing custom apps
Learn how to maximize the value of custom applications by accelerating and simplifying their development.
Rethinking backup and recovery in the modern data center
Combining intelligence, operational analytics, and automation to enable efficient, data-driven IT organizations using the HP ABR approach.
Next gen security for virtualised datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.