Performance Over Time & TRIM

My biggest issue with Samsung SSDs in the past has been their extremely poor performance over time. Samsung doesn't do a lot of active garbage collection while writing in order to maintain ultra high write speeds, instead it prefers to clean up the drive during periods of little to no IO activity. Unfortunately this approach can result in pretty poor performance over time. In the old days the Samsung controllers would hit single digit write speeds, often slowing down to sub-HDD speeds. These days things are a lot better but it's still a concern. To quantify the behavior I filled all user addressible LBAs on the SSD 830, then proceeded to run our random write torture test on the now-dirty drive. After 20 minutes of torture I ran a single sequential read/write pass to measure how much of a hit the drive took.

Sequential read/write performance should be around 400/330 according to Iometer. Here's what the drive looks like after our torture test:

There's a significant drop in performance but the drive is still able to deliver ~100MB/s speeds. This graph is a bit deceptive however. After 20 minutes of 4KB random writes the SSD 830 will only write at a rate of around 20MB/s. By not doing much realtime garbage collection the random write speed can drop significantly over time, but at a lower write speed the 830 isn't penalized as much as other drives. To help deal with this issue I extended the length of our torture test to 60 minutes and re-ran:

Ah that's a lot more like it. Performance drops significantly, down to as low as 50MB/s for the earliest LBAs. Given enough idle time the 830 should correct much of this and obviously TRIMing those LBAs will restore full performance (as you'll see below) but the point is that by delaying the bulk of garbage collection the Samsung SSD 830 is able to drop in performance by a degree that I'm not super comfortable with. This phenomenon isn't exclusive to Samsung, you'll remember that we've complained about it with Crucial drives as well. Other than SandForce and Intel most controller manufacturers tend to follow a similar clean up the mess later approach to firmware design. In my opinion I'd much rather see lower peak performance and get higher worst case scenario performance as it tends to impact the user experience less.

If you are running under a TRIM enabled OS performance does restore to peak quite nicely after a TRIM pass:

AnandTech Storage Bench 2011 - Light Workload Power Consumption
POST A COMMENT

99 Comments

View All Comments

  • ruzveh - Wednesday, September 28, 2011 - link

    hey anand, where are the other tests dude? Where is the boot time test, application open time, app loading time, etc.??? Reply
  • abufrejoval - Wednesday, September 28, 2011 - link

    This gap between ZEUS and FusionIO, SLC and embedded SAN SSDs on one end and those consumer SSDs on the other end has been narrowing, but it's incredible to see just how much vendors from all over the place fight to keep it from closing.

    I got enterprise workloads, which aren't all that high, very predictible, with highs and lows in line with typical OLTP front-end shopping patterns as well as some end-of-day processing.

    The crux is the need for ultra high availability (or extremely short outages) and KISS answers that better than investing into premium SANs.

    I want directly attached SSDs there, preferably in 2.5" form factor and in RAIDs for better capacity management and non-stop replacements.

    20,ooo IOPS should do just fine, the real key is reliability and easy non-stop management. Daily overwrite is well below capacity so consumer SSDs should be fine. And I wouldn't mind replacing them after two years, if they'll reliably advise me of their imminent death weeks ahead.

    I tried being clever and put Crucial m3 and OCZ Vertex 2 in a mirror set with an SSD aware LSI SAS RAID controller, to offset the risk of immature firmware/controller issues (the original plan was to use a SAN/SSD mirror, but resilvering would be too expensive). That didn't work out too well, because of these garbage collection issues (m3 drives were failed by the RAID controller, just because they took a little longer than their OCZ counterparts).

    Of course we used synthetic tests first, "fio" to be exact and that just keeps those drives busy, busy, busy, quite beyond what actual workloads are likely to be. And in those cases the difference in garbage collection strategy caused real clashes, because the Crucial m3 took a finally took a long break when it had exhausted it's free space, while the OCZ stayed ready always, doing garbage collection on each and every write.

    In real life, we might never see that problem, because actual IOPS during early mornings (after the day-end processing) might drop below the "magic" threshold" which allows those Crucials to do their garbage collection, but who knows what would happing during Christmas shopping season, when those unknown thresholds might just be exceeded a wee bit...

    SSDs are not magnetic hard disks: They contain operating systems that need to be tuned just like your typical Oracle database. What's missing is interfaces which allow to read and set these well defined and published parameters in line with the use case you requrie.

    In purely technological terms that should be easy enough. But every vendor, from database, via OS and SSD will want his cut for this reliability and speed, which is why this may not happen for another couple of years.

    If only Samsung could make this strategy decision (early or late garbage collection) a user defined setting without price differentiation (enterprise vs. consumer) I'd be so happy!

    Why do I think it won't happen?
    Reply
  • gixxer - Monday, October 10, 2011 - link

    Does anyone have a more concrete release date than "october"? I am starting a new build and if this gets released soo, it will definitly be a contender. Reply
  • DanSmith - Tuesday, December 6, 2011 - link

    Hi Anand / All,

    Wonder if you if could shed any light on this drive supporting AES encryption using the "ATA password" BIOS options. Its been months now and this drive is on the market and there is sooo much conflicting info on the web about this drive supporting AES.

    Even samsung themselves can give me a straight answer!!

    Anyone who has one of these that can shed any light??

    Cheers, Daniel
    Reply
  • valhar2000 - Monday, December 26, 2011 - link

    What's a TRIM pass? Do you have to run some sort of procedure every now and then to apply TRIM to an SSD? Isn't TRIM supposed to work in real time as files are deleted or moved? Reply
  • kazumoda - Wednesday, February 8, 2012 - link

    I've been searching for a place to buy this Samsung PM830 but all I can find is the AM830. Can someone tell me if this is essentially the same thing or is it a vastly different product in terms of performance and reliability? Thanks. Is there any update on the performance of a smaller drive, in particular how does the 256gb version fare in terms of performance to the 512? Reply
  • datalaforge - Monday, February 27, 2012 - link

    I recently installed one of these into my 2.26GHZ Unibody MBP. Its great with its 10 second boots and so on. The battery life is not great though. I think that it was better before. Is there anything that can be done? Reply
  • BRKHD1 - Sunday, September 30, 2012 - link

    great review I love your site! I recently did a speed test of the samsung 830 on my youtube channel you can check it out here https://www.youtube.com/watch?v=gZJ-pPeE5lA Thanks again! Reply
  • BRKHD1 - Wednesday, November 28, 2012 - link

    http://www.youtube.com/watch?v=gZJ-pPeE5lA&fea... Reply

Log in

Don't have an account? Sign up now