现在绝大多数的SSD都是支持TRIM功能的。TRIM能够使固态硬盘的性能得到保持,提升固态硬盘的寿命。它是SSD上的一个不可或缺的功能。开启TRIM的条件:系统-固件-驱动。系统:windows 7,windows 2008 R2,linux核心2.6.28以上。固件:SSD的厂商在固件中加入Trim算法指令。驱动:AHCI驱动。一般SSD在运用中是默认开启TRIM的。但也有个别主控并不是这样的。另外也有其他情况可能导致TRIM被关闭。大多数玩家都知道TRIM开启是必须的,但是也有少部分人认为TRIM没多大的意义。所以,今天我们通过手动开启和关闭TRIM来简单的看看TRIM的意义何在。
1.如何查看SSD TRIM的状态
以管理员身份运行CMD,输入fsutil behavior query disabledeletenotify,按ENTER执行命令。下行显示Disabledeletenotify=0表示TRIM为开启状态,disabledeletenotify=1表示,TRIM为关闭状态。
2.手动开启SSD TRIM的状态
如果你刚查询了TRIM状态,你可以按方向键,按向上,出现刚查询时输入的命令,然后把query改成set,Disabledeletenotify后空格再加上0。fsutil behavior set disabledeletenotify 0。
TRIM开启状态,SSD的速度测验。
3.手动关闭SSD TRIM的状态
fsutil behavior set disabledeletenotify 1。
为了简单的看一下TRIM对SSD性能的影响。我将TRIM关闭一天。
(TRIM关了马上又开的测验能看出什么差别?那些说TRIM意义不大的人就是这样测验的。)
然后再次测验SSD的速度。
通过,TRIM开启和不开启时SSD的速度对比。我们可以看出,TRIM开启或关闭,可能对SSD的读取速度影响不大。
但是却对SSD的写入影响巨大,SSD开启TIRM和不开启TRIM的连续写入速度整整相差近80MB/S,而4K随机写入也相差16MB/S。不开TRIM时SSD的写入速度整体下降近50%。
是否开启TRIM严重影响SSD的写入速度。
为什么TRIM会影响SSD的写入速度呢?
因为SSD的写入和HDD不一样。HDD的写入可以覆盖,而SSD的写入需要擦除数据后才能再写入。TRIM在空闲的时候,标记出无效的数据,交给GC(回收),也将空闲位置交给主控,这就减少了SSD写入数据的时间。
我们可以把SSD数据储存看作是一张大的表格。在这个表格里数据并非所有按顺序写入每个格子里的。大多数时候是在进行随机写入。SSD的这个“表格”杂乱无章的,并且里面还充斥着一些无效的数据(文件碎片)。这就使得SSD随着我们写入的增多,无效数据的增多,写入就变得越来越慢了。而我们的TRIM在写入之前,已经把无效数据清理了一遍,并将空闲位置交到主控手中,写入时条理清晰,就不用再花很多时间去寻找写入位置了。
最后,我们可以简单的这样说,TRIM大大减少了随机写入和连续写入的“等待时间”(去寻找写入空闲位置,去等待写入空闲位置的时间),使得连续写入和随机写入的效率大大提升了。