The Samsung SSD 840 EVO read performance bug has been on the table for over six months now. Initially Samsung acknowledged the issue fairly quickly and provided a fix only a month after the news hit the mainstream tech media, but reports of read performance degradation surfaced again a few weeks after the fix had been released, making it clear that the first fix didn't solve the issue for all users. Two months ago Samsung announced that a new fix is in the works and last week Samsung sent us the new firmware along with Magician 4.6 for testing, which will be available to the public later this month.

I covered the reason behind the issue in one of our earlier articles, but in short the read performance degradation is a result of cell charge decay over time that caused extensive read-retry cycles to retrieve the correct data. The new firmware fixes this by periodically refreshing (i.e. rewriting) old data, which recovers the cell charge back to its original state and ensures that no read-retry or ECC that would degrade the performance is needed. Samsung says that the refresh operation does not impact user performance, suggesting that it's a relatively low priority process that is run when the drive is idling. 

The new Magician 4.6 also includes an Advanced Performance Optimization feature, which is similar to the performance restoration tool that Samsung released earlier. Basically, it's a command that tells the SSD to rewrite all of its internal data, which resets all cell charges and hence recovers performance. It's merely a supplementary tool as the firmware upgrade itself should be enough to restore performance, but in case the performance isn't fully restored after the firmware upgrade (and some idle time to let the drive refresh the cells), the tool can be used to force a cell charge refresh. 

I haven't run any tests of my own because I don't have any 840 EVOs deployed in my systems (I only have one 2.5" EVO anyway), but Allyn Malventano from PC Perspective managed to run some tests on a degraded drive to show the impact of the new firmware.

Before update

After update

After "Advanced Performance Optimization"

Allyn's tests indicate that the new firmware seems to mostly fix the issue even without running the optimization tool. Note that Allyn didn't give the drive any idle time after the firmware update, so the update appears the be very effective and with idle time the performance would likely have restored on its own.

Obviously, the big question is whether the performance will stay high because there was never a problem with freshly written data. We won't know that for sure until a couple of months later, but given the way the new firmware handles old data it does sound more promising because no data should get old enough to be slow to read.

Some of you are likely skeptical about the effect on endurance since rewriting the data will consume P/E cycles, but I find this to be a non-issue. We know that Samsung's 19nm TLC NAND is rated at 1,000 P/E cycles, so if the drive was to refresh all cells once a week, even that would only consume 52 cycles in a year. In five years time the total would be 260 cycles, which leaves you with 740 cycles for user data writes (for the record, that's 52GB of NAND writes per day for five years with the 120GB 840 EVO). 

All in all, I hope this fix will finally put an end to the performance degradation. The issue has been bugging many users for months and it's critical that the users get what they initially paid for. On one hand I'm confident enough to say that this fix is permanent given the way it works, but on the other hand I don't want to be too optimistic this time around because the first fix didn't turn out so great. Either way, I think this fix is the last chance for Samsung to provide a permanent solution because they already failed to do so once and it would no longer be fair to ask the customers to wait months for a fix that might or might not fix the issue. For now the only thing we can do is wait for user reports and hope for the best, but at least in theory the new firmware should be a permanent fix. 

Comments Locked

78 Comments

View All Comments

  • LeftSide - Tuesday, April 14, 2015 - link

    The old anandtech would have much set a much harsher tone for a manufacturer that pulled something like this.
  • semo - Wednesday, April 15, 2015 - link

    They were just as soft on OCZ with their Vertex 2 25nm "upgrade" and with Kingston's V300 bait and switch.

    For that and few other such examples I no longer frequent this site.
  • DanNeely - Tuesday, April 14, 2015 - link

    Real world there's always write amplification; so some of the cycles the flash is rated for on paper will be consumed by the firmware not by user writes.

    Also real world is that the number of GB of writes a consumer SSD is rated for is a small fraction of the total number of rewrite cycles. That's partly to make sure that even worst case amplification doesn't cause a drive to fail while still under warranty; and so they can sell drives with much higher rated write amounts at enterprise markups.
  • Kristian Vättö - Tuesday, April 14, 2015 - link

    Samsung doesn't have any official endurance spec for the 840 EVO -- the 1,000 figure is based on our own tests. It's fully warrantied for three years, meaning that if it dies during that time frame you are eligible for a new, working drive, even if the failure was due to exhausted NAND endurance.
  • Maltz - Tuesday, April 14, 2015 - link

    The cycle endurance rating NEVER refers to the user's activity - it measures the actual writes to the NAND. Whether you "send" it 740 cycles worth of data or 1000 is irrelevant. There is always going to be some write amplification just from wear leveling, if nothing else.

    Anyway, it's highly unlikely that a user that had heavy enough usage for this to be a real problem would go anywhere near a consumer SSD, much less a TLC drive.
  • Romberry - Tuesday, April 14, 2015 - link

    You're in a tizzy over theoretical numbers. Why? Why does it matter whether or not it actually hits 1000 P/E cycles when the fact is that unless you plan to use the drive for a decade and just absolutely hammer it with writes the entire time, you'll never get there anyway? (And ya know, if you are a person that really plans to hammer a drive with writes -- maybe in a database scenario -- the odds are very good that you won't be using a last generation TLC device anyway.)
  • leexgx - Tuesday, March 6, 2018 - link

    Bit old but these drives have expected 1000 p/e, but reality it's more like 10x more then that (you can write over 1PB of data before it becomes an issue so at the time people are splitting hairs over it)

    None samsung drives can fail around 300-600gb of written data
  • JatkarP - Tuesday, April 14, 2015 - link

    Samsung made trade off to bear those extra 260 P/E cycles to achieve performance by refreshing mechanism. This is not a perfect solution I would say, if some extensive user finishes his 760 cycles within 3 years then soon after 850 cycles product would fail (156 cycles have already completed by refresh). What samsung would say in this case ? Technically it has completed 1000 cycles so they might say this is not under warranty. But why would user want to trade off when he has paid full money. User wants both the things 1000 cycle endurance for HIS USAGE and performance mentioned in spec. Issue has been just patched but not resolved completely.
  • MrSpadge - Tuesday, April 14, 2015 - link

    Do any of you complaining read the previous answers in this thread? Everything you're asking here has been asked before and has been properly answered.
  • leexgx - Friday, April 17, 2015 - link

    properly not

    all drives perform a refresh to make sure data is still accessible, but i guess the trigger for refresh was set way way to low on the 840 and 840 evo forcing the drive to do muti reads and ECC

Log in

Don't have an account? Sign up now