异构环境下树型计算系统的设计与实现异构环境下树型计算系统的设计与实现
针对异构集群并行效率不高的特点,通过分析由于计算系统设计不合理而产生的种种问题,提出了一种基于异
构环境下的树型计算系统,用以兼容各类计算平台,降低全局通信流量和均衡主控节点负载,从而改善集群通
信效率,使集群的扩展更加灵活,并且通过实验验证了该系统的可行性。
摘摘 要:要: 针对异构集群并行效率不高的特点,通过分析由于计算系统设计不合理而产生的种种问题,提出了一种基于异构环境
下的树型计算系统,用以兼容各类计算平台,降低全局通信流量和均衡主控节点负载,从而改善集群通信效率,使集群的扩展
更加灵活,并且通过实验验证了该系统的可行性。
关键词:关键词:
近年来,为了满足不断增长的计算能力的需求,将已有的若干个不同的计算平台(计算主机或计算网络)互连并改造成高性能
集群系统是一种性价比较高的实现方式。然而集群规模的增大并没有带来绝对计算速度和并行效率的提升,伴随而来的却是全
局通信(尤其是组通信)流量猛增,网络堵塞严重,操作响应迟滞,以至计算性能下降。
1 分析问题分析问题
经过对此类异构集群的研究和分析,计算系统设计的不合理应是造成该集群计算性能下降的主要原因之一。其理由是:在
现有的计算系统中,大多是在不考虑集群网络或处理机的性能差异的情况下对网络进行模型化,然后在此模型及其参数值基础
上构造出最优算法来实现通信。这样的方法固然能够定量地分析算法的描述精度,更能精确地给出通信时间的统计公式,这对
计算系统的分析和设计是有指导意义的,但同时也存在着一些问题,就是它们假定计算中的所有进程对(发送进程和接收进程
称为进程对)之间的通信时间都是相等的。而实际情况却并非如此,不同的处理器速度、不同的内部结构(单核或多核)以及
集群内部存在着不同类型的网络和不同的连接方式,这些都会造成通信延迟的差异,所以此种模型构造出的集群系统与实际应
用是有差距的。具体表现在应用的透明性不足[1]、集群框架结构[2]和编程模型的选用不合理。
2 解决问题解决问题
解决问题思路就是在粒度、通信开销和计算资源三者之间寻找最佳平衡点,并以此平衡点来组织集群,以达到性能提升的
目的。本文将具体的网络拓扑信息作为主要建模依据,提出了一种基于异构集群环境下采用树型结构的计算系统,用以确定适
合并行任务的粒度、降低通信开销和提高计算资源利用率,进而改善集群计算环境。
2.1 树型组通信系统的提出树型组通信系统的提出
2.1.1 树型结构介绍树型结构介绍
树型结构是针对单层型结构在消息广播和消息收集方面速度慢、可扩展性差的弱点而提出的新的集群框架结构。图1所示的
是典型的树型结构。与单层型结构一样,树型结构也有主控节点(根节点)和从属节点(叶子节点),且功能与单层型结构类
似。不同的是,树型结构中还包含分支节点,这些分支节点是树的内部节点,没有计算功能,没有系统认证、网络管理和远程
控制等功能,只有对消息的转发、分发和收集功能,所以也叫路由节点。如图1所示,根节点与其下一层的分支节点有直接的
通信连接。同样,每个分支节点都与其下一层的节点有直接通信连接,上层节点与下层节点可以实现组通信,而拥有同一个父
亲的同层节点之间可以进行点到点通信。除此以外,其他非同父节点相互之间没有建立直接的通信连接。
树型结构集群可以将全局通信域划分为多个子通信域,并且可以将主控节点的负载量分担到各个分支节点上,降低全局通
信量进而改善集群计算环境。随着树的深度的增加,使得集群更易于扩展。但该集群实现起来比较复杂,且没有专用的协议、
应用
2.1.2 异构环境下树型计算系统异构环境下树型计算系统
在异构环境下集群成员间彼此通信差异很大,有的使用广域网技术通信,有的在局域网内通信,还有的通信在机器内部进
行,所有这些相互通信的进程对之间的通信时间是不可能相等的。所以延用已有的计算系统不可能最优。
系统采用如图2所示的树型结构,根节点为主控节点,叶子节点为计算节点(图中圆形节点),此外还有路由节点(图中方
形节点)用于连接上下层节点或网络,整个系统按通信速度分层,各层的通信速度从第0层到最后一层依次升高,第0层的通
信最慢,最底层的通信最快。通常根据一般情况下节点机的计算速度或子网中延迟的大小来评定各节点机或子网通信速度的快
慢。例如,对于集群子网中存在10 M以太网计算平台、100 M以太网计算平台和SMP节点机,显然SMP是机内通信,通信速
度是三者之中最高的,应放在最底层(图中第3层);10 M以太网的通信带宽明显低于100 M以太网,所以应放在最上层(图
中第1层),100 M以太网的放在中间层(图中第2层)。