Community
cancel
Showing results for 
Search instead for 
Did you mean: 
idata
Community Manager
2,157 Views

Intel 320 SSD on Linux, write wear indicator, smartctl

Hi All,

I am burning in a new Intel 320 SSD on Linux for use with a database, and the write wearing is something I would like to verify and make sure it fits with our write capacity requirements. I am trying to grok the smartctl output here below, but don't know what to look at that would tell me how many writes the MLC has taken and how much is left. Given the docs on the SMART output for the 320 I suspect its in the unknown attributes but not sure.

Regards,

Josh

320 Series SSDSA2CW300G3 MLC Solid State Drive

# smartctl -a /dev/sde

 

smartctl version 5.38 [x86_64-redhat-linux-gnu] Copyright (C) 2002-8 Bruce Allen

 

Home page is http://smartmontools.sourceforge.net/ http://smartmontools.sourceforge.net/

=== START OF INFORMATION SECTION ===

 

Device Model: INTEL SSDSA2CW300G3

 

Serial Number: CVPR111002XL300EGN

 

Firmware Version: 4PC10302

 

User Capacity: 300,069,052,416 bytes

 

Device is: Not in smartctl database [for details use: -P showall]

 

ATA Version is: 8

 

ATA Standard is: ATA-8-ACS revision 4

 

Local Time is: Wed Apr 13 17:41:13 2011 UTC

 

SMART support is: Available - device has SMART capability.

 

SMART support is: Enabled

=== 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: ( 1) 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: (0x0003) Saves 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: ( 1) minutes.

 

Extended self-test routine

 

recommended polling time: ( 1) minutes.

 

Conveyance self-test routine

 

recommended polling time: ( 1) minutes.

 

SCT capabilities: (0x003d) SCT Status supported.

 

SCT Feature Control supported.

 

SCT Data Table supported.

SMART Attributes Data Structure revision number: 5

 

Vendor Specific SMART Attributes with Thresholds:

 

ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE

 

3 Spin_Up_Time 0x0020 100 100 000 Old_age Offline - 0

 

4 Start_Stop_Count 0x0030 100 100 000 Old_age Offline - 0

 

5 Reallocated_Sector_Ct 0x0032 100 100 000 Old_age Always - 0

 

9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 117

 

12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 2

 

170 Unknown_Attribute 0x0033 100 100 010 Pre-fail Always - 0

 

171 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 0

 

172 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 0

 

184 Unknown_Attribute 0x0033 100 100 090 Pre-fail Always - 0

 

187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0

 

192 Power-Off_Retract_Count 0x0032 100 100 000 Old_age Always - 2

 

225 Load_Cycle_Count 0x0032 100 100 000 Old_age Always - 16048

 

226 Load-in_Time 0x0032 100 100 000 Old_age Always - 36

 

227 Torq-amp_Count 0x0032 100 100 000 Old_age Always - 48

 

228 Power-off_Retract_Count 0x0032 100 100 000 Old_age Always - 269162

 

232 Unknown_Attribute 0x0033 100 100 010 Pre-fail Always - 0

 

233 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 0

 

241 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 16048

 

242 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 18807
Tags (1)
0 Kudos
10 Replies
idata
Community Manager
340 Views

The version of smartmontools you are using is *significantly* old. It has no knowledge of SSDs, and thats proven by the "Not in drive database" message at the top. It's incredibly important that people using SMART utilities understand in full the data they're looking at, and take the time to read every single line and *understand* those lines. The same advice goes for people who stare at RAW_VALUE and think it's a 1:1 counter; it's not.

Please upgrade to smartmontools 5.40 or (better) 5.41 (development) and then provide the output here. We can talk about the results after you do that.

WFisc1
Beginner
340 Views

There are various values you can use for this.

See details in http://download.intel.com/design/flash/nand/325170.pdf http://download.intel.com/design/flash/nand/325170.pdf (page 7) - the following infos are from this PDF:

Timed Workload Media Wear Indicator — ID E2h (226 in smartctl output):

This attribute tracks the drive wear seen by the device during the last wear timer loop, as a percentage of the maximum rated cycles. The raw value tracks the percentage up to 3 decimal points. This value should be divided by 1024 to get the percentage.

 

