论文部分内容阅读
高性能计算是世界各国竞相发展的高科技技术,而集群系统是高性能计算技术的主流方向。人类对计算机性能的要求是无穷无尽的,在诸如网上电子商务,预测模型的模拟,DNA计算,数据挖掘与分析,工程自动化等领域中都对计算提出了极高的要求。对这些复杂的应用问题,由于数据量的巨大,一般计算机用传统的计算方法往往是不够的,正是这些重大的应用需求推动着并行计算技术的发展。
本文结合了当前受到极大关注的一种Linux系统Ubuntu和MPI库的实现MPICH2,构建了基于Ubuntu的MPICH2并行计算集群系统,使用基准测试程序EuroBench对系统进行测试,并与另一系统测试结果进行比较。由于并行程序的性能评估与测试要复杂得多,需要加上专业的知识才能真正地对一个程序或系统进行客观、公正的综合评价。
本文还设计并实现一个适用程序员自己使用的,可以对程序执行的具体条件进行配置并收集各项测试结果,分析、统计测试数据,然后生成统计数据文件,并通过读取统计数据文件,生成各种图表,根据任务描述文件以及图表等生成LaTeX文档,进而生成ps/pdf文档的系统。
经过测试,本文所构建的系统具有良好的稳定性,还具体良好的通信和并行计算性能。基于所构建的系统,文章对并行算法进行了一定的研究,在并行计算的消息传递编程中,由于处理器间的通信将花费大量的时间,因此减少通信开销变得非常关键。基于这一点,注意到网络传输中存在大量小消息的特点,本文采用数据合并的思想,对减少弦振荡问题并行程序设计通信开销的方案进行讨论,推导出一个使性能达到最佳的公式,利用自动测试系统对其进行了实验,得出的实验结果表明合并根据公式计算出来的数据量能够最大限度地减少并行程序的通信开销,对于类似的问题也可以使用相同的方法进行分析。
最后,文章还讨论基于网络体系结构的矩阵乘算法,通过研究现有的两种网络体系结构和矩阵乘算法,定义了两类范畴更为广泛的体系结构,提出了一种新的矩阵映射策略和基于这种映射策略的矩阵乘算法,并与现有算法进行比较,证明本算法的有效性与优越性。