学位专题

目录>
<

高性能计算机I/O性能优化关键技术研究

喻杰
国防科学技术大学
引用
目前超级计算机的计算性能正从Pflops量级向Eflops量级发展,在超级计算机系统结构中,计算子系统和存储子系统分离,计算子系统与存储子系统之间增加了I/O转发层以应对日益增长的计算结点规模。高性能计算应用不断增长的运行规模和日趋复杂的数据处理模式给超级计算机存储系统提出了严峻挑战,目前基于硬盘构建的超级计算机存储系统已经无法满足来自超级计算机系统和高性能计算应用的I/O性能要求。  以SSD为代表的新型存储器技术的快速发展为解决超级计算机存储系统面临的技术挑战带来了新的机会,同时,超级计算机也面临着如何高效地组织管理计算结点端的SSD为数据访问服务的技术难题。限于经费原因,目前只能在超级计算机的部分计算结点中安装SSD。本文基于用户的并行I/O特性,提出将部分计算结点上配置的SSD组织成面向作业的临时全局缓存系统(WatCache),它在作业启动时根据作业的不同I/O需求,使用不同数量的含有SSD的计算结点构建成可供该作业所有进程共享访问的全局缓存空间,最后在作业结束时退出。利用本文提出的数据布局机制和元数据缓存机制,WatCache可以在靠近计算结点的位置为应用提供低延迟、高带宽的I/O服务。  在超级计算机的作业调度系统中,为了减少作业进程间的通信开销,通常为作业分配相邻的计算结点,但是,这种结点分配方式将在包含I/O转发层的超级计算机中造成性能瓶颈。目前许多超级计算机使用I/O结点承担计算结点与存储服务器之间的命令请求和数据转发,I/O结点与计算结点之间采用静态映射,每个I/O结点服务于一组相邻的(如同一个机柜内)计算结点。该种分配方式导致一个作业仅能使用有限数量的I/O结点,降低了作业的并行I/O性能,造成了I/O结点的负载不均。本文分析了天河一号的作业运行日志和I/Otrace,发现作业的I/O流量在进程中分布不均和作业运行的结点在机柜中分布不均将导致I/O结点负载不均,进而影响作业的I/O性能。为此,本文提出基于作业I/O流量分布进行作业计算结点分配的策略,使作业的I/O负载能更均衡地被更多的I/O结点处理。  当前超级计算机采用多层次I/O系统结构,包括计算结点、I/O转发层和底层存储系统。每个I/O结点各自独立地处理一组计算结点的I/O请求,易导致I/O结点上的负载不均衡;当多个计算结点通过不同I/O结点同时或先后访问同一文件中相同或相邻的数据时,每个I/O结点都需要访问存储系统,造成不必要的多次数据访问,而且在多个I/O结点上产生多个数据副本,额外增加数据一致性维护开销。为此,本文提出面向作业的基于内容的I/O转发模式,使得一个作业使用的计算结点共享它们所配置的I/O结点,均衡I/O结点的负载。同时,根据文件数据在存储系统上的条带化布局信息,将文件数据条带化地分布到作业使用的多个I/O结点上,访问相同数据条带的I/O请求将由同一个I/O结点处理,并建立I/O结点与存储结点上数据条带的分组映射关系,提升I/O结点的数据局部性,以减少数据一致性维护和I/O竞争,并获得更高的并行访问性能。

高性能计算机;Flash缓存;I/O性能;计算结点分配策略

国防科学技术大学

博士

计算机科学与技术

刘光明

2018

中文

TP333

2020-04-22(万方平台首次上网日期,不代表论文的发表时间)

相关文献
评论
相关作者
相关机构
打开万方数据APP,体验更流畅