Request for Samsung 840 EVO SSD owners (write amplification calculation).

SSBrain

Member
Nov 16, 2012
158
0
76
I have a request for Samsung 840 EVO SSD owners. In order to confirm my observation that with normal usage patterns the write amplification factor on these drives appears to be close to or possibly even lower than 1.0x, I need data from the community.

All I need is a screenshot or dump of the main SMART attributes with any kind of SMART monitoring program, like for example CrystalDiskInfo (on Windows). More specifically, I will be using these data (Samsung 830 pictured here):

y64OLoR.png


In this case, the Wear Leveling Count is 179 (P/E cycles).
Since the raw NAND capacity of this drive is 128 GiB, the calculated amount of writes to the NAND is 179 × 128 = 22912 GiB = 22.375 TiB
Host Writes are already there, but to confirm (or be more precise) one could use the LBA Written data. Each LBA is 512 bytes, so that would be 15651045550 × 512 ÷ (1024^3) = 7463 GiB = 7.288 TiB
The lifetime write amplification factor for this SSD is thus 22.375 ÷ 7.288 = 3.07x, which is generally normal for Samsung 830 SSDs used with a light usage pattern (which counterintuitively tends to increase the write amplification over time).


My hypothesis is that on Samsung 840 EVO SSDs (or the upcoming 850 EVO) the Turbowrite emulated-SLC cache helps decreasing the write amplification, bringing it below 1.0x in certain cases, like what happens on the SanDisk Ultra II TLC SSD and its nCache 2.0 SLC buffer.

I need data from drives normally used, not review samples or anyway ones that have been secure erased (which would increase the wear leveling count without increasing host writes).
 

SSBrain

Member
Nov 16, 2012
158
0
76
I'll post an example to show what I mean. I found this screenshot on the web:

2J60gXz.png


