• Now's your chance win big! Join our community and get entered to win a RTX 2060 GPU, plus more! Join here.

    Meet Stan Dmitriev of SurrogateTV on the Pi Cast TODAY! The show is live August 11th at 2:30 pm ET (7:30 PM BST). Watch live right here!

    Professional PC modder Mike Petereyns joins Scharon on the Tom's Hardware Show live on Thursday, August 13th at 3:00 pm ET (8:00 PM BST). Click here!

Question Crucial MX500 500GB sata ssd Remaining Life decreasing fast despite few bytes being written

Page 5 - Seeking answers? Join the Tom's Hardware community: where nearly two million members share solutions and discuss the latest tech.
Feb 5, 2020
88
5
45
1
@fzabkar: Yes, I get the data from attributes, not from the log. My selftests .bat and my logger .bat use the "smartctl -A" or "smartctl -x" command, depending on whether they want to read the basic SMART attributes or the extended attributes.

I became aware of Crucial's 32bit SectorsReadByHost bug from a thread in the HWiNFO forum. Martin, the developer of HWiNFO, patched HWiNFO so it would obtain Total Written from the SMART attribute instead of from the ATA Statistics. He wrote on Feb 29 that Crucial's 32bit bug makes Total Read impossible to obtain: https://www.hwinfo.com/forum/threads/crucial-mx500-tbw-not-accurate.5243/page-2#post-23895
 

Flayed

Honorable
Is this the log from GSmartControl?
Code:
smartctl 6.6 2017-11-05 r4594 [x86_64-w64-mingw32-w10-b18363] (sf-6.6-1)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     SiliconMotion based SSDs
Device Model:     CT1000BX100SSD1
Serial Number:    1504F0023EEC
LU WWN Device Id: 5 00a075 1f0023eec
Firmware Version: MU02
User Capacity:    1,000,204,886,016 bytes [1.00 TB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-2 (minor revision not indicated)
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Fri Jun 26 01:11:02 2020 GMTST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
AAM feature is:   Unavailable
APM feature is:   Unavailable
Rd look-ahead is: Enabled
Write cache is:   Enabled
DSN feature is:   Unavailable
ATA Security is:  Disabled, frozen [SEC2]

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x00)    Offline data collection activity
                    was never started.
                    Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0)    The previous self-test routine completed
                    without error or no self-test has ever
                    been run.
Total time to complete Offline
data collection:         (    0) seconds.
Offline data collection
capabilities:              (0x71) SMART execute Offline immediate.
                    No Auto Offline data collection support.
                    Suspend Offline collection upon new
                    command.
                    No Offline surface scan supported.
                    Self-test supported.
                    Conveyance Self-test supported.
                    Selective Self-test supported.
SMART capabilities:            (0x0002)    Does not save SMART data before
                    entering power-saving mode.
                    Supports SMART auto save timer.
Error logging capability:        (0x01)    Error logging supported.
                    General Purpose Logging supported.
Short self-test routine
recommended polling time:      (   2) minutes.
Extended self-test routine
recommended polling time:      (  10) minutes.
Conveyance self-test routine
recommended polling time:      (   2) minutes.
SCT capabilities:            (0x0035)    SCT Status supported.
                    SCT Feature Control supported.
                    SCT Data Table supported.

SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAGS    VALUE WORST THRESH FAIL RAW_VALUE
  1 Raw_Read_Error_Rate     ------   100   100   000    -    0
  5 Reallocated_Sector_Ct   ------   100   100   000    -    0
  9 Power_On_Hours          ------   100   100   000    -    3079
