突破I/O瓶颈 五种解决方案各有利弊
2008-12-18 11:03:54 来源:WEB开发网HPC(高性能计算High Performance Computing,也称超级计算)历来是石油、生物、气象、科研等计算密集型应用中的首要技术问题。早期的HPC系统,主要以IBM、Cray、SGI等厂商的大型机或并行机为硬件系统平台。随着Linux并行集群技术的成熟和普及,目前HPC技术主流已经转向以IA架构为硬件平台,以Linux并行集群为系统平台的廉价系统为主。近年来,这一技术又进一步发展,各厂商目前竞相追捧的网格计算技术,从某种意义上说,就是这一架构的延伸。鉴于Linux并行集群技术在HPC应用中的主流地位及快速发展趋势,本文主要讨论的也是这一架构中的存储系统问题。
当前Linux并行集群的困惑----遭遇I/O瓶颈
Linux并行集群中的计算资源按其功能角色不同,通常被分为两种:“计算节点”和“I/O节点”。其中计算节点负责运行计算任务,I/O节点负责数据的存储并响应计算节点的存储请求。目前Linux并行集群一般采用单I/O节点服务多计算节点的模式。从硬件角度看,I/O节点和计算节点都是标准的IA架构,没有本质区别。计算所需要的初始数据、计算得出的最终数据以及并行计算平台本身,都存储于I/O节点上。计算节点与I/O节点间一般采用标准NFS协议交换数据。
当一个计算任务被加载到集群系统时,各个计算节点首先从I/O节点获取数据,然后进行计算,最后再将计算结果写入I/O节点。在这个过程中,计算的开始阶段和结束阶段I/O节点的负载非常大,而在计算处理过程中,却几乎没有任何负载。
提高各计算节点CPU频率和增加计算节点数量,可以提高集群整体的计算处理能力,进一步缩短处理阶段的时间。在当前的Linux并行集群系统中,集群系统的处理能力越来越强,每秒运算次数在迅速增长,于是集群系统真正用于计算处理的时间越来越短。然而,由于I/O能力改进不大,集群系统工作中的I/O效率没有明显进步,甚至会随着计算节点数的增加而明显降低。
更多精彩
赞助商链接