PCEVA,PC绝对领域,探寻真正的电脑知识
  • 内容展现
  • 最新评论
镁光C300 64G测试
2010-11-4 01:03| 发布者: neeyuese| 查看: 40186| 评论: 0
摘要: 产品型号: Crucial RealSSD C300 64G 2.5-Inch SATA NAND Flash SSD 产品接口: SATA 6 Gb/s interface 产品标准和技术: 支持512B字节扇区工业标准,支持热插拔,支持NCQ 32深度,支持ATA-8规范,支持Secure erase ...
SSD技术解释:GC(Garbage collection) 垃圾回收

GC(Garbage collection) 垃圾回收---NAND颗粒“清洁工”



把Block X和Block Y里的”有效“页复制到Block N里,然后擦除Block X和Y作为备用的”空白NAND“。

由前面的磨损平衡机制知道,磨损平衡的执行需要有“空白NAND”来写入更新后的数据。当可以直接写入数据的备用”空白NAND“块数量低于一个阀值(厂商在主控固件里设置,一般是全盘NAND容量写满后),那么SSD主控制器就会把那些包含”无效“数据的块里的所有“有效”数据合并起来到新的“空白 NAND”块,并删除”无效"数据块来增加备用“空白NAND”块数量。这个操作就是SSD的垃圾回收机制。

闲置垃圾回收:很明显在进行垃圾回收时候会消耗大量的主控处理能力和带宽造成处理用户请求的性能下降,SSD主控制器可以设置在系统闲置时候做“预先”垃圾回收(提前垃圾回收操作,保证一定数量的"空白NAND"),让SSD在运行时候能够保持较高的性能。闲置垃圾回收的缺点是会增加额外的"写入放大“,因为你刚刚垃圾回收的”有效“数据,也许马上就会被更新后的数据替代而变成为”无效“数据,这样就造成之前的垃圾回收做无用功了。

被动垃圾回收:每个SSD都支持的技术,对SSD主控制器的性能提出了要求,在垃圾回收操作消耗带宽和处理能力的同时处理用户操作数据,如果没有足够强劲的主控制器性能则会造成明显的速度下降。这就是为啥很多SSD在全盘写满一次后会出现性能下降的道理,因为要想继续写入数据就必须要边垃圾回收边做写入。

简单点来说:GC的本质是把包含"无效“页和”有效“页的块中的“有效”页复制到新的只包含”有效“页的块,擦除旧的“无效”页占用的块,之后这个被”回收“的块就能被用来写入新数据(空白NAND)。而闲置GC,就是提前做GC,让"空白NAND"更多,这个行为是固件“主动”去做的。Trim能直接产生“无效”页,没有Trim的时候,对SSD主控制起来说,被更新的数据,旧数据就是“无效”的。应该说GC是每个SSD的必须要有的基本功能,根本不能算是什么需要特别提出来说的功能,每次看到厂商宣称支持GC,我都觉得很可笑。除非他们还在使用U盘时代的算法,每写一个页,都要写整个块,那样就不需要GC了,但是会造成任何时候都一样的烂性能。镁光C300同时支持被动垃圾回收(不支持不行)和闲置垃圾回收。SSD的Over-Provision容量直接影响垃圾回收的效率。

收藏 邀请
0
本文版权归 PCEVA,PC绝对领域,探寻真正的电脑知识 原作者所有 转载请注明出处

最新评论

热门评论
    热门评论
      返回顶部