12 Power_Cycle_Count       ------   100   100   000    -    3378
160 Uncorrectable_Error_Cnt ------   100   100   000    -    0
161 Valid_Spare_Block_Cnt   ------   100   100   000    -    129
163 Initial_Bad_Block_Count ------   100   100   000    -    70
164 Total_Erase_Count       ------   100   100   000    -    86861
165 Max_Erase_Count         ------   100   100   000    -    119
166 Min_Erase_Count         ------   100   100   000    -    6
167 Average_Erase_Count     ------   100   100   000    -    41
168 Max_Erase_Count_of_Spec ------   100   100   000    -    2000
169 Remaining_Lifetime_Perc ------   100   100   000    -    100
175 Program_Fail_Count_Chip ------   100   100   000    -    0
176 Erase_Fail_Count_Chip   ------   100   100   000    -    0
177 Wear_Leveling_Count     ------   100   100   000    -    26
178 Runtime_Invalid_Blk_Cnt ------   100   100   000    -    0
181 Program_Fail_Cnt_Total  ------   100   100   000    -    0
182 Erase_Fail_Count_Total  ------   100   100   000    -    0
192 Power-Off_Retract_Count ------   100   100   000    -    76
194 Temperature_Celsius     ------   100   100   000    -    36
195 Hardware_ECC_Recovered  ------   100   100   000    -    1705221
196 Reallocated_Event_Count ------   100   100   000    -    0
197 Current_Pending_Sector  ------   100   100   000    -    0
198 Offline_Uncorrectable   ------   100   100   000    -    0
199 UDMA_CRC_Error_Count    ------   100   100   000    -    0
232 Available_Reservd_Space ------   100   100   000    -    100
241 Host_Writes_32MiB       ------   100   100   000    -    664066
242 Host_Reads_32MiB        ------   100   100   000    -    1167628
245 TLC_Writes_32MiB        ------   100   100   000    -    1389776
                            ||||||_ K auto-keep
                            |||||__ C event count
                            ||||___ R error rate
                            |||____ S speed/performance
                            ||_____ O updated online
                            |______ P prefailure warning

General Purpose Log Directory Version 1
SMART           Log Directory Version 1 [multi-sector log support]
Address    Access  R/W   Size  Description
0x00       GPL,SL  R/O      1  Log Directory
0x04       GPL,SL  R/O      8  Device Statistics log
0x06           SL  R/O      1  SMART self-test log
0x07       GPL,SL  R/O      1  Extended self-test log
0x09           SL  R/W      1  Selective self-test log
0x10       GPL,SL  R/O      1  NCQ Command Error log
0x11       GPL,SL  R/O      1  SATA Phy Event Counters log
0x24       GPL     R/O     64  Current Device Internal Status Data log
0x25       GPL     R/O     64  Saved Device Internal Status Data log
0x30       GPL,SL  R/O      9  IDENTIFY DEVICE data log
0x80-0x9f  GPL,SL  R/W     16  Host vendor specific log
0xe0       GPL,SL  R/W      1  SCT Command/Status
0xe1       GPL,SL  R/W      1  SCT Data Transfer

SMART Extended Comprehensive Error Log (GP Log 0x03) not supported

SMART Error Log not supported

SMART Extended Self-test Log Version: 1 (1 sectors)
No self-tests have been logged.  [To run self-tests, use: smartctl -t]

SMART Selective self-test log data structure revision number 1
SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

SCT Status Version:                  3
SCT Version (vendor specific):       0 (0x0000)
SCT Support Level:                   0
Device State:                        Active (0)
Current Temperature:                     0 Celsius
Power Cycle Min/Max Temperature:     33/38 Celsius
Lifetime    Min/Max Temperature:      0/41 Celsius
Under/Over Temperature Limit Count:   0/0

SCT Temperature History Version:     2
Temperature Sampling Period:         1 minute
Temperature Logging Interval:        0 minutes
Min/Max recommended Temperature:      0/100 Celsius
Min/Max Temperature Limit:            0/100 Celsius
Temperature History Size (Index):    128 (34)

Index    Estimated Time   Temperature Celsius
  35    2020-06-25 23:04    36  *****************
...    ..(126 skipped).    ..  *****************
  34    2020-06-26 01:11    36  *****************

SCT Error Recovery Control command not supported

Device Statistics (GP Log 0x04)
Page  Offset Size        Value Flags Description
0x01  =====  =               =  ===  == General Statistics (rev 2) ==
0x01  0x008  4            3378  ---  Lifetime Power-On Resets
0x01  0x010  4            3079  ---  Power-on Hours
0x01  0x018  6       570578176  ---  Logical Sectors Written
0x01  0x020  6       710027405  ---  Number of Write Commands
0x01  0x028  6      3507257538  ---  Logical Sectors Read
0x01  0x030  6       984137480  ---  Number of Read Commands
0x04  =====  =               =  ===  == General Errors Statistics (rev 1) ==
0x04  0x008  4               0  ---  Number of Reported Uncorrectable Errors
0x04  0x010  4              76  ---  Resets Between Cmd Acceptance and Completion
0x06  =====  =               =  ===  == Transport Statistics (rev 1) ==
0x06  0x008  4           20751  ---  Number of Hardware Resets
0x06  0x018  4               0  ---  Number of Interface CRC Errors
0x07  =====  =               =  ===  == Solid State Device Statistics (rev 1) ==
0x07  0x008  1               2  ---  Percentage Used Endurance Indicator
                                |||_ C monitored condition met
                                ||__ D supports DSN
                                |___ N normalized value

