一种虚拟化IO性能优化方法及系统与流程

文档序号:12596577阅读:来源:国知局

技术特征:

1.一种基于virtio_blk的虚拟化IO性能优化方法,其特征在于,包括:

接收到bio请求时,通过BASE_BIO模块将bio请求存入目标队列;

当所述目标队列保存的bio请求数目大于预定阈值时,检测所述目标队列保存的bio请求是否存在相邻请求;

若存在,则将相邻请求封装为virtblk_requet,并执行kick操作;若不存在,则将每个bio请求封装为对应的virtblk_request,并执行kick操作。

2.根据权利要求1所述的虚拟化IO性能优化方法,其特征在于,检测到所述目标队列保存的bio请求存在相邻请求之后,还包括:

按照预定规则,将相邻请求动态移动到所述目标队列的前端。

3.根据权利要求2所述的虚拟化IO性能优化方法,其特征在于,所述按照预定规则,将相邻请求动态移动到所述目标队列的前端,包括:

根据检测到的每个相邻请求的请求数目,设定每个相邻请求的优先级,并根据每个相邻请求的优先级,动态调整每个相邻请求在所述目标队列的保存位置。

4.根据权利要求1所述的虚拟化IO性能优化方法,其特征在于,检测到所述目标队列保存的bio请求不存在相邻请求之后,还包括:

设置与每个bio请求对应的计时器;

若检测到计时器超时,则将与超时的计数器对应的bio请求的处理优先级设置为最高。

5.根据权利要求1-4中任意一项所述的虚拟化IO性能优化方法,其特征在于,检测所述目标队列保存的bio请求是否存在相邻请求,包括:

检测所述目标队列保存的bio请求是否存在位于同一扇区、同一磁道、同一柱面或者同一磁盘中的一者的bio请求;

若存在,则将位于同一扇区、同一磁道、同一柱面或者同一磁盘中的bio请求作为一组相邻请求。

6.一种基于virtio_blk的虚拟化IO性能优化系统,其特征在于,包括:

Bio请求存入模块,用于接收到bio请求时,通过BASE_BIO模块将bio请求存入目标队列;

相邻请求检测模块,用于当所述目标队列保存的bio请求数目大于预定阈值时,检测所述目标队列保存的bio请求是否存在相邻请求;若存在,则触发第一封装模块;若不存在,则触发第二封装模块;

所述第一封装模块,用于将相邻请求封装为virtblk_requet;

所述第二封装模块,用于将每个bio请求封装为对应的virtblk_request;

执行模块,用于对封装后的virtblk_requet执行kick操作。

7.根据权利要求6所述的虚拟化IO性能优化系统,其特征在于,还包括:

动态调整模块,用于按照预定规则,将相邻请求动态移动到所述目标队列的前端。

8.根据权利要求7所述的虚拟化IO性能优化系统,其特征在于,

所述动态调整模块根据检测到的每个相邻请求的请求数目,设定每个相邻请求的优先级,并根据每个相邻请求的优先级,动态调整每个相邻请求在所述目标队列的保存位置。

9.根据权利要求6所述的虚拟化IO性能优化系统,其特征在于,还包括:

计时器设置模块,用于设置与每个bio请求对应的计时器;

处理优先级调整模块,用于检测到计时器超时,则将与超时的计数器对应的bio请求的处理优先级设置为最高。

10.根据权利要求6-9中任意一项所述的虚拟化IO性能优化系统,其特征在于,

所述相邻请求检测模块通过检测所述目标队列保存的bio请求是否存在位于同一扇区、同一磁道、同一柱面或者同一磁盘中的一者的bio请求;若存在,则将位于同一扇区、同一磁道、同一柱面或者同一磁盘中的bio请求作为一组相邻请求。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1