Effects of Garbage Collection 和 TRIM on 固态硬盘 Performance

2018年12月13日,星期四 通过 迈克尔·尼西奇

全闪存–基于存储的设备(包括SSD)在处理以前删除的数据方面具有独特性。在Windows或任何操作系统中删除文件后,该文件仍然存在于存储设备上,无论是HDD还是SSD。就本文档而言,我们将调用操作系统删除但仍驻留在存储设备上的数据“Garbage Data”。在删除文件的情况下,操作系统假定该文件所在的地址现在为空,可以在需要时再次写入。当操作系统发出命令将数据写入到先前包含数据的位置时,HDD会毫无问题地覆盖垃圾数据。对于所有基于NAND闪存的存储(USB闪存驱动器,SD卡,SSD等),这是不可能的。 固态硬盘写入前需要先擦除存储单元的内容。回收先前删除的数据的过程称为垃圾回收。垃圾收集过程和策略是在SSD控制器固件中编程的,并且在驱动器制造商之间有所不同。

Drives that employ an efficient 垃圾收集ion process display good performance out of the box but also months later whereas drives that don’t, tend to slow down over time. The slow down stems from the controller on the 固态硬盘 having to deal with recycling all the blocks with 垃圾数据.

当微软发布Windows时®7它被吹捧为第一个“SSD–aware OS” 和 upon recognizing an 固态硬盘 installed in the system, the OS will disable some features related to improving 硬碟performance that is not needed 通过 the 固态硬盘. It also enables one 固态硬盘 specific optimization, called the TRIM command. Simply explained, the TRIM command enables the OS 和 the 固态硬盘 to now communicate where the 垃圾数据 is 和 mark it for deletion.

在操作系统中启用了TRIM的情况下,删除文件后,操作系统现在将通知驱动器找到方便的时间来清理文件所在的地址。要启用此功能,SSD必须支持TRIM命令。请注意,所有金士顿SSD均支持TRIM命令。 TRIM命令是一项有效的功能,可随着时间的推移为SSD提供一致的性能,但确实有局限性。这取决于能否通过SATA接口与驱动器进行通信。如果将SSD配置为RAID阵列,连接至HBA控制器或位于主机PC之外的NAS / SAN配置中,则TRIM命令将不会到达SSD。

On that note, recent data taken from our enterprise customers show that Windows XP is still the dominant OS used in their environments. With that in mind, we set out to test the effectiveness of Garbage Collection vs. TRIM 和 how it affects 固态硬盘 performance.

To test this scenario, we wrote a utility that completely fills up the 固态硬盘 with data, erases the drive 和 then fills it up again, measuring the delta in time between the first 填and the second fill. By completely filling up the drive, deleting everything 和 then immediately filling it up again, we are forcing the controller on the 固态硬盘 to “garbage collect”整个驱动器,同时将新数据写入驱动器。

We configured the 固态硬盘 as the D: drive connected to a SATA 2 port in a Windows7 system 和 ran this “fill – delete – fill”在先打开然后关闭TRIM命令的情况下进行测试,以模拟所有非TRIM操作系统’如XP,Vista,Mac OSX。此外,我们’ve run another test with 固态硬盘s configured in a way, that the TRIM command cannot reach the drives (RAID, SAN). Finally we ran the PCMark

存储基准测试,可在此测试期间测试总体驱动器性能。在所有测试中,我们都包括一个5400RPM HDD用作比较点。请参阅下面的测试结果。

请注意,在每个驱动器上的第一次运行都是最快的填充时间,因为我们首先安全擦除了该驱动器,以模拟新的开箱即用性能。在这些测试中,在打开TRIM命令的情况下,KC100和V + 100驱动器均显示稳定且一致的性能,运行1-3,而在关闭TRIM的R4-R6中,它们继续显示相同的性能。在TRIM处于打开状态时,SSD1,SSD2和SSD3均表现出一致的性能,但请注意,在运行4开始时,SSD 1和2需要较长的时间才能完成我们的任务。“fill-delete-fill”测试和SSD3由于未知原因而显示出非常不一致的性能。请记住,我们在R3的末尾关闭了TRIM,这意味着驱动器不再具有TRIM命令来标记垃圾数据的位置。驱动器’ “垃圾回收实施”正在运行4至6(R4-R6)中经过严格测试。测试运行R4–R6代表非Trim操作系统中的驱动器性能’如Windows XP,Vista和MAC OSX。

 

在安全擦除之后,立即运行PCMark Storage Suite,以获得可能的最高分,在TRIM仍然打开的情况下运行3之后,然后在TRIM关闭的情况下运行6之后,才运行PCMark Storage Suite。如图所示,无论启用还是未启用TRIM命令,两个金士顿驱动器都可以继续正常工作。与R1得分相比,总体得分略有下降,但同样是在安全擦除之后,当驱动器完全空无任何垃圾数据时,该得分得以下降。从R3到R6,SSD1、2和3的得分均显着下降。我们听到的有关SSD的一则评论与快速性能无关,并不是它们是全新的,而是在持续使用后它们看起来如何变慢。该测试表明,在某种程度上,一旦将SSD中的所有NAND都写入一次,控制器将被强制回收垃圾数据以执行任何新的写入,性能良好的驱动器以及性能稳定的驱动器。’放慢脚步。需要注意的重要一点是,在TRIM关闭的情况下,R6上的所有这些分数仍远高于该存储基准测试中大约2600的典型HDD分数。

 

结论

 

全NAND闪存–基于B的设备必须在写入新数据之前通过擦除存储单元的内容来处理先前删除的数据。垃圾回收和TRIM命令都是SSD回收的有效方法“garbage data”. The TRIM command does have some limitations mentioned above, most notably not being able to communicate with 固态硬盘s in a RAID array 和 lack of its implementation in older Operating Systems. While an 固态硬盘 with an effective Garbage Collection process will recycle the 垃圾数据 without sacrificing performance in any operating environment. Kingston KC100 和 V+100 both employ very efficient 垃圾收集ion strategies but not all 固态硬盘s. In our testing, we saw a few 固态硬盘s that slowed down once the TRIM command was turned off. When considering a move to 固态硬盘 technology, IT specialists 和 purchasers should remember to factor in what the host OS will be 和 what configuration the drives will be in.

 

Note that the used Kingston 固态硬盘s in this test 固态硬盘now KC100 以及 固态硬盘now V+100 are older products 和 not available for purchase anymore!!! However, the results from this 2011 test show the general effects of 垃圾收集ion 和 trim on 固态硬盘 performance.

If you need an 固态硬盘 recovery, 点击这里 有关Ontrack专家数据恢复服务的更多信息。