SATA Phy Event Counters (GP Log 0x11)
ID      Size     Value  Description
0x0001  2            0  Command failed due to ICRC error
0x0002  2            0  R_ERR response for data FIS
0x0003  2            0  R_ERR response for device-to-host data FIS
0x0004  2            0  R_ERR response for host-to-device data FIS
0x0005  2            0  R_ERR response for non-data FIS
0x0006  2            0  R_ERR response for device-to-host non-data FIS
0x0007  2            0  R_ERR response for host-to-device non-data FIS
0x0008  2            0  Device-to-host non-data FIS retries
0x0009  2            0  Transition from drive PhyRdy to drive PhyNRdy
0x000a  2            1  Device-to-host register FISes sent due to a COMRESET
0x000b  2            0  CRC errors within host-to-device FIS
0x000d  2            0  Non-CRC errors within host-to-device FIS
0x000f  2            0  R_ERR response for host-to-device data FIS, CRC
0x0010  2            0  R_ERR response for host-to-device data FIS, non-CRC
0x0012  2            0  R_ERR response for host-to-device non-data FIS, CRC
0x0013  2            0  R_ERR response for host-to-device non-data FIS, non-CRC
 
Last edited:
Code:
Device Statistics (GP Log 0x04)

0x01  0x018  6       570578176  ---  Logical Sectors Written    -> 272 GiB
0x01  0x028  6      3507257538  ---  Logical Sectors Read       -> 1672 GiB
Code:
SMART Attributes Data

241 Host_Writes_32MiB       ------   100   100   000    -    664066     -> 20.3 TiB
242 Host_Reads_32MiB        ------   100   100   000    -    1167628    -> 35.6 TiB
245 TLC_Writes_32MiB        ------   100   100   000    -    1389776    -> 42.4 TiB
It would appear that this model also has a 32-bit bug when reporting the Logical Sectors Written / Read in the Device Statistics log.

I can see where the erroneous (?) 272 GiB and 1672 GiB figures come from, but I can't see how the Total NAND Writes figure of 10GiB is computed. Perhaps the units for NAND writes are assumed to be 8KiB rather than 32MiB, in which case the result would be 10GiB???

In any case I would go with the SMART attribute data (not Device Statistics) reported by GSmartControl. They seem to be the most plausible.

Code:
Host_Writes_32MiB ------ 20.3 TiB
Host_Reads_32MiB  ------ 35.6 TiB
TLC_Writes_32MiB  ------ 42.4 TiB
 
Reactions: Flayed
Feb 5, 2020
88
5
45
1
@Flayed: Your smartctl (GSmartControl) output says the ssd's Remaining Life is 100%, which disagrees with the 98% reported by HWiNFO. There's a much newer version of smartctrl that might give different (more accurate?) results. Are you using an old version of HWiNFO too?

@fzabkar: Yes. Martin, the developer of HWiNFO, wrote there are 32bit bugs in both the Device Statistics bytes written and bytes read extended attributes. For the MX500 he worked around the bytes written bug by patching HWiNFO to report bytes written from the S.M.A.R.T. attribute instead of from Device Statistics. There's no similar workaround for the bytes read bug for the MX500 because it has no S.M.A.R.T. bytes read attribute.
 

Flayed

Honorable
@Flayed: Your smartctl (GSmartControl) output says the ssd's Remaining Life is 100%, which disagrees with the 98% reported by HWiNFO. There's a much newer version of smartctrl that might give different (more accurate?) results. Are you using an old version of HWiNFO too?

@fzabkar: Yes. Martin, the developer of HWiNFO, wrote there are 32bit bugs in both the Device Statistics bytes written and bytes read extended attributes. For the MX500 he worked around the bytes written bug by patching HWiNFO to report bytes written from the S.M.A.R.T. attribute instead of from Device Statistics. There's no similar workaround for the bytes read bug for the MX500 because it has no S.M.A.R.T. bytes read attribute.
I have HWiNFO v6.28-4200 may not be the latest but less than a month old. I downloaded GSmartControl when I posted it's output.
 
