[发明专利]一种基于反馈和公平队列的服务质量感知的缓存调度方法有效
申请号: | 202111412833.5 | 申请日: | 2021-11-25 |
公开(公告)号: | CN113835868B | 公开(公告)日: | 2022-04-15 |
发明(设计)人: | 李勇;曾令仿;陈光 | 申请(专利权)人: | 之江实验室 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
代理公司: | 杭州浙科专利事务所(普通合伙) 33213 | 代理人: | 孙孟辉 |
地址: | 311100 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 反馈 公平 队列 服务质量 感知 缓存 调度 方法 | ||
1.一种基于反馈和公平队列的服务质量感知的缓存调度方法,其特征在于,
采用服务质量衡量策略将不同类似的应用的服务质量指标化,具体包括:
步骤101,根据用户指定应用类型或者根据其负载特征推测出具体的应用类型,用不同的服务质量计算方法计算其服务目标值,如果是低延迟应用,则进入步骤102,如果是高带宽应用,则进入步骤104;
步骤102,低延迟应用的数据请求的访问延迟由等待时间和服务时间两个部分组成,采用经典的M/G/1模型对数据请求的等待队列进行建模,将数据请求的平均服务时间设置为
,其中λ为请求到达率,E表示平均值;
步骤103,再加上请求的平均服务时间,保证该应用的延迟服务质量目标必须满足公式;
步骤104,带宽型应用的性能受缓存命中率的影响,一个数据请求的平均服务时间Tu用公式表示,其中h为缓存命中率,Tcache是缓存命中时的服务时间,Tdisk是缓存没有命中需要访问磁盘的服务时间;
步骤105,再根据请求大小Rlen,获得保证应用的带宽服务质量目标必须满足公式
使用开始时间公平列队设置不同的开始服务时间来控制不同应用请求的服务顺序,具体包括:
步骤201,对每个到达缓存的请求计算开始服务时间,并将该开始服务时间作为其服务顺序,请求根据开始服务时间从短到长的排列被放置到队列的前面位置,并且优先服务;
步骤202,对于延迟型应用,根据请求的到达时间和延迟服务质量目标计算其开始服务时间,具体公式如下:
,其中starttime表示请求的开始服务时间,arrivaltime表示请求的到达时间;
步骤203,对于带宽型应用,根据请求的到达时间、平均请求大小和带宽服务质量目标计算开始服务时间,具体公式如下:
,其中starttime表示请求的开始服务时间,arrivaltime表示请求的到达时间;
步骤204,根据应用进程的序号轮流将应用的请求放到不同的队列中,一个应用的所有请求集中存放到一个队列中,所有队列轮流完,队列再重头开始选择;
步骤205,根据每个队列中所有应用的服务质量目标总和,为每个队列计算一个权值,并根据权值大小决定每个队列的服务时间间隔,权值越大,服务时间间隔越小;
步骤206,每个队列启动一个工作线程,所有请求在队列中按照开始服务时间排序,工作线程每隔一小段时间挑选开始时间最小的请求输出到缓存管理模块,如果前后请求属于同一个应用,并且存储地址连续,则将所述请求一并取出;
利用基于反馈的缓存分区管理模块将所有逻辑分区划分为两种类型:提供分区和接收分区,并且调整两种类型逻辑分区之间的缓存分配;
通过缓存块分配管理模块平衡整体性能和保证服务质量,具体包括:
步骤301,当一个请求发生缓存缺失时,首先判断应用对应的逻辑分区的缓存大小是否等于预期的缓存空间,即在上一个周期根据其服务质量目标计算得到的逻辑分区大小;
步骤302,如果该逻辑分区已经达到预期的缓存空间,那么将使用最近缓存替换策略选择该逻辑分区中的一个缓存块淘汰掉,用于新请求的缓存;
步骤303,如果没有达到预期的缓存空间,则选择一个提供分区作为淘汰分区,并使用最近缓存替换策略选择该逻辑分区中的一个缓存块淘汰掉,并重新分配给新请求所在的逻辑分区;
步骤304,采用缓存命中次数来表示缓存增减造成的性能变化,记录每个周期缓存段的命中次数,在缓存分配时,只有在接收分区的末尾缓存段的当前缓存命中次数超过指定的阈值之后,才能执行分配;
以及缓存淘汰策略监控模块监控每个逻辑分区的当前缓存淘汰策略效率,并根据应用的负载特征变化进行动态调整,具体包括:
步骤401,在每个周期,记录逻辑分区当前的分配缓存大小,以及其应用的服务质量保证情况;
步骤402,在每个周期调整缓存分配时,如果该逻辑分区的缓存大小超过平均值,并且服务质量没有满足应用设定的目标值,则启动缓存淘汰策略效率监控,如果满足服务质量目标,则结束,等下一个周期结束时再判断;
步骤403,从逻辑分区中划出10%的缓存空间即至少一个缓存段来独立管理,并且从逻辑分区中划出10%的缓存空间使用另一种缓存淘汰算法,根据其和逻辑分区的缓存空间大小比例设置采样系数δ,在下一个周期,采样一部分请求放入从逻辑分区中划出10%的缓存空间,并用新的缓存淘汰算法管理,被采样的请求在原来的逻辑分区中有一个对应的占位符;
步骤404,在当前周期结束的时候,记住当前缓存淘汰算法的效益,并且比较逻辑分区和独立缓存之间的效益,如果独立缓存的效益更高,则将逻辑分区的缓存淘汰策略切换为新的缓存淘汰算法,独立缓存回收到逻辑分区末尾,并结束监控,否则,继续选择新的缓存淘汰算法,继续步骤403;
使用缓存压缩监控模块捕获局部性较差的应用,即存在缓存命中率长尾现象的应用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于之江实验室,未经之江实验室许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111412833.5/1.html,转载请声明来源钻瓜专利网。