基于NVMeSSD的动态中断聚合方法、装置和计算机设备与流程

文档序号:36724049发布日期:2024-01-16 12:29阅读:26来源:国知局
基于NVMe SSD的动态中断聚合方法、装置和计算机设备与流程

本发明涉及固态硬盘,特别是涉及一种基于nvme ssd的动态中断聚合方法、装置、计算机设备和存储介质。


背景技术:

1、ssd(固态硬盘)已经被广泛应用于各种场合,目前在pc市场,已经逐步替代传统的hdd(机械硬盘),从可靠性和性能方面为用户提供较好的体验。其中,nvme ssd是一种基于pcie总线的高速固态硬盘,具有更快的读写速度、更短的响应时间和更高的iops。nvme ssd非常适合需要高性能和大容量存储的应用程序,高速读写速度和低延迟时间使其非常适合于高负载的数据中心、云计算和企业级应用程序。

2、然而,在现有技术中,对nvme ssd进行中断处理通常为以下2种方案:1.开启中断聚合,同时设置聚合的时间和中断数量阈值,中断聚合达到阈值后上报1个中断。2.关闭中断聚合,1个cqe(completion queue entry,完成队列内存放的完成事件)上报1个中断。显然,上述两种方案并不能实现动态感知服务器侧的压力变化,也无法自动调整中断聚合方式,进而影响了服务器整体i/o性能表现。


技术实现思路

1、基于此,有必要针对上述技术问题,提供一种基于nvme ssd的动态中断聚合方法、装置、计算机设备和存储介质。

2、一种基于nvme ssd的动态中断聚合方法,所述方法包括:

3、nvme ssd获取主机下发的i/o命令并进行处理,待所述命令处理完成后将cqe发送到cq中;

4、记当前中断聚合数量加1,并且cqe对应的中断不直接上报;

5、判断当前cq中cqe数量是否超过预设的阈值;

6、若当前cq中cqe数量未超过预设的阈值,则直接上报中断同时将中断聚合数量清0;

7、若当前cq中cqe数量已经超过预设的阈值,则不上报中断。

8、在其中一个实施例中,所述方法还包括:

9、轮询中断聚合数量,定期检查是否有中断被聚合;

10、若存在有中断被聚合则进一步判断当前cq中cqe数量是否超过预设的阈值;

11、若当前cq中cqe数量未超过预设的阈值,则上报中断同时将中断聚合数量清0。

12、在其中一个实施例中,在所述轮询中断聚合数量,定期检查是否有中断被聚合的步骤还包括:

13、若没有中断被聚合则不上报中断。

14、在其中一个实施例中,在所述若存在有中断被聚合则进一步判断当前cq中cqe数量是否超过预设的阈值的步骤之后还包括:

15、若当前cq中cqe数量超过预设的阈值则不上报中断。

16、一种基于nvme ssd的动态中断聚合装置,所述装置包括:

17、命令处理模块,所述命令处理模块用于nvme ssd获取主机下发的i/o命令并进行处理,待所述命令处理完成后将cqe发送到cq中;

18、中断计数模块,所述终端计数模块用于记当前中断聚合数量加1,并且cqe对应的中断不直接上报;

19、阈值判断模块,所述阈值判断模块用于判断当前cq中cqe数量是否超过预设的阈值;

20、第一处理模块,所述第一处理模块用于若当前cq中cqe数量未超过预设的阈值,则直接上报中断同时将中断聚合数量清0;

21、第二处理模块,所述第二处理模块用于若当前cq中cqe数量已经超过预设的阈值,则不上报中断。

22、在其中一个实施例中,所述装置还包括轮询检查模块,所述轮询检查模块用于:

23、轮询中断聚合数量,定期检查是否有中断被聚合;

24、若存在有中断被聚合则进一步判断当前cq中cqe数量是否超过预设的阈值;

25、若当前cq中cqe数量未超过预设的阈值,则上报中断同时将中断聚合数量清0。

26、在其中一个实施例中,所述轮询检查模块还用于:

27、若没有中断被聚合则不上报中断。

28、在其中一个实施例中,所述轮询检查模块还用于:

29、若当前cq中cqe数量超过预设的阈值则不上报中断。

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

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

32、上述基于nvme ssd的动态中断聚合方法、装置、计算机设备和存储介质,通过nvmessd获取主机下发的i/o命令并进行处理,待所述命令处理完成后将cqe发送到cq中;记当前中断聚合数量加1,并且cqe对应的中断不直接上报;判断当前cq中cqe数量是否超过预设的阈值;若当前cq中cqe数量未超过预设的阈值,则直接上报中断同时将中断聚合数量清0;若当前cq中cqe数量已经超过预设的阈值,则不上报中断。本发明可以减少nvme ssd在服务器达到性能瓶颈后上报的中断数量,减轻主机处理中断的压力,从而提高服务器整体的i/o性能表现。



技术特征:

1.一种基于nvme ssd的动态中断聚合方法,所述方法包括:

2.根据权利要求1所述的基于nvme ssd的动态中断聚合方法,其特征在于,所述方法还包括:

3.根据权利要求2所述的基于nvme ssd的动态中断聚合方法,其特征在于,在所述轮询中断聚合数量,定期检查是否有中断被聚合的步骤还包括:

4.根据权利要求3所述的基于nvme ssd的动态中断聚合方法,其特征在于,在所述若存在有中断被聚合则进一步判断当前cq中cqe数量是否超过预设的阈值的步骤之后还包括:

5.一种基于nvme ssd的动态中断聚合装置,其特征在于,所述装置包括:

6.根据权利要求5所述的基于nvme ssd的动态中断聚合装置,其特征在于,所述装置还包括轮询检查模块,所述轮询检查模块用于:

7.根据权利要求6所述的基于nvme ssd的动态中断聚合装置,其特征在于,所述轮询检查模块还用于:

8.根据权利要求7所述的基于nvme ssd的动态中断聚合装置,其特征在于,所述轮询检查模块还用于:

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

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


技术总结
本申请涉及一种基于NVMe SSD的动态中断聚合方法、装置、计算机设备和存储介质,其中该方法包括:NVMe SSD获取主机下发的I/O命令并进行处理,待所述命令处理完成后将CQE发送到CQ中;记当前中断聚合数量加1,并且CQE对应的中断不直接上报;判断当前CQ中CQE数量是否超过预设的阈值;若当前CQ中CQE数量未超过预设的阈值,则直接上报中断同时将中断聚合数量清0;若当前CQ中CQE数量已经超过预设的阈值,则不上报中断。本发明可以减少NVMe SSD在服务器达到性能瓶颈后上报的中断数量,减轻主机处理中断的压力,从而提高服务器整体的I/O性能表现。

技术研发人员:高文华,梁绍宁,兰国节
受保护的技术使用者:成都芯忆联信息技术有限公司
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1