Jun 16, 2020
5
0
10
0
@Lucretia19

Thank you for your bat file, it started working immediately once I activated it on the 28th of June 2020 as you can see in the results below.

As you also posted earlier the speed at which the life expectancy deteriorated increased dramatically after each month and would definitely not have lasted the 5 years.

I will keep monitoring it and post my results after a month again.

This is my latest stats that I recorded that shows the WAF is busy decreasing again:

DateTotal Host Writes (GB)S.M.A.R.T. F7S.M.A.R.T. F8WAF = (F7+F8)/F7
16 Jun 20
246,525,596​
3,668,514,207​
15.88
17 Jun 20
247,596,431​
3,693,337,626​
15.92
18 Jun 20
250,351,148​
3,718,474,384​
15.85
19 Jun 20
250,933,222​
3,738,149,215​
15.90
20 Jun 20
251,584,547​
3,757,898,839​
15.94
21 Jun 20
252,222,762​
3,784,978,908​
16.01
22 Jun 20
252,910,747​
3,804,643,159​
16.04
23 Jun 20
253,875,446​
3,831,992,628​
16.09
24 Jun 20
257,148,500​
3,853,351,613​
15.98
25 Jun 20
258,080,161​
3,865,554,431​
15.98
26 Jun 20
258,831,585​
3,889,189,851​
16.03
27 Jun 20
259,300,872​
3,920,259,800​
16.12
28 Jun 20
260,232,165​
3,940,894,467​
16.14
29 Jun 20
261,136,679​
3,953,413,414​
16.14
30 Jun 20
262,089,122​
3,961,810,405​
16.12
1 Jul 20
264,238,853​
3,966,676,450​
16.01
2 Jul 20
265,930,626​
3,971,530,721​
15.93
3 Jul 20
266,778,652​
3,975,586,906​
15.90
4 Jul 20
267,539,923​
3,979,862,300​
15.88
5 Jul 20
268,322,199​
3,983,989,224​
15.85
6 Jul 20
269,666,723​
3,987,879,415​
15.79
7 Jul 20
270,300,779​
3,992,871,529​
15.77
8 Jul 20
271,490,831​
3,996,957,070​
15.72
9 Jul 20
274,936,859​
4,003,075,490​
15.56
 
Feb 5, 2020
88
5
45
1
@NamZIX: Which of my .bat files have you been running? I'll guess the selftests .bat since your Total WAF has been decreasing steadily since June 29. (Total WAF covers not just the recent period, but all the months/years that your ssd has been in operation.)

It would be easier to see what's been happening recently if you copy your data to a spreadsheet that has extra columns of formulas that automatically calculate "recent WAF." Here's the calculation of your WAF for the period from June 29 to July 9:
06/29/2020
261,136,679
3,953,413,414
16.14
F7 Increase
F8 Increase
WAF
07/09/2020
274,936,859
4,003,075,490
15.56
13,800,180
49,662,076
4.60

Have you also kept records of the Average Block Erase Count attribute? You can use the rate of increase of ABEC to estimate how many years of ssd life remain, since each 15 increments of ABEC correspond to 1% of Remaining Life. The estimate assumes, of course, that the host pc will continue to write to the ssd at a rate comparable to the rate it has been writing.
 
Feb 5, 2020
88
5
45
1
@NamZIX: For comparison with your 4.60 recent WAF, your WAF was 20.87 for the period from June 16 (your earliest data ) to June 28 (the day you began running ssd selftests), as the following calculation shows:
06/16/2020
246,525,596
3,668,514,207
15.88
F7 Increase
F8 Increase
WAF
06/28/2020
260,232,165
3,940,894,467
16.14
13,706,569
272,380,260
20.87
So the selftests have definitely improved your WAF.

If you benchmark the ssd read & write speeds while a selftest is running, I hope you'll post those results here too, so we can see whether your experience matches mine: selftests don't cause slowdown.

My pc writes to my ssd (attribute F7) at about one fourth the rate yours does... my pc wrote about 3.7 million NAND pages during the most recent 12 days, and your pc wrote about 13.8 million NAND pages during the most recent 10 days. So there may be more that you can do to preserve your ssd. In particular, if you also have a hard drive in the system, you could relocate the folders of frequently written files from the ssd to a hard drive like I did. One way to do that is to create symlinks (using the "mklink /J" command).
 

ASK THE COMMUNITY

TRENDING THREADS