什么是 SandForce_Internal?

什么是 SandForce_Internal?

根据palimpsest在我的新OCZ Vertex 3 120 GB 固态硬盘SMART 属性ID 234 是

无法纠正的 ECC 计数

无法纠正的 ECC 错误数

[<code>palimpsest</code> 在 KDE 上显示 SMART 数据的屏幕截图]

我一直在观察这个值,自从读取以来它一直在增加78

然后我跑过去smartctl -a /dev/sda看到了这个:

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
195 ECC_Uncorr_Error_Count  0x001c   120   120   000    Old_age   Offline      -       0/51803881
233 SandForce_Internal      0x0000   000   000   000    Old_age   Offline      -       51
234 SandForce_Internal      0x0032   000   000   000    Old_age   Always       -       135

看起来 OCZ 将 ID 234 分配为其他内容,而 ECC 无法纠正的错误实际上是 ID 195。

我的问题是......

SandForce_InternalSMART 属性 233 和 234是什么?

答案1

自从第一次提出这个问题已经有一段时间了,但它仍然具有相关性,因为这些信息在网上仍然有点难以找到,所以这里还有更多信息。

我的 Kingston HyperX Fury 上也有这两个神秘的 SMART 属性,它使用 Sandforce SF-2281 控制器。

如前所述,这两个数字跟踪“主机写入”(234)和“NAND写入”(233)。

这些 SMART 属性通过记录已写入驱动器的数据量来跟踪 SSD 闪存的磨损程度。

需要两个不同属性的原因在于,SandForce 2000 系列控制器尝试通过在操作系统发送到硬盘的数据写入实际闪存之前应用“Durawrite”数据压缩来最大限度延长闪存的使用寿命。

然后,当您的操作系统读取数据时,控制器会透明地解压缩数据,以便逐位地与原始数据相同。

他们这样做的原因是,通过压缩存储在驱动器上的数据,他们可以在驱动器的使用寿命内向闪存中写入更少的字节,从而减少磨损并延长闪存芯片的使用寿命。

...但并非所有数据都是可压缩的,所以有时“Durawrite”压缩确实有效,有时则不那么有效,所以这两个属性会跟踪您从压缩中获得了多少好处。

它们的工作原理如下...

主机写入(我的 Fury 上的属性 234)复制了“LBA 写入”属性(我的 Fury SSD 上为十进制 241)并返回相同的值,该值仅跟踪自首次安装以来操作系统在 SSD 的整个生命周期内写入 SSD 的总数据量(以 GB 为单位)。

“NAND 写入”(属性 233)通过显示实际写入(压缩后)NAND 闪存的总数据量(以千兆字节为单位)来显示“Durawrite”在压缩数据方面的效率。

通常情况下,“NAND 写入”会小于“HOST 写入”,其比率由您存储在硬盘上的数据的可压缩性控制。浏览器缓存 (HTML) 之类的数据压缩效果非常好,但已压缩格式(如 ZIPPED 数据、JPG、MP3 和 H264 或 MPG 视频)的压缩效果并不好,因为它们已经高度压缩,因此如果驱动器主要用于存储此类数据,则 HOST 写入和 NAND 写入几乎相同。

请记住,这两个数字都是以 GB 为单位的,并且这两个数字都与任何类型的问题无关,它们只是帮助您跟踪 SSD 的总使用情况。借助 3K 周期闪存芯片,240 GB 的 HyperX Fury 3K 可以承受超过 700 TB 的总写入量(700,000 GB),即使是不可压缩的数据。

答案2

SandForce_Internal 属性对应主机写入和 NAND 写入,较大的值表示主机写入。主机写入是控制器被告知要写入的数据量,而 NAND 写入表示控制器实际写入的数据量。

答案3

SmartCtrl 值:

-v 233,raw48,SandForce_NANDWrite_GiB
-v 234,raw48,SandForce_HostWrite_GiB
-v 241,raw48,Lifetime_Writes_GiB
-v 242,raw48,Lifetime_Reads_GiB

所有都以 GiB 为单位进行测量(您会看到内部属性 234 报告的值与公共属性 241 相同)。

该工具的当前来源smartctrl目前没有命名这 233 和 234 属性,而是使用“SandForce_Internal”。

这可以在其“drivedb.h”数据库文件中修复(该文件使用没有隐藏页眉/页脚的部分声明/*comments*/,使其可嵌入并可解析为 C/C++ 或 JSON)。

输出示例(带有smartctl -x):

SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAGS    VALUE WORST THRESH FAIL RAW_VALUE
  1 Raw_Read_Error_Rate     POSR--   120   120   050    -    0/0
  5 Retired_Block_Count     PO--CK   100   100   003    -    0
  9 Power_On_Hours_and_Msec -O--CK   083   083   000    -    15087h+46m+25.780s
 12 Power_Cycle_Count       -O--CK   099   099   000    -    1074
171 Program_Fail_Count      -O--CK   000   000   000    -    0
172 Erase_Fail_Count        -O--CK   000   000   000    -    0
174 Unexpect_Power_Loss_Ct  ----CK   000   000   000    -    154
177 Wear_Range_Delta        ------   000   000   000    -    5
181 Program_Fail_Count      -O--CK   000   000   000    -    0
182 Erase_Fail_Count        -O--CK   000   000   000    -    0
187 Reported_Uncorrect      -O--CK   100   100   000    -    0
194 Temperature_Celsius     -O---K   028   064   000    -    28 (Min/Max 16/64)
195 ECC_Uncorr_Error_Count  --SRC-   100   100   000    -    0/0
196 Reallocated_Event_Count PO--CK   100   100   003    -    0
201 Unc_Soft_Read_Err_Rate  --SRC-   100   100   000    -    0/0
204 Soft_ECC_Correct_Rate   --SRC-   100   100   000    -    0/0
230 Life_Curve_Status       PO--C-   100   100   000    -    100
231 SSD_Life_Left           PO--C-   100   100   010    -    0
233 SandForce_NANDWrite_GiB ------   000   000   000    -    13821
234 SandForce_HostWrite_GiB -O--CK   000   000   000    -    18743
241 Lifetime_Writes_GiB     -O--CK   000   000   000    -    18743
242 Lifetime_Reads_GiB      -O--CK   000   000   000    -    10313
                            ||||||_ K auto-keep
                            |||||__ C event count
                            ||||___ R error rate
                            |||____ S speed/performance
                            ||_____ O updated online
                            |______ P prefailure warning

注意:这smartctl最初是一个命令行 Linux/Unix 工具(GPL 许可),但它已本地移植并在 Windows(32 位或 64 位)上完美运行。它可以通过 UI 界面使用,gsmartcontrol也可以在 Windows GPL 许可上移植。

在我看来,这两种工具都是 Windows 上最好的 SMART 工具,因为它已经在其积极开发中捕获了大多数知名硬盘和 SSD 制造商已经使用的补丁、数据库和测试(西部数据、希捷、三星、东芝/苹果、英特尔、Crucial、金士顿、迈拓、Plextor、SanDisk、Transcend、惠普、JMicron、SandForce、OCZ、Corsair、IBM/联想/日立、富士通、InnoDisk、InnoStor、戴尔、昆腾、LaCie……)

相关内容