我们不但可以亡羊补牢
更擅长未雨绸缪

关注我们

您的位置: 主页 > 支持与下载 > IT知识库 >
IT知识库

【信诺IT小知识】SSD为什么越用越慢?
时间:2019-05-06 作者:xnit 点击:

SSD固态硬盘越用越慢,这种现象是普遍存在的。

为什么SSD固态硬盘会越用越慢呢?

要解决SSD速度慢问题,亲们先得知道为什么SSD会降速。虽然SSD的降速原因不外乎那么几种,但不同类型的产品还是各有各的问题,小诺就为亲们分别来说一说吧。
我们先来看看SSD固态硬盘的写入方式。


SSD固态硬盘不像HDD机械硬盘,它无法覆盖写入。在刚装上SSD固态硬盘时,SSD固态硬盘速度飞快,是因为它可以随意的按顺序写入。而用得久了,SSD固态硬盘就需要GC(垃圾回收),在擦除垃圾后的空闲位置才能够被重新写入新的数据。

SSD固态硬盘储存。红色代表垃圾,绿色代表空闲区域,黄色代表有效文件。 从上图我们也可以看出,SSD固态硬盘的储存,不是说,空闲区域被分在一边,存储的有效文件分在另外一边。而是大家都在一起。根据系统的反馈,TRIM标识SSD固态硬盘里的有效,或者无效。然后TRIM把需清理的信息和指令发送给GC(垃圾回收)去执行。

在SSD固态硬盘中最小的读写单位为1page,即4KB。而GC(垃圾回收)擦除的最小单位是,1block,1block=256page。所以GC需要把这些散布各处的垃圾集中起来,擦除。而我们这里也看出GC(垃圾回收)的工作负荷是蛮大的。写入是吃完就撂碗,GC还得收拾碗筷,洗刷刷。 前面我们讲了SSD固态硬盘的写入必须要经历两步,GC擦除和写入。所以随着SSD使用时间的延长,写入量的增多,GC(垃圾回收)的工作量越大,读写速度就越慢了。这是SSD的管理机制隐藏问题。P.S.要想知道SSD是否开启了TRIM功能,可以在命令行窗口输入“fsutil behavior QUERY DisableDeleteNotify”并回车。如果系统提示“DisableDeleteNotify = 0”,就说明Trim指令已启用。如果显示为“DisableDeleteNotify = 1”,即Trim指令未启用,那么在管理员模式下,输入“fsutil behavior set disabledeletenotify 0”并回车,就可以开启TRIM功能了。
 
SLC缓存管理
 
亲们如果仔细观察包装,就会发现目前的SSD不再标注自己使用了多少缓存,这很可能说明它们使用了以SLC为缓存的设计。这些SSD通常使用TLC、QLC闪存,因为存储结构比较复杂,操作耗时,所以数据的实际存入速度很慢,所以会先将数据存入延迟极小的SLC中,然后在后台逐步存入主存储空间。
 
那么为什么这些SSD会选择这种方式,而且不标出SLC缓存的容量呢?经小诺暗搓搓的考证,发现这是因为它们使用了动态SLC容量,直接在未使用的存储空间中划出一部分,只存储一位电荷,于是就“模拟”成了SLC缓存。
那么为什么SSD厂商会这样做呢?因为这样的设计让SSD成本大幅下降,但也使其在连续存入大量数据、存储比例较大的时候,都会出现耗尽SLC缓存,存储速度“断崖”式下跌的问题,这时候的速度甚至还不如未开启SLC缓存哦。
小诺贴心提示:延缓SSD降速最简单的方式就是尽量不要一次性拷贝过多数据,并且使用更大容量的型号,同时给SSD预留一定的储存空间。
 
主控过热问题
 

虽然现在SSD闪存和主控芯片的制造工艺下,已经很少出现烫手的产品了。不过一些高速SSD使用的主控芯片在长时间高速使用时,发热量还是比较大的。与CPU一样,当温度过高的时候主控芯片也会自动降速,此时SSD的读写速度都会明显下降哦。关于这点,小诺建议亲们可以购买散热片,目前很多中高端SSD都提供散热片选购哦。
 
另一方面,写入放大,增加了写入任务量,也是让SSD变慢的主要原因。
总结以上原因呢,小诺觉得亲们可能会想:SSD降速的原因根本就是它自身读写方式和结构的问题嘛。其实还有很多需要亲们注意影响SSD降速的事项,小诺下期再给亲们分析。