论文摘要
计算理论的发展和网络通信技术的进步为计算的模式和结构带来了日新月异的变化。尽管单台计算机的计算能力越来越高,但是仍然不能满足复杂性日益增加的科学与商业问题计算的要求。此外,由于专用高性能计算机的制造和维护成本极高,极大地限制了高性能计算能力的普及水平,因此利用高速网络连接一组工作站或PC机组成并行计算机系统,或利用网络将已有的资源组成一个高性能的计算环境来解决复杂的计算问题的做法已越来越普及。 但是并行程序开发难度很大,对开发人员的要求很高,这大大制约了并行计算的发展。针对网络并行计算中使用的并行软件环境对非专业人员来说使用难度大,且大多是基于UNIX环境开发的特点,构造一个基于Win32系统的可视化并行程序开发平台,使得Windows用户及非计算机专业人员也可以进行并行程序设计。该可视化并行程序开发环境构建于WPVM3.4并行虚拟机之上,利用本平台进行并行程序的开发,可以使得更多的计算机专业人士也能很轻松的开发并行程序,推动多个领域工程科学的发展,使得网络并行计算更有意义。 采用这种思路建立起来的计算网络是一种可扩展的、灵活的、高性价比的分布式并行处理系统,能否充分利用系统的冗余资源和最大限度地发挥该系统的潜力,合理的任务分配和负载调度是主要的影响因素之一,同时其本身也是一个难以解决的问题。虽然人们相继提出了许多解决方法,但都不是十分完美的解决方案。 任务调度是并行计算中最基本、最为关键,也最具挑战性的问题之一,是影响并行计算执行效率的一个关键因素。任务分配是计算机研究领域的一个经典问题,其许多子问题尚未彻底解决,对它们进行研究具有重要的理论和实际价值。 本文在总结和吸收大量已有研究成果的基础上,对网络并行计算系统进行了合理的抽象和必要的简化。此外,针对影响系统性能的若干主要因素,提出WPVM环境下动态任务分配的方法,本平台以尽量节约系统资源为目的,采用自适应关键路径任务分配机制,其主要思想是使应用程序的执行时间最小,同时兼顾负载平衡。该算法能显著地提高网络并行计算系统的性能,并具有较广的适用范围,