B1 - Wear Leveling Count is 8 (hex, but it's the same in dec too).
Samsung 840 EVO SSDs have 128 GiB of raw NAND capacity, of which 9 are used in SLC mode for the Turbowrite buffer. This leaves 128 - 9 = 119 GiB for the user addresseable space and overprovisioning purposes.

Host Writes = 1496 GiB
NAND Writes = 119 GiB × 8 P/E Cycles = 952 GiB
Calculated Write Amplification = 952 GiB ÷ 1496 GiB = 0.636x


Another example
4Lr81c9.jpg


Host Writes = 9099343104 (Total LBA Written) × 512 ÷ (1024^3) = 4338.9 GiB
NAND Writes = 119 GiB × 35 P/E Cycles = 4165 GiB
Calculated Write Amplification = 4165 GiB ÷ 4338.9 GiB = 0.959x



Another sample, this time a 250GB model. On this one the user addressable space + OP space is 256 - 9 = 247 GiB
KeoKuZB.jpg


Host Writes = 2241 GiB
NAND Writes = 247 GiB × 6 P/E Cycles = 1482 GiB
Calculated Write Amplification = 1482 GiB ÷ 2241 GiB = 0.661x


A 500GB model here (512 GiB of raw NAND capacity - 18 GiB of TLC NAND for 6 GiB of emulated-SLC NAND = 494 GiB)
p8dsBJT.png


Host Writes = 4813003269 (Total LBA Written) × 512 ÷ (1024^3) = 2295 GiB
Nand Writes = 494 GiB × 3 P/E Cycles = 1482 GiB
Calculated Write Amplification = 1482 GiB ÷ 2295 GiB = 0.646x (although there might have not been enough P/E cycles in this case for a reliable calculation)
 
Last edited:

Cerb

Elite Member
Aug 26, 2000
17,484
33
86
<0.7x is crazy, but I've seen similar, but not nearly so low, with the Sandisk Ultra Plus, and will be watching a new Ultra II, that should do the same as the Evos.

If most writes are temporary data, and either get overwritten or TRIMed prior to the buffer flushing the data out to the TLC, WA should very well be able to go <1. The same caching used on MLC should allow typical 3x-ish WA from us power users to go down to maybe 1.5x or so, which I have seen for an 840 Evo.
 

SSBrain

Member
Nov 16, 2012
158
0
76
<0.7x is crazy, but I've seen similar, but not nearly so low, with the Sandisk Ultra Plus, and will be watching a new Ultra II, that should do the same as the Evos.
To tell the truth I noticed such apparently impossibly (assuming no data compression/deduplication performed) low write amplification values since the Samsung 840 EVOs first came out, but at the time I thought they were the result of a bug somewhere (which seemed to be consistent with reports of that bug involving low performance with static data later on). However when I learned that SanDisk uses a similar system on Ultra II SSDs with nCache 2.0 specifically to reduce write amplification below 1.0x under consumer workloads, those values started making sense.

If most writes are temporary data, and either get overwritten or TRIMed prior to the buffer flushing the data out to the TLC, WA should very well be able to go <1. The same caching used on MLC should allow typical 3x-ish WA from us power users to go down to maybe 1.5x or so, which I have seen for an 840 Evo.

My MLC-equipped SanDisk Extreme II uses nCache too, but I only get very low write amplification values (very close to 1.0x) when writing large amounts of sequential data. Normal workloads do not seem to be affected that way as their WA generally hovers around 3.0x (in my case, at least).

On the other hand (if this behavior is confirmed, especially on the 840/850 EVOs) this is a big deal for TLC-equipped SSDs as their lower raw (at WA=1) endurance is almost completely offset by the significantly lower write amplification compared their MLC counterparts, as long as the emulated SLC cache is never completely filled.
 

Cerb

Elite Member
Aug 26, 2000
17,484
33
86
The Ultra Plus and Extreme II don't cache everything, just metadata and small writes. They probably wanted to avoid unpredictable performance like could be seen with the 840 Evos, early on, at least.
 

VirtualLarry

No Lifer
Aug 25, 2001
56,230
9,991
126
On the other hand (if this behavior is confirmed, especially on the 840/850 EVOs) this is a big deal for TLC-equipped SSDs as their lower raw (at WA=1) endurance is almost completely offset by the significantly lower write amplification compared their MLC counterparts, as long as the emulated SLC cache is never completely filled.

This is very interesting news! I was avoiding the TLC SSDs, because of the low P/E cycles, but if they can reduce WA below 1.0x, then they might be a viable purchase choice for me.

I really want to pick up some more Intel 710 SSDs, they have 50-60K P/E cycles. Then again, do I really want to be using the same (smallish) SSDs 10-20 years from now? I wonder if it's even worth worrying about.
 

etrigan420

Golden Member
Oct 30, 2007
1,723
1
71
I need data from drives normally used, not review samples or anyway ones that have been secure erased (which would increase the wear leveling count without increasing host writes).

I have a brand new (3 days installed) 500GB 840 EVO that I can run CDI on if it will contribute.

It literally has a cloned image from the 250GB 840 PRO that it replaced on it and that's it, so I'm not sure what the numbers will look like.

Should be home in about 2 hours...
 

StinkyPinky

Diamond Member
Jul 6, 2002
6,761
777
126
Yeah I have a 250 gig drive that's about 6 months old and another 500 gig that's 2 days old. So not sure if the 500 gig will help you? I will be home in a few hours.
 

SSBrain

Member
Nov 16, 2012
158
0
76
I have a brand new (3 days installed) 500GB 840 EVO that I can run CDI on if it will contribute.

It literally has a cloned image from the 250GB 840 PRO that it replaced on it and that's it, so I'm not sure what the numbers will look like.

Should be home in about 2 hours...

Yeah I have a 250 gig drive that's about 6 months old and another 500 gig that's 2 days old. So not sure if the 500 gig will help you? I will be home in a few hours.

The Wear Leveling Count has to be high enough for the calculation, ideally at least over 3-4 units. In the case of your brand new 500GB models, it's likely going to still be at 1 or even 0.

There isn't any straightforward way for me to know from SMART data on these drives whether the wear leveling count has just increased or if it's about to increase again, so the higher it is, the lower the error margin due to this uncertainty will be.

This is very interesting news! I was avoiding the TLC SSDs, because of the low P/E cycles, but if they can reduce WA below 1.0x, then they might be a viable purchase choice for me.

To be fair, this might be true only as long as they are used under typical light/consumer workloads.

Under different usage scenarios where they are hammered with sustained [random] writes with low to no free space available (or no TRIM), Samsung 840 EVO SSDs (especially the smaller 120GB and 250GB models) have been shown to respond in the opposite manner, resulting in a generally high write amplification (around 4.5x). This could be because they have less overprovisioning space than other SSDs, once you take into account that some of the unaccessible NAND they have is for their Turbowrite pseudo-SLC buffer rather than the OP.

If you actually need write endurance, nothing beats having more durable NAND and more OP.
Ironically, what Turbowrite seems to do is increasing endurance for people who generally don't have to worry about it.
 
Last edited:

etrigan420

Golden Member
Oct 30, 2007
1,723
1
71
The Wear Leveling Count has to be high enough for the calculation, ideally at least over 3-4 units. In the case of your brand new 500GB models, it's likely going to still be at 1 or even 0.

Yup, my Wear Leveling Count is still at 0. :'(
 
Feb 25, 2011
16,777
1,466
126
2cootoj.png


If I understand the question correctly, 1.9TB written, 5 wear leveling passes on a 250GB drive means Write amplification of <1.5TB/1.9TB = <~0.79x?
 
Last edited:

SSBrain

Member
Nov 16, 2012
158
0
76
http://i62.tinypic.com/2cootoj.png

This one is a good sample.

The 250GB EVO has 247 GiB for User+OP space.
Wear Leveling Count = 5
Total Host Writes = 1911 GiB
Calculated NAND Writes = 247 GiB × 5 = 1235 GiB
Calculated Write Amplification = 1235 GiB ÷ 1911 GiB = 0.646x

Apparently, the write amplification is quite low on this drive too.
 
Feb 25, 2011
16,777
1,466
126
Then again, do I really want to be using the same (smallish) SSDs 10-20 years from now? I wonder if it's even worth worrying about.

It's not. After all, you switch systems like most people change their socks. :D

My SSD is estimating its lifespan as 8 years. If I'm still using the same boot drive in 2022, I'd be... shocked.

Heck, if I'm still using a SATA boot drive in 2022...
 

SSBrain

Member
Nov 16, 2012
158
0
76
Here's my 250 gig drive, which is about 6 months old

http://i.imgur.com/KF1DImI.png
Thanks for your help. So, again:

The 840 EVO 250GB has 247 GiB for User+OP space (256 GiB of raw NAND capacity - 9 GiB for the Turbowrite cache).

Wear Leveling Count = 4
Total Host Writes = 1406 GiB
Calculated NAND Writes = 247 GiB × 4 = 988 GiB
Calculated Write Amplification = 988 GiB ÷ 1406 GiB = 0.703x



As an outlier, here's a Samsung 840 EVO which got hammered with writes through very intense memory swapping due to the usage of many virtual machines at the same time:

2a5k8e0.jpg


Samsung 840 EVO = 119 GiB capacity for User+OP space
Wear Leveling Count = 70E (hex) = 1806 (dec)
Total Host Writes = 53688 GiB
Calculated NAND Writes = 119 GiB × 1806 = 214914 GiB
Calculated Write Amplification = 214914 GiB ÷ 53688 GiB = 4.003x


A 120GB one here had a similar workload (no free space, no TRIM, random writes), for endurance testing:
http://ssdendurancetest.com/ssd-endurance-test-report/Samsung-840-EVO-120

Wear Leveling Count = 3172 (it's in the second page in the interactive chart)
Total Host Writes = 80.18 TiB = 82104 GiB
Calculated NAND Writes = 119 GiB × 3172 = 377468 GiB
Calculated Write Amplification = 377468 GiB ÷ 82104 GiB = 4.597x
 
Last edited:

SSBrain

Member
Nov 16, 2012
158
0
76

It looks like this one has a low WA too. I was wondering if the bigger drives were going to have an even lower one due to their larger Turbowrite cache.

Actual User+OP space = 1024 GiB - (12 GiB × 3) = 988 GiB
Wear Leveling Count = 10 P/E Cycles
Total Host Writes = 31574141217 × 512 ÷ (1024^3) = 15055.72 GiB
Calculated NAND Writes = 988 GiB × 10 P/E Cycles = 9880 GiB
Calculated Write Amplification = 9880 GiB ÷ 15055.72 GiB = 0.656x
 

Hellhammer

AnandTech Emeritus
Apr 25, 2011
701
4
81
Here's some data for the original SSD 840. It's a review sample but for the past two years it has been serving as a home for my game installations.

Raw NAND capacity = 512GiB (no TurboWrite -- it's all TLC)
Wear Leveling Count = 26 P/E cycles
Total host writes = 12634986824 * 512 / 1024^3 = 6024.8GiB
Calculated NAND writes = 512GiB * 26 = 13,312GiB
Observed write amplification = 13,312GiB / 6024.8GiB = 2.21x
 

SSBrain

Member
Nov 16, 2012
158
0
76
Here's some data for the original SSD 840. It's a review sample but for the past two years it has been serving as a home for my game installations.

Raw NAND capacity = 512GiB (no TurboWrite -- it's all TLC)
Wear Leveling Count = 26 P/E cycles
Total host writes = 12634986824 * 512 / 1024^3 = 6024.8GiB
Calculated NAND writes = 512GiB * 26 = 13,312GiB
Observed write amplification = 13,312GiB / 6024.8GiB = 2.21x

I used to have a first gen Samsung 840 250GB model too, which shows a lower (although still larger than 1.0x) write amplification than yours. It's currently being used under relatively light workloads on a different PC than mine (mainly OS, internet, some gaming). I did most of the writes:

kf1OmXy.png


Raw NAND capacity = 256 GiB (no TurboWrite)
Wear Leveling Count = 82 P/E cycles
Total Host Writes = 30549781838 × 512 ÷ 1024^3 = 14567.27 GiB
Calculated NAND Writes = 256 GiB × 82 P/E cycles = 20992 GiB
Observed write amplification = 20992 GiB ÷ 14567.27 GiB = 1.441x
 
Last edited:

SSBrain

Member
Nov 16, 2012
158
0
76
http://www.elmleigh.co.uk/Paul/evo-write-amp.jpg

The write amplification seems about the same as most of the other EVOs above, perhaps somewhat higher but still way lower than 1.0x:

Raw NAND capacity = 119 GiB
Wear Leveling Count = 7 P/E cycles
Total Host Writes = 1114 GiB
Calculated NAND Writes = 119 GiB × 7 P/E cycles = 833 GiB
Observed write amplification = 833 GiB ÷ 1114 GiB = 0.748x

I'm sure there has to be some sort of correlation with the amount of data written hourly, but there's no way to tell for sure through SMART data as most users do not keep their PC on 24/7.



Here are a few more samples from a different discussion board:



Raw NAND capacity = 247 GiB
Wear Leveling Count = 16 P/E cycles
Total Host Writes = 5596 GiB
Calculated NAND Writes = 247 GiB × 16 P/E cycles = 3952 GiB
Observed write amplification = 3952 GiB ÷ 5596 GiB = 0.706x




Raw NAND capacity = 119 GiB
Wear Leveling Count = 10 P/E cycles
Total Host Writes = 1405 GiB
Calculated NAND Writes = 119 GiB × 10 = 1190 GiB
Observed write amplification = 1190 GiB ÷ 1405 GiB = 0.847x
 

Coup27

Platinum Member
Jul 17, 2010
2,140
3
81
How is it possible to have a WA lower than 1x without using compression?
 

SSBrain

Member
Nov 16, 2012
158
0
76
How is it possible to have a WA lower than 1x without using compression?

From the SanDisk Ultra II (TLC) review:

http://www.anandtech.com/show/8520/sandisk-ultra-ii-240gb-ssd-review

The improved performance is not the only benefit of nCache 2.0. Because everything gets written to the SLC portion first, the data can then be written sequentially to TLC. That minimizes write amplification on the TLC part, which in turn increases endurance because there will be less redundant NAND writes. With sequential writes it is typically possible to achieve write amplification of very close to 1x (i.e. the minimum without compression) and in fact SanDisk claims write amplification of about 0.8x for typical client workloads (for the TLC portion, that is). That is because not all data makes it to the TLC in the first place &#8211; some data will be deleted while it is still in the SLC cache and thus will not cause any wear on the TLC. Remember, TLC is generally only good for about 500-1,000 P/E cycles, whereas SLC can easily surpass 30,000 cycles even at 19nm, so utilizing the SLC cache as much as possible is crucial for endurance with TLC at such small lithographies.

Maybe the Samsung 840 EVO works the same and is able to reduce the write amplification below 1.0x for workloads that don't constantly fill its SLC TurboWrite cache.
 

Coup27

Platinum Member
Jul 17, 2010
2,140
3
81
Ah, interesting. So I presume browsing history would be a prime candidate for this. I clear my browsing history before I shut down. It's often 300-500MB at a time.
 
Feb 25, 2011
16,777
1,466
126
Ah, interesting. So I presume browsing history would be a prime candidate for this. I clear my browsing history before I shut down. It's often 300-500MB at a time.
Not even stuff you delete. The computer is creating and destroying temp files all the time. Your activity is but a minor inconvenience to Machine Spirit.