基于固态硬盘的重复写性能提升实现方法和装置与流程

文档序号:37000570发布日期:2024-02-09 12:44阅读:24来源:国知局
基于固态硬盘的重复写性能提升实现方法和装置与流程

本发明涉及固态硬盘,特别是涉及一种基于固态硬盘的重复写性能提升实现方法、装置、计算机设备和存储介质。


背景技术:

1、ssd(固态硬盘)已经被广泛应用于各种场合,目前在pc市场,已经逐步替代传统的hdd,从可靠性和性能方面为用户提供较好的体验。

2、目前,在现有的ssd方案中,当host发送一个io写指令,如果无资源不足等意外情况,一律按流程进行写操作,数据最后会落盘。然而,这种方案在写热度较高的lpa slice中会导致落盘的数据快速无效,不仅会在写入时浪费时间和资源,还会对盘片造成浪费。


技术实现思路

1、基于此,有必要针对上述技术问题,提供一种基于固态硬盘的重复写性能提升实现方法、装置、计算机设备和存储介质。

2、一种基于固态硬盘的重复写性能提升实现方法,所述方法包括:

3、在固态硬盘运行过程中,以lpa slice为粒度周期性地记录各组slice的io写命中次数;

4、在每个周期的末尾统计出io写命中次数最多的数个高热度lpaslice;

5、将接下来一个周期中,将命中高热度lpa slice的写命令进行缓存,将命中其他低热度lpa slice写flash;

6、在后续的新周期中,将产生的新的高热度lpa slice替换旧的高热度lpa slice,并将缓存中旧的高热度lpa slice的最新修改信息下刷到flash中。

7、在其中一个实施例中,所述在后续的新周期中,将产生的新的高热度lpa slice替换旧的高热度lpa slice,并将缓存中旧的高热度lpa slice的最新修改信息下刷到flash中的步骤还包括:

8、待新的周期出现后重新进行热度统计,统计出io写命中次数最多的数个新的高热度lpa slice。

9、在其中一个实施例中,所述在后续的新周期中,将产生的新的高热度lpa slice替换旧的高热度lpa slice,并将缓存中旧的高热度lpa slice的最新修改信息下刷到flash中的步骤之后还包括:

10、在下一个周期内,将命中新的高热度lpa slice的写操作进行缓存。

11、在其中一个实施例中,所述在每个周期的末尾统计出io写命中次数最多的数个高热度lpa slice的步骤还包括:

12、判断是否到达周期时间,若已经到达周期时间则统计出写命中次数最高的前n组lpa slice作为高热度lpa slice。

13、一种基于固态硬盘的重复写性能提升实现装置,所述装置包括:

14、记录模块,所述记录模块用于在固态硬盘运行过程中,以lpa slice为粒度周期性地记录各组slice的io写命中次数;

15、统计模块,所述统计模块用于在每个周期的末尾统计出io写命中次数最多的数个高热度lpa slice;

16、命令处理模块,所述命令处理模块用于将接下来一个周期中,将命中高热度lpaslice的写命令进行缓存,将命中其他低热度lpa slice写flash;

17、替换模块,所述替换模块用于在后续的新周期中,将产生的新的高热度lpa slice替换旧的高热度lpa slice;

18、下刷处理模块,所述下刷处理模块用于将缓存中旧的高热度lpa slice的最新修改信息下刷到flash中。

19、在其中一个实施例中,所述装置还包括重新统计模块,所述重新统计模块用于:

20、待新的周期出现后重新进行热度统计,统计出io写命中次数最多的数个新的高热度lpa slice。

21、在其中一个实施例中,所述命令处理模块还用于:

22、在下一个周期内,将命中新的高热度lpa slice的写操作进行缓存。

23、在其中一个实施例中,所述统计模块还用于:

24、判断是否到达周期时间,若已经到达周期时间则统计出写命中次数最高的前n组lpa slice作为高热度lpa slice。

25、一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意一项方法的步骤。

26、一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项方法的步骤。

27、上述基于固态硬盘的重复写性能提升实现方法、装置、计算机设备和存储介质,通过在固态硬盘运行过程中,以lpa slice为粒度周期性地记录各组slice的io写命中次数;在每个周期的末尾统计出io写命中次数最多的数个高热度lpa slice;将接下来一个周期中,将命中高热度lpaslice的写命令进行缓存,将命中其他低热度lpa slice写flash;在后续的新周期中,将产生的新的高热度lpa slice替换旧的高热度lpa slice,并将缓存中旧的高热度lpa slice的最新修改信息下刷到flash中。本发明以lpa slice为粒度检测用户数据的写热度,周期性的将写热度靠前的lpa slice的写操作缓存到buffer中,可以有效地减少写盘片的频率,优化了重复写操作,避免了盘片资源浪费。



技术特征:

1.一种基于固态硬盘的重复写性能提升实现方法,所述方法包括:

2.根据权利要求1所述的基于固态硬盘的重复写性能提升实现方法,其特征在于,所述在后续的新周期中,将产生的新的高热度lpa slice替换旧的高热度lpa slice,并将缓存中旧的高热度lpa slice的最新修改信息下刷到flash中的步骤还包括:

3.根据权利要求2所述的基于固态硬盘的重复写性能提升实现方法,其特征在于,所述在后续的新周期中,将产生的新的高热度lpa slice替换旧的高热度lpa slice,并将缓存中旧的高热度lpa slice的最新修改信息下刷到flash中的步骤之后还包括:

4.根据权利要求1-3任一项所述的基于固态硬盘的重复写性能提升实现方法,其特征在于,所述在每个周期的末尾统计出io写命中次数最多的数个高热度lpa slice的步骤还包括:

5.一种基于固态硬盘的重复写性能提升实现装置,其特征在于,所述装置包括:

6.根据权利要求5所述的基于固态硬盘的重复写性能提升实现装置,其特征在于,所述装置还包括重新统计模块,所述重新统计模块用于:

7.根据权利要求6所述的基于固态硬盘的重复写性能提升实现装置,其特征在于,所述命令处理模块还用于:

8.根据权利要求5-7任一项所述的基于固态硬盘的重复写性能提升实现装置,其特征在于,所述统计模块还用于:

9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4中任一项所述方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。


技术总结
本申请涉及一种基于固态硬盘的重复写性能提升实现方法、装置、计算机设备和存储介质,其中该方法包括:在固态硬盘运行过程中,以LPA Slice为粒度周期性地记录各组Slice的IO写命中次数;在每个周期的末尾统计出IO写命中次数最多的数个高热度LPA Slice;将接下来一个周期中,将命中高热度LPA Slice的写命令进行缓存,将命中其他低热度LPA Slice写Flash;在后续的新周期中,将产生的新的高热度LPA Slice替换旧的高热度LPA Slice,并将缓存中旧的高热度LPA Slice的最新修改信息下刷到Flash中。本发明可以有效地减少写盘片的频率,优化了重复写操作,避免了盘片资源浪费。

技术研发人员:杨文华,张珂,郑擘
受保护的技术使用者:成都芯忆联信息技术有限公司
技术研发日:
技术公布日:2024/2/8
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1