低了很多。(5)能充分利用分散的计算资源:当个人工作站处于空闲状态时,COW可
在空闲时间内给这些工作站加载并行计算任务,从而工作站资源可得到充分利用;(6)
可扩放性好:用户可根据需要增加工作站的数目,以高带宽和低延迟的网络技术支持获
得高的加速比,从而获得应用问题的高可扩放性。
实现工作站机群需要解决的主要问题是通信性能和并行编程环境。因为组成COW
的硬件环境中工作站的性能已相当高,且还在不断的提高,相对而言工作站性能不是关
键问题;相反,负责数据通信的互连网络却是一项关键技术,因为COW系统中并行计
算时各工作站之间需要经过互连网络交换数据,某些工作站上的程序所需要的数据也往
往要通过网络获取或提交。如果网络通信延迟时间很长,再加上用于通信的软件开销(此
部分不可忽视)可能就限制了COW技术对某些问题的适应性。近几年来网络技术发展
很快,从而很好的支持了工作站的互连。
伴随高速网络而产生的另一关键技术是工作站到网络的主机接口网络接口设计,它
应尽量保持网络的传输速度与主机数据收发速度相匹配,其中增加高速缓存或采用
DMA是可供选择的两种技术。网络接口使工作站可以利用网络传输数据,但也增加了
通信延迟,它占用了工作站CPU时闻,从而影响了COW的性能。一般,一次通信时
间延迟可如图2.4所示,其中D为操作系统调度时间,A用于分配缓冲,c用于拷贝数
据到系统缓冲区,s为启动发送,接收时间,T为链路传输时间,F用于定位中断源,x
用于从接收队列获取数据。一般减少延迟的方法有:(1)设计精简通信协议以减少数据
移动的次数和协议处理时间;(2)采用主动消息(Active
Message)携带数据处理命令
以重叠计算和通信;(3)定制通信处理单元以消除通信对工作站CPU的依赖。
另外,COW要走向实用必须为用户提供一个良好的使用环境和一套完整的工具系
统,主要包括:(1)并行编程环境,如一些通信原语库、多种编程语言(Express、PVM、
Linda、P4、MPI)的支持以及并行编译器等;(2)可视化监视/调试器(如Express的
domtool、基于PVM的XPVM等);(3)并行图形库(如基于Express的Plotix等);(4)
并行文件系统和数据库,以适应分布式事务处理的研究与开发。
图2.3
COW并行机结构模型
9