TRIM 在 NVMe SSD 上需要多长时间 / TRIM 应用程序和优化驱动器之间的区别

TRIM 在 NVMe SSD 上需要多长时间 / TRIM 应用程序和优化驱动器之间的区别

我已使用用于 WD BLACK SSD 的程序将 TRIM 设置为每周执行一次:

WD 黑色工具

这个计划应该没问题,因为我实际上并不经常写入驱动器,并且我读到一些 I/O 或 OS 操作仍然会写入,所以这应该是个好主意。

我还想知道 TRIM 操作是否需要很长时间,我无法在后台看到它,但我假设完成该操作需要不到半小时?

我也看到过其他帖子,其中展示人们利用优化和碎片整理工具来使用“TRIM”,但我相信它所做的只是碎片整理,而不是 SSD 上的 TRIM。 胜利优化

要确认我使用的 WD 应用程序使用 TRIM 就是我所需要的,并且优化工具仅对 SSD 进行碎片整理而不是 TRIM?

答案1

管理工具、碎片整理和优化将优化您的 SSD 驱动器并同时执行 TRIM。

Windows 不会对 SSD 驱动器进行碎片整理,您也不应该尝试这样做。Windows 应用程序会做正确的事。

您只需要优化应用程序并执行 TRIM。

时间:

笔记本电脑:1 TB NVMe SSD 驱动器:修剪时间远低于 10 分钟,尽管我从未停下来测量过。

台式机:2 x 2 TB SATA SSD 驱动器:每个驱动器的修剪时间也在 10 分钟以下。

TRIM 非常快,应该安排至少每月运行一次。

以这种方式运行 TRIM 不会造成任何损害或后果。

答案2

TRIM 操作几乎会立即完成。它只是操作系统通知驱动器控制器哪些空间是“空闲的”,可以重新放回要擦除的空块池中。

几乎不可能知道擦除块需要多长时间,因为这完全取决于控制器、释放了多少块以及驱动器的使用情况。操作系统还可能在删除文件时提交 TRIM 命令,并使用主“优化”来捕获其他所有内容,因此一开始可能有很多东西需要擦除,也可能没有。

控制器将尝试利用空闲时间来擦除块。“空闲”是一个模糊的分类,但只要您不以全速持续读取或写入,那么相关块很可能会在至少几分钟到几小时内被擦除。

Windows 内置磁盘“优化驱动器”工具确实会发出 TRIM 命令。如果它正在对驱动器进行碎片整理(这在 SSD 上完全没有意义),那么它会显示“碎片整理”而不是“优化”。

答案3

TRIM 不是一个操作,而是一个命令通知驱动器有关操作系统不再需要的 LBA 块。换句话说,它有点像“告诉”驱动器有关它刚刚删除的存储在 LBA 12048 - LBA 14077 中的文件的信息。

各种协议有不同的名称和命令(ATA,NVMe,SD 卡),但它们本质上都做同一件事:告诉驱动器操作系统不再需要的扇区。

一般来说,当驱动器收到 TRIM 命令时,它会“取消映射”那些被操作系统丢弃的 LBA 地址,这几乎可以立即完成,因为它只需要编辑转换表。对于 SSD 来说,了解这些内容是有益的,这样它就可以整合它们并擦除它们(在空闲时间和作为垃圾收集的一部分)。

如果尝试读取未映射的扇区,大多数情况下 SSD 控制器只会返回零而不读取扇区,这解释了为什么恢复 SSD 驱动器上已删除的文件几乎是不可能的(尽管特定情况可能会阻止 TRIM 执行或被驱动器处理)。

Windows 现在指的是优化,不再是碎片整理。虽然碎片仍然发生在文件系统级别,但它对 SSD 驱动器的性能没有影响,但它会影响文件的可恢复性。

尽管我认为 Windows 驱动器优化仍然执行有限的碎片整理,但它也会 TRIM 未使用的群集空间。此外,Windows 还会在文件删除后立即发送 TRIM 命令(如果启用了操作系统级别的 TRIM)。

相关内容