Do Solid State Disks (SSDs) have a buffer cache?

To quote Wikipedia:

A flash-based SSD typically uses a small amount of DRAM as a cache, similar to the cache in Hard disk drives. A directory of block placement and wear leveling data is also kept in the cache while the drive is operating. Data is not permanently stored in the cache. One SSD controller manufacturer, SandForce, does not use an external DRAM cache on their designs, but still achieve very high performance. Eliminating the external DRAM enables a smaller footprint for the other flash memory components in order to build even smaller SSDs.

Of course, the reason they can use less is that they are using memory in the first place to do the storage, so it is already reasonably fast compared to a traditional hard drive, whereas the harddrive needs that cache memory more to make it perform better.

If is also doubtful that they use enough to even warrant listing it as a feature, and it would probably look bad in comarision to traditional drive specs, so they opt to leave it out.

http://en.wikipedia.org/wiki/Solid_State_Drive#Cache_or_buffer


Yes, most SSD's have a cache in volatile memory like SRAM or SDRAM, but it is not necessarily required for high performance. Certainly the size of the cache is less of an indicator of performance with SSDs than it is with hard drives.

You might find this Anandtech article interesting as it discusses how traditional SSD architecture, with SDRAM or SRAM cache compares with the latest SanDisk architecture, which use a mixture of MLC and SLC NAND flash to remove the need for volatile memory completely.