[发明专利]一种优化触发机制的SSD垃圾回收方法及固态硬盘在审
申请号: | 201810209561.0 | 申请日: | 2018-03-14 |
公开(公告)号: | CN108595112A | 公开(公告)日: | 2018-09-28 |
发明(设计)人: | 肖锐 | 申请(专利权)人: | 深圳忆联信息系统有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 广东广和律师事务所 44298 | 代理人: | 董红海 |
地址: | 518057 广东省深圳市南山区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 中断 垃圾回收 触发 触发机制 固态硬盘 空闲空间 两级 大小设置 读写请求 互不干扰 优化 消耗 赋予 保证 | ||
本发明公开了一种优化触发机制的SSD垃圾回收方法及固态硬盘,其特征在于根据SSD空闲空间的大小设置两级阈值应对GC操作不同的紧迫程度:设置不可中断阈值H和可中断阈值T;当SSD空闲空间比例FP小于H时,立刻触发GC,且不可中断;当FP介于H和T之间时,触发可中断GC;当FP高于T时,不触发GC;不可中断阈值H和可中断阈值T按如下方式计算确定:H=aE+b(1‑Vp);T=AE+B(1‑Vp)+cIp。根据不同的空间消耗,设置两级阈值,赋予垃圾回收操作不同的紧迫程度;为两种不同GC请求和正常读写请求设置优先级,保证三种请求互不干扰。
技术领域
本发明涉及存储技术领域,尤其涉及一种一种优化触发机制的SSD垃圾回收方法及固态硬盘。
背景技术
由于NAND flash的固有特性,在program之前需要进行erase,而且erase操作以block为单位进行,SSD使用过程中会产生碎片页,需要通过垃圾回收的方式回收失效页。然而垃圾回收机制会降低SSD的性能,同时缩减SSD的寿命。特别是SSD快写满时会频繁触发垃圾回收机制GC,严重降低SSD的性能。目前的GC机制通过设置较低的空闲空间阈值来作为触发条件,这会导致使用后期垃圾回收的频繁触发,严重影响性能。
图1是当前使用的GC流程示意图,主机文件系统通过闪存转换层FTL(Flashtranslation layer)对SSD进行访问,FTL包括缓存管理模块、地址映射模块和垃圾回收GC模块,FTL通过存储设备驱动层NFC对NAND Flash的物理存储空间进行访问。NAND Flash颗粒具有写前擦除的特性,这样导致大量碎片化的无效页,为保证SSD的正常使用,需要对无效页进行垃圾回收操作,即擦除选定的目标快以供用户再次使用。由于NAND flash的读写颗粒度(以page为单位)和擦除颗粒度(以block为单位)不一样,在擦除一个block之前,需要先将有效数据搬移到新block。一次完整的GC操作包括三个步骤:1、选择需要回收的失效目标块;2、迁移目标块中的数据到其他块中;3、擦除目标块。什么时候触发GC是尤为重要。
图2是现有垃圾回收触发机制流程图,一般只设有一级阈值,通过动态调整阈值来控制GC触发时间。如当写请求A到达时,获取有效页和无效页的比例,判断有效页和无效页的比例是否大于预先设定的阀值,阀值可以动态的设定,如果大于则触发GC操作,一旦触发GC,将无法中断GC,这样势必影响SSD正常的读写请求时延,影响SSD性能。
发明内容
针对以上缺陷,本发明目的在于如何降低垃圾回收对主机响应的影响。
为了实现上述目的,本发明提供了一种优化触发机制的SSD垃圾回收方法,其特征在于根据SSD空闲空间的大小设置两级阈值应对GC操作不同的紧迫程度:设置不可中断阈值H和可中断阈值T;当SSD空闲空间比例FP小于H时,立刻触发GC,且不可中断;当FP介于H和T之间时,触发可中断GC;当FP高于T时,不触发GC;不可中断阈值H和可中断阈值T按如下方式计算确定:
H=aE+b(1-Vp);
T=AE+B(1-Vp)+c Ip;
其中,E表示SSD预留空间比例,由SSD厂商设定;Vp是有效页比例;Ip是无效页比例;a、b、c、A、B均为权值系数,a取0.3~0.5,b取0.1~0.3,A取0.5~0.7,B取0.1~0.4,c取0.1~0.3,且0<H<T<1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳忆联信息系统有限公司,未经深圳忆联信息系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810209561.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种提升固态硬盘性能的方法及固态硬盘
- 下一篇:一种分区调整的方法及终端