论文部分内容阅读
分布式并行文件系统已经成为高性能应用领域不可缺少的组成部分,在实际应用环境中,面向的往往是大规模的客户端,在大量客户端IO密集型应用并发地访问服务器时,数据服务器的IO请求队列会很长,而服务器往往无法针对客户端应用做整体优化,当客户端应用的IO请求是同步请求时,平均完成时间会很高。而现有的I/O调度优化策略很少考虑高并发环境下的同步I/O负载特征对应用程序平均完成时间带来的影响。 详细介绍了分布式环境下的I/O调度策略以及它们的适用场景,针对目前鲜有研究的高并发环境下的I/O特征进行了研究以及理论分析,分析了导致高延时的原因。由此提出了多级等长I/O队列调度算法(EML,Equal-length Multi-level Algorithm),一种面向客户端应用进程的I/O调度策略,通过构造多个优先级队列并限制每个优先级队列的队列长度,缩小部分应用程序两次同步IO的处理间隔时间,并且动态调整应用的优先级,从而降低了应用程序整体的平均响应时间。同时,通过deadline机制保证应用程序的公平性,消除潜在的饥饿现象。另外,还提出了一种针对多服务器文件条带化的优先级调整方案,来保证同一应用在不同服务器上优先级的一致。 最后在PVFS2系统上实现了该算法,并与原始的PVFS2进行了基准测试对比。实验证明,EML算法对系统有良好的性能提升,并对于不同的访问负载具有很强的适应性。