All Solid State Drives Suffer Performance Drop-off
Lucas123 writes "The recent revelation that Intel's consumer X25-M solid state drive had a firmware bug that drastically affected its performance led Computerworld to question whether all SSDs can suffer performance degradation due to fragmentation issues. It seems vendors are well aware that the specifications they list on drive packaging represent burst speeds when only sequential writes are being recorded, but after use performance drops markedly over time. The drives with better controllers tend to level out, but others appear to be able to suffer performance problems. Still not fully baked are benchmarking standards that are expected out later this year from several industry organizations that will eventually compel manufacturers to list actual performance with regard to sequential and random reads and writes as well as the drive's expected lifespan under typical conditions."
Hey, it's in a RAID array, you can just do one at a time by removing it, wiping it, then reattach it and rebuild the disk. Then do the next one.
If it's RAID 5, you can even keep using the array!
Sleep your way to a whiter smile...date a dentist!
This is going to be a much bigger problem on FAT32 and NTFS, than modern Linux filesystems because FAT32 and NTFS fragment after very little use.
If you're worried, increase your block size. That shouldn't be a problem if you're writing media to the disk (as opposed to a billion tiny files, in which case large blocks would waste extra disk... but still be able to withstand fragmentation...)
The fragmentation we are talking about here is not related to file system fragmentation. All the testing that has created this affect has been done with IO test programs like IOmeter that can create I/O patterns that are specifically designed to demonstrate the problem. So it will affect EXT3 or whatever LINUX file system you prefer just as much (or as little depending on your point of view) as NTFS or DOS
The problem has nothing to do with fragmentation in the usual sense! SSD memory controllers do not even write your data sequentially, so "fragmentation", as applies to magnetic media, is pretty much meaningless here.
The problem is between writes and re-writes. On a fresh block, data can be written at full speed. But whenever anything inside that block needs to be re-written, contiguous or not, the whole block must be read from memory, altered, then re-written. It could all be contiguous data, and that would still be necessary. The difference is simply between the time it takes to write a fresh block, and the time it takes to re-write it, because re-writing simply takes longer. Period.
Actualy to be quite specific.. there is a simple solution and that is to decrease the size of flash blocks to something more sane so that a flash block size is also a reasonable logical sector size like something in the 512 to 4096 byte range
No, this solution isnt "feasable" yet, due to cost.. but eventualy either another solution will be developed, or this one will be implemented.
"His name was James Damore."