Linux I/O调度层的预期调度算法AS(anticipatory scheduling)对所有的负载分配相同的预期周期,如果等待的I/O请求没有及时到达,将会带来额外的时延。针对AS算法的不足,提出了一种基于负载特性和服务时间评估改进的AS算法(WPCAS,workload characteristic and service time evluation AS)。WPCAS分为进程归类模块(PC)和服务时间评估模块(STE)两部分。PC模块根据负载特性为每类进程指定不同的预期周期。STE模块根据服务时间决定是否预期下一个请求。通过对比实验表明,WPCAS在吞吐量、预期成功平均等待时延和伪空闲周期方面都优越于95%-Heuristic和AS算法。
Anticipatory scheduling(AS) of Linux I/O schedule layer assigns fixed anticipation period length to each process. It will introduce extra delay if I/O request does not arrive in time. The improved anticipatory scheduling(WPCAS) algorithm is proposed which is based on workload characteristic and service time. WPCAS includes process classifier(PC) module and request service time evaluation(STE) module. PC module assigns different anticipation period lengths in terms of workload characteristic. STE module decides whether to anticipate the coming request according to service time. Experimental results show that WPCAS algorithm is superior to 95%-Heuristic and AS in terms of throughput, average waiting time of anticipation success and deceptive idleness.