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. 



View All Comments

  • Solrax - Tuesday, April 14, 2015 - link

    I have the exact same concern. I can drag out an old magnetic drive years after I've last used it and can read it fine. I recently booted up an old machine that was running Windows 98! I've never heard before that would be a concern with SSD, but it will apparently be a very real problem with the 840 EVO. I've already had one die exhibiting excessive ECC that sounds a lot like an extreme case of this same problem.

    I'm very concerned that my Surface Pro 3 has a Samsung SSD in it (reportedly of the 840 EVO technology). If I stop using it for a year it's drive may be effectively erased? Better get the recovery partitions off onto a flash drive...

    Like others have said, this may be my last Samsung SSD. Too bad I didn't know about one being in the Surface. Nothing I can do about that (except at least they are apparently preparing the same firmware update for the Surface drive - they never released the first version for it).
  • npz - Tuesday, April 14, 2015 - link

    It should be noted all SSDs have this issue, only varying by degree and the different strategies they use in firmware to try to mitigate it. Excerpts from a Dell paper for SSDs

    Data retention is the timespan over which a ROM remains accurately readable. It is how long the cell would maintain its programmed state when the chip is not under power bias. Data retention is very sensitive to number of P/E cycle put on the flash cell and also dependent on external environment. High temperature tends to reduce re
    tention duration. Number of read cycles performed can also degrade this retention.

    eMLC, or enterprise MLC is a variant of MLC technology that is harvested from the highest quality portion of the NAND wafer and programmed uniquely to increase erase cycles. eMLC achieves endurance levels of 30,000 write cycles, whereas some of the newest MLC only has 3,000 write cycles. eMLC makes a tradeoff to enable this endurance
    by giving up data retention.

    6. I have unplugged my SSD drive and put it into storage. How long can I expect the drive to retain my data without needing to plug the drive back in?

    It depends on the how much the flash has been used (P/E cycle used), type of flash, and storage temperature. In MLC and SLC, this can be as low as 3 months and best case can be more than 10 years. The retention is highly dependent on temperature and workload.

    NAND Technology = Data Retention @ rated P/E cycle
    SLC = 6 Months
    eMLC = 3 months
    MLC = 3 Months
  • Solrax - Wednesday, April 15, 2015 - link

    Thank you for posting this information! You've really educated me - I did not realize SSD's had such limited retention. Sounds like spinning platters aren't as dead as I thought - for any longer term storage (like if I ever want to boot an old machine up) I'd better have transferred the data to HDD. Reply
  • leexgx - Tuesday, March 6, 2018 - link

    Should note this is at the end of life p/e expected (so 1000 cycles used on a 1000 p/e drive) then these conditions can happen (but unlikely due to ECC even after a year it probably be able to data just might be slightly slow doing it) Reply
  • npz - Tuesday, April 14, 2015 - link

    Yes. If you leave it powered on, the firmware could refresh old data cells like the upcoming fix in this case. But you are screwed if you leave the drive unpowered, or if the firmware for your drive does not use that strategy.

    SSDs just aren't built for cold storage. This cell charge decay issue is inherent to all SSDs and in general, SSDs have bad data retention. Like, really bad. And data retention ability, which in turn affects read performance, also decreases with P/E cycles on a cell.
  • npz - Tuesday, April 14, 2015 - link

    I would say 5 months is ok, albeit with read performance degradation at that point. I've read just about all MLC client drives are rated (where published) for no more than 1 year data retention, at normal wear. It will be worse if you run torture test, store some data and then let it sit. Enterprise drives are worse, at 6 months or less. Reply
  • hammer256 - Tuesday, April 14, 2015 - link

    ok, so never use SSDs for archival purposes. So an extension of that is all SSDs have certain cell refresh algorithms built in? Reply
  • Achaios - Tuesday, April 14, 2015 - link

    Thank you for the update, Kristian. You are the best. Reply
  • KenPC - Tuesday, April 14, 2015 - link

    I am amazed, dazed, and shocked by this article.

    Samsung launched TLC in a major way 2013..

    By mid 2014, problems were well documented.
    These are problems that made Samsung TLC drives definitely lower tier performance in the market and markedly different that the advertised and specified performance.

    By late 2014, a first firmware 'fix' was found ineffective, but Samsung still promised to restore TLC performance to spec'd and advertised performance.

    By Feb 2015, Samsung still promised to restore the drives to spec and their perceived market position in March, and evidence of slowdowns in the 840, 840evo and TLC based OEM drives were widely reported.

    In mid April, (pardon the mixed metaphor), Samsung fed Anandtech the koolaid and said,, these are not the slowdowns you are looking for,, move along.......

    So, to be quite clear, the slowdown disguise from Samsung ONLY works if you choose to install magician 4.x, and ONLY works if you have a consumer drive, and NOT if you have a Samsung OEM TLC based drive. (Oh and the extra bits written are also not of any concern, of course!)

    So the 'fix' is to play musical chairs with the drive data every so often... ????

    That's no fix,, restoring performance as advertised and spec'd is a fix!
  • gohanrocs12 - Wednesday, April 15, 2015 - link

    did you fully read the article? There is a FW coming out as well, you won't need Magician if you update the FW since the FW will be doin everything for you automatically when you leave the system powered on and idle. Reply

Log in

Don't have an account? Sign up now