SSD、AHCI 和写入性能

SSD、AHCI 和写入性能

我们已经开始将 SSD 驱动器部署到开发人员工作站。目前,我们遇到了令人不快的意外,即使用新 SSD 的系统经常冻结,HDD 活动指示灯闪烁或持续亮起。基准测试显示读取速度约为 180 MB/s,但写入速度约为 5 MB/s。所有开发人员都使用 Windows 7 Enterprise,64 位,SP1。SSD 是金士顿 SV200S3128G。我们的一位开发人员(根据他的经验)建议以下顺序:

  • 备份工作站
  • 使用工具彻底擦除 SSD
  • 确保 BIOS 中已启用 AHCI
  • 安装 Windows
  • 从备份恢复

到目前为止,此过程似乎有效(我们仍在测试,但写入速度似乎为 120 MB/s)。在这方面存在一些问题:

  • 为什么我们必须彻底重新安装 Windows?
  • 是否可以在不重新安装 Windows 的情况下清理 SSD? 有可靠的工具吗?
  • 如果在安装 Windows 时禁用了 AHCI,而我们启用了它,这还不足以纠正写入性能问题吗?
  • 如果我们必须彻底擦除 SSD,这是否意味着我们收到的 SSD 以前被使用过(SH)?我之所以想知道这一点,是因为我收到的包裹是打开的(我当时没有想到这一点,因为我的一个同事只是偷看了包裹里面的东西)。
  • 以前有人见过类似的问题吗?

答案1

我想到 3 件事。首先,您使用的是哪个品牌/型号的 SSD?最近某些制造商的控制器出现了一些问题。其次,TRIM 是否已启用。Win7 将在安装时启用 TIRM(如果需要)。因此,如果当时没有 SSD,则可能无法启用。检查方法:

In an Elevated command Prompt windows, type the following:

fsutil behavior query disabledeletenotify
Results explained below:
DisableDeleteNotify = 1 (Windows TRIM commands are disabled)
DisableDeleteNotify = 0 (Windows TRIM commands are enabled)

第三,SSD 是否具有正确的扇区对齐。要检查 SSD 分区的对齐方式:

In Windows, run msinfo32
click on: components -> storage -> disks

Look for your SSD and check the partition starting offset.

它需要能被 4096 整除,否则对齐不正确。

答案2

如果过了一段时间后还出现这种情况 - 这可能是您这边的 TRIM 支持问题。如果一开始就是这样 - 驱动器可能被使用了。如果系统不支持 TRIM 命令,驱动器就不知道空闲块在哪里,已使用块在哪里。因此,一旦驱动器被填满,驱动器控制器应该擦除大块数据,存储未触及的块,合并实际写入和存储块中的数据,然后写入,这就是它如此缓慢的原因。擦除块通常为 128k,写入块通常为 4k(8k)。英特尔有特殊的实用程序可以执行 TRIM 命令的工作,但金士顿似乎没有这样的实用程序。所以,重新安装是更好的方法。

答案3

现代台式机硬盘有两种模式:1) 模拟古老的 ATA 硬盘 2) 带有 Tagged 命令/AHCI 的现代 SATA。这两种硬盘使用不同的方式控制硬盘。

如果您安装的 Windows 未启用 AHCI,则 Windows 会将驱动器检测为 ATA 磁盘,并为其选择正确的驱动程序。

如果您的 Windows 安装时启用了 AHCI,那么 Windows 就会检测到现代驱动器,并且会加载不同的驱动程序。

如果您将 Windows 启动驱动器放在此磁盘上并更改其模式,则 Windows 将尝试使用错误的驱动程序启动。它将找不到 c:(又名 $bootdrive),并且无法启动。

因此,重新安装可能是最简单的。

相关内容