For example: if the raw value is 4450, the percentage is 4450/1024 = 4.345%. The raw value is held at FFFFh until the wear timer (attribute E4h) reaches 60 (minutes). The normalized value is always set to 100 and should be ignored.

Timed Workload Host Reads Percentage — ID E3h (227 in smartctl output):

This attribute shows the percentage of I/O operations that are read operations during the last workload timer loop. The raw value tracks this percentage and is held at FFFFh until the workload timer (attribute E4h) reaches 60 (minutes). The normalized value is always set to 100 and should be ignored.

Workload Timer — ID E4h (228 in smartctl output):

This attribute is used to measure the time elapsed during the current workload. The attribute is reset when a SMART EXECUTE OFFLINE IMMEDIATE (D4h) subcommand 40h is issued to the drive. The raw value tracks the time in minutes and has a maximum value of 232 = 4,294,967,296 minutes (8,171 years). The normalized value is always set to 100 and should be ignored.

In the PDF you find on page 9 details on how to calculate the drive wear.

best regards,

Werner

WFisc1
Beginner
340 Views

Just a remark:

 

226 Load-in_Time 0x0032 100 100 000 Old_age Always - 36 -> 0.03515625 %

 

227 Torq-amp_Count 0x0032 100 100 000 Old_age Always - 48 -> 48% read percentage

 

228 Power-off_Retract_Count 0x0032 100 100 000 Old_age Always - 269162 -> in minutes -> 4486 hours 2 minutes -> 186 days 22 hours 2 minutes

For value 228 you maybe have to substract 65535 before (see below). Then it would be 203627 minutes -> 3393.78 hours -> 141.4 days

 

Not sure if this could be true. To be sure, better update smartctl as mentioned by koitsu

My 320 Series SSD with 160 GB had the following values when it was brand-new (I did not issue a single I/O before querying the SMART values here):

root@ubuntu-10-10:~# smartctl -A /dev/sdb

 

smartctl 5.40 2010-03-16 r3077 [x86_64-unknown-linux-gnu] (local build)

 

Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net http://smartmontools.sourceforge.net

=== START OF READ SMART DATA SECTION ===

 

SMART Attributes Data Structure revision number: 5

 

Vendor Specific SMART Attributes with Thresholds:

 

ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE

 

3 Spin_Up_Time 0x0020 100 100 000 Old_age Offline - 0

 

4 Start_Stop_Count 0x0030 100 100 000 Old_age Offline - 0

 

5 Reallocated_Sector_Ct 0x0032 100 100 000 Old_age Always - 0

 

9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 0

 

12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 3

 

170 Unknown_Attribute 0x0033 100 100 010 Pre-fail Always - 0

 

171 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 0

 

172 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 0

 

184 End-to-End_Error 0x0033 100 100 090 Pre-fail Always - 0

 

187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0

 

192 Power-Off_Retract_Count 0x0032 100 100 000 Old_age Always - 1

 

225 Load_Cycle_Count 0x0032 100 100 000 Old_age Always - 5

 

226 Load-in_Time 0x0032 100 100 000 Old_age Always - 65535

 

227 Torq-amp_Count 0x0032 100 100 000 Old_age Always - 65535

 

228 Power-off_Retract_Count 0x0032 100 100 000 Old_age Always - 65535

 

232 Available_Reservd_Space 0x0033 100 100 010 Pre-fail Always - 0

 

233 Media_Wearout_Indicator 0x0032 100 100 000 Old_age Always - 0

 

241 Total_LBAs_Written 0x0032 100 100 000 Old_age Always - 5

 

242 Total_LBAs_Read 0x0032 100 100 000 Old_age Always - 12
idata
Community Manager
340 Views

You do not have to subtract 65535; I'm not sure what gives you that idea. :-)

65535 is the default power-on/reset value for the attribute. After about 30 seconds of I/O the attribute should increment to zero (65535 -> 0) and work fine after that. This can be reproduced by resetting attributes 226/227/228 to factory defaults by doing "smartctl -t vendor,0x40 /dev/disk".

To the OP and Werner: smartmontools 5.41 is out (non-development), and has appropriate SSD support for the newer (320, 510, etc.) Intel-series SSDs. Attributes will be properly labelled.

WFisc1
Beginner
340 Views

Thanks for your clarification koitsu! I'm currently on a trip, not having access to my 320 Series 160GB SSD - so I thought that 65535 must be substracted, not knowing that after 30 seconds of I/O the value goes to 0.

