论文部分内容阅读
随着高性能计算机技术的迅猛发展,高性能计算机逐渐在很多行业的得到应用。网格技术的迅猛发展更是促进了高性能计算机的使用。要充分发挥高性能计算的效能,要有与之相适应的软件,并行操作系统、并行编程工具和应用程序是高性能计算机所需的主要软件。特别是应用程序,适合在高性能计算机上运行的是并行应用程序,而编写并行程序的难度远大于编写串行程序的难度,很多并行程序只能由专家来编写,这种状况阻碍了高性能计算机的广泛使用。自动并行编程工具的出现无疑将会大大改变这种现状,使很多串行程序员也能够在其帮助下编写出并行的应用程序。 自动并行化技术是随着编译器优化技术的发展而产生的,经过多年的发展已取得很大的进展,特别是在基于共享主存的自动并行化方面,很多理论已趋于成熟。但是现有的自动并行化工具都是在底层实现的,并行化后的程序可移植性差。基于分布式主存的高性能集群系统是高性能计算机的发展方向,并且用户能够在前台直接使用的自动并行化工具具有很大的实用性。消息传递接口MPI已经作为一种事实上的消息传递标准被广泛使用,具有很好的可移植性。 针对这种现状,本文在研究传统自动并行化理论的基础上,进行了如下工作: (1)构建了一个实验性的程序分析平台; (2)在平台上对基于嵌套循环类语句为基础的串行C程序实现了数据流分析、依赖分析、数据划分及自动生成MPI并行程序: (3)实现了一种基于SPMD的自动并行转换模式; (4)对并行化的程序在深腾1800大型机上进行了性能测试。