提升集体 I/O 平均响应时间的策略与实践
1. 引言
在集体 I/O 操作中,不同的 I/O 请求调度策略会产生不同的响应时间。通过利用文件条带的访问程度和每个进程在 I/O 聚合器上的请求计数,能够开发出改善集体 I/O 操作平均响应时间的算法。减少集体 I/O 操作的平均响应时间,等同于提高高性能计算系统中计算资源的利用率。
2. 算法设计与实现
目标是开发三种替代调度算法,以最小化集体 I/O 中所有 MPI 进程的平均服务响应时间 (T_c)。设计时考虑了文件条带的访问程度,即访问该条带的进程数量。提出的算法不会改变聚合器上的 I/O 量,若 I/O 阶段的成本在集体 I/O 中占主导地位,聚合器上的时间不会有显著变化,主要改善的是非聚合器上的响应时间。假设无论对文件系统进行何种条带排列,I/O 阶段的成本相同,每个聚合器的请求大小与条带大小相同,条带大小在 1MB 到 4MB 之间,且是磁盘扇区大小(512 字节)的倍数,因此不会影响磁盘寻道时间。基于在 Lustre 上的实验,只要每个聚合器仅访问同一服务器,不同条带排列的 I/O 成本大致相同。
- Most Degree First (MDF) :在聚合器文件域的所有条带中,MDF 方法优先调度访问程度最高的条带。直观来看,先处理访问程度大的条带,更多非聚合器进程能更早完成集体 I/O。在 ROMIO 中,集体 I/O 开始时,所有进程的请求信息会提供给所有聚合器,每个聚合器可独立计算和排序其文件域中的条带。确定调度后,两个阶段交替进行,每次处理一个条带。不过,仅利用访问程度不一定能得到最小的 (T_c)。
超级会员免费看
订阅专栏 解锁全文
864

被折叠的 条评论
为什么被折叠?