I'll try smartmontools 5.41 once I'm back.

Thanks and best regards,

Werner

WFisc1
Beginner
340 Views

I have now compiled smartmontools 5.41 and the attributes are now labelled correctly:

user@ubuntu-10-10:~$ sudo /usr/local/sbin/smartctl -A /dev/sdb

 

smartctl 5.41 2011-06-09 r3365 [x86_64-linux-2.6.35-28-generic] (local build)

 

Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net http://smartmontools.sourceforge.net

=== START OF READ SMART DATA SECTION ===

 

SMART Attributes Data Structure revision number: 5

 

Vendor Specific SMART Attributes with Thresholds:

 

ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE

 

3 Spin_Up_Time 0x0020 100 100 000 Old_age Offline - 0

 

4 Start_Stop_Count 0x0030 100 100 000 Old_age Offline - 0

 

5 Reallocated_Sector_Ct 0x0032 100 100 000 Old_age Always - 0

 

9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 4

 

12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 16

 

170 Reserve_Block_Count 0x0033 100 100 010 Pre-fail Always - 0

 

171 Program_Fail_Count 0x0032 100 100 000 Old_age Always - 0

 

172 Erase_Fail_Count 0x0032 100 100 000 Old_age Always - 0

 

184 End-to-End_Error 0x0033 100 100 090 Pre-fail Always - 0

 

187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0

 

192 Unsafe_Shutdown_Count 0x0032 100 100 000 Old_age Always - 0

 

225 Host_Writes_32MiB 0x0032 100 100 000 Old_age Always - 9587

 

226 Workld_Media_Wear_Indic 0x0032 100 100 000 Old_age Always - 230

 

227 Workld_Host_Reads_Perc 0x0032 100 100 000 Old_age Always - 0

 

228 Workload_Minutes 0x0032 100 100 000 Old_age Always - 2832

 

232 Available_Reservd_Space 0x0033 100 100 010 Pre-fail Always - 0

 

233 Media_Wearout_Indicator 0x0032 100 100 000 Old_age Always - 0

 

241 Host_Writes_32MiB 0x0032 100 100 000 Old_age Always - 9587

 

242 Host_Reads_32MiB 0x0032 100 100 000 Old_age Always - 5755

Thanks for your help!

idata
Community Manager
340 Views

Hi~

I am not able to get temperature reading out from the smartctl. is there any way i can get them in linux?

as for normal HDD i uses:-

smartctl -a /dev/sda | grep -i Temperature

the above command works for normal disk. and not for SSD.

Please advice.

FYI, using smartmontools version5.37 and I am new to Linux, not sure how to update to 5.41 yet. Looking for rpm file.

Thanks.

Regards,

XX Ong

WFisc1
Beginner
340 Views

Hi XX Ong,

not every HDD and SSD must have a temperature sensor inside. I think nearly all HDDs have temperature sensors. Intel 320 Series SSDs don't seem to have a temperature sensor, at least they do not report temperature values via SMART.

The example below shows a SSD with a temperature sensor - in this case a Samsung 470 Series SSD:

smartctl 5.41 2011-06-09 r3365 [x86_64-linux-2.6.38.8-32.fc15.x86_64] (local build)

 

Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===

 

Model Family: Samsung based SSDs

 

Device Model: SAMSUNG 470 Series SSD

[...]

ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE

 

9 Power_On_Hours 0x0032 099 099 --- Old_age Always - 2

 

12 Power_Cycle_Count 0x0032 099 099 --- Old_age Always - 8

 

177 Wear_Leveling_Count 0x0013 100 100 --- Pre-fail Always - 0

 

178 Used_Rsvd_Blk_Cnt_Chip 0x0013 075 075 --- Pre-fail Always - 490

 

190 Airflow_Temperature_Cel 0x0022 072 071 --- Old_age Always - 28

 

235 Unknown_Attribute 0x0012 099 099 --- Old_age Always - 6

Regards,

Werner

idata
Community Manager
340 Views

Thanks Werner,

Thanks for the information. It helps alot.

Regards,

XX Ong

idata
Community Manager
340 Views

No Intel SSD, as of this writing, have thermistors inside of them. So you will not be able to monitor SSD temperature with Intel drives. Many other SSD companies also do not include thermistors, so assuming one exists is a bad assumption.

Reply