PVM系统的编程环境及并行程序调试

PVM系统的编程环境及并行程序调试

钟煜堂[1]2001年在《PVM系统的编程环境及并行程序调试》文中研究表明工作站群集是经网络连接的多台工作站,各工作站之间利用消息传递(Massage Passing)来协调工作。PVM(Parallel VirtualMachine)是现时使用较广的消息传递系统之一。 本文用两个PVM并行程序例子,介绍PVM编程方法,及在多计算机系统中采用消息传递机制的并行编程风范,给出两类并行问题的PVM程序框架。该两程序框架经填充后,可用于编写两类PVM并行程序。 在虚拟并行计算机系统中,用户可在一台开发终端机上用PADE编程环境完成整个PVM系统的编程工作。本文给出用PADE开发PVM并行程序的实例,并修正了PADE本身的一个缺陷。 并行程序设计的难度不仅表现在编程,还表现在调试。开发并行程序调试器尚有不少困难,本文综述困难所在,一些调试器的使用方法及并行程序的调试方法,探讨PVM库及XPVM支持的调试功能,最后用并行调试器TotalView给出调试两个并行程序的实例。

黄志强[2]2004年在《多项式——PCG并行算法研究》文中研究说明计算机网络的高速发展和微机处理芯片性能的不断提高,为并行计算提供了一个很好的网络平台。同时由于商业化的硬件和软件的不断发展,也为计算机网络提供了高性价比、高可用性的计算。这种高性能计算系统一般被称为机群计算系统。近年来,机群计算系统已经成为学术界、商业界和其它行业界研究的热点。 PVM(Parallel Virtual Machine)并行虚拟机,是能使一群松散连接的计算机用来作为一台并行计算资源的软件系统。这就使大规模计算问题可以通过使用众多计算机聚集来的计算能力和内存来降低低成本地解决,PVM可移植性好、低性价比、编程环境的兼容性和运行平台的广泛性,使PVM拥有着大量的用户,现已成为世界上分布式计算事实上的标准。 本文是将并行机群计算系统应用到解决电法勘探中,在使用有限元方法(FEM)时所产生的大型线性方程组求解问题上。有限元方法是工程学科的重要工具,被证明为在许多科学和工程领域中连续物理系统模拟的一种普遍方法,但缺点是随着工程结构分析问题越来越复杂,在结构分析中,为保证数值解的精度,在使用有限元方法离散处理时,往往要用大量的高阶单元将结构剖分得很密,这时相应的代数方程组的系数矩阵的阶数很高,即使用目前速度最快的串行机来进行求解,费时仍然太多且问题的规模受到内存容量的限制。FEM处理结构分析问题的最基本思想是需要对域进行离散化(一个网格或者模型),这和机群分而治之的思想相似。因此,有限元节点代码可以被并行化、并能在基于不同的PVM机群结点上运行。可用C++编写程序,通过调用PVM库函数提供对并行虚拟机的访问。有限元法产生的线性方程组使用多项式预处理共轭梯度(P—PCG)算法求解,多项式预处理共轭梯度(P—PCG)法与有限元法联系的十分自然,因为两者都是采用相似的最小化过程。多项式预处理共轭梯度算法的高度向量化,且不需要构造全局矩阵,它在大规模并行结构中能被有效地实现。

管建和[3]2006年在《电磁场有限元法解释分布式并行计算的研究》文中指出目前,科学计算主要采用单机计算、分布式计算、并行计算和分布式的协同计算等几种形式。而在地球物理勘探应用中,许多科学计算采用的是单机计算,如电磁场有限元法二维构造或叁维构造的解释软件。这些软件的单机计算,由于数据量大并且计算时间长,往往只有高性能计算能力的系统支持才能满足应用需要。一个研究热点问题-分布式并行计算(DPC)是使用局域网上的闲置CPU资源协同实现的高性能计算。因此,研究基于经济可行的局域网实现电磁场有限元法解释的分布式并行计算系统,可以解决其单机计算时间长、计算结果难以实时可视化等科学计算问题,将会在地球物理应用领域产生巨大的应用价值,推动电磁法勘探解释计算技术的向前发展。论文完成的主要工作和研究成果有:1、提出了在局域网上建立分布式并行计算平台的设想,实现了地球物理勘探解释的科学计算。将地球物理勘探的数据处理问题和计算机及其网络技术的进步结合起来,发展了地球物理的解释方法,推动了地球物理解释方法的技术进步。2、系统地给出了大地电磁法解释的数学模型,重新推导了部分的计算公式。完整地给出了基于大地电磁场勘探解释数学模型的有限元法求解的计算模型;为了程序实现,重新推导了求解一种解系数矩阵为块状叁对角对称矩阵的线性代数方程组的快速算法-格林菲尔德(Greenfield)算法。3、研究了国内外文献中涉及不多的基于Win32的面向对象的并行程序设计技术;提出了在电磁法勘探应用的科学计算领域,运用面向对象技术实现其分布式并行计算的问题;该技术不仅解决了电磁场有限元法解释的求解问题,而且还为其它地球物理解释的高性能计算的并行算法设计提供了依据。4、研究了电磁场有限元法解释的串行计算的算法和软件实现、并行计算的算法和软件实现,给出了电磁法有限元法解释计算任务并行的划分和分治,解决了有关并行计算的负载均衡技术,合理地给出了算法的粒度选取。5、依据并行计算模型和电磁场有限元法解释的并行计算程序,经计算获得了在不同的计算规模或节点下的实验数据,给出了相关的性能分析和效率分析。

刘建[4]2002年在《机群系统并行程序调试环境研究》文中指出并行程序调试是一个复杂的课题,在这方面做了很多研究工作,但许多问题仍没有得到圆满解决。本文对并行调试中的时钟模型、时间开销、交互式调试的干扰、动态条件断点、性能调试等问题进行了研究,取得了有价值的成果。在这些研究工作的基础之上,作者设计了一个机群系统并行程序调试环境并实现了其原型系统。本文的主要贡献包括以下几个方面:1. 描述了性能调试的基本含义和特征,分析了它应提供的方法和手段及需要解决的主要技术问题,进而归纳出并行程序性能调试的模型框架:性能数据采集- 性能数据可视化和分析- 程序修改。针对正确性调试和性能调试在技术及应用上逐步融合、统一的趋势,提出了调试环境的概念,即把性能调试和正确性调试有机地集成于一个环境中。2. 开发了一种基于事件的物理时钟。结合物理时钟和逻辑时钟的优点,设计了一个事后分析的时钟调整算法,证明了其正确性和收敛性。该混合时钟可以满足一般机群系统并行程序调试环境的需要,且无任何额外的通信开销。3. 提出了一种基于状态冻结的确定性检查点设置方法,解决了长时间运行程序的调试问题。该方法避免了检查点中的孤儿消息、多米诺效应和活锁问题;用记录的方法处理中途消息;用记录/重放方法解决不确定性问题。有效地解决了调试和检查点结合所产生的各种问题,且结构清晰、易于实现。4. 为降低交互式调试的干扰,提出了一种新的无干扰(pure)调试模式。所设计的冻结和解冻算法是实现无干扰调试模式的基础,通过形式化分析交互式调试操作对程序的干扰特性,从理论上证明了冻结和解冻算法的正确性。5. 采用动态插装技术,实现了条件断点。此种方法和传统方法相比效率极高,从测试的数据看,比GDB快几倍到几百倍;该方法同时也降低了调试器的干扰。6. 提出了基于状态冻结的交互式性能调试模式。性能测量代码的动态插装技术将交互式调试模式引入到了性能调试中;状态冻结是为了降低交互式调试的干扰。精确到源程序行级的性能数据采集,摆脱了程序构造符的限制,使采集的精度更高、采集的范围更灵活。7. 在本文研究成果的基础之上,设计并实现了一个机群系统并行程序调试环境- DENNET的原型系统。

李永强[5]2007年在《机群系统并行程序调试器的设计与实现》文中进行了进一步梳理随着并行计算在军事、科技、商业等领域越来越广泛的应用,更多的用户开始使用并行技术处理问题。但目前并行机的软件开发环境还比较薄弱,限制了并行计算的普遍应用。在这样的背景下,需要开发一个并行程序集成开发环境,用来降低使用并行计算系统开发程序的复杂度。并行程序调试器是集成开发环境的重要组成部分,它的设计实现是一个突出的难点。本文在深入研究了现有的调试器的基础上,设计实现了一个基于机群系统的并行程序调试器。该调试器支持从Windows平台远程调试Unix/Linux平台PVM和MPI并行程序,使更多Windows程序开发人员能很快进行并行程序的开发调试,解决了并行计算系统使用的复杂性和互操作难等问题,使用户可以把更多精力放在应用问题本身,促进了并行计算的普遍应用。与相关工作的比较显示,该调试器降低了开发并行程序的复杂度,提高了机群系统的使用效率,具有很好的实用价值。本文的主要工作如下:在分析了现有的并行程序调试器的基础上,针对控制阻塞的问题,提出了一个改进的控制模型,使得调试器的系统结构更适合远程调试;在分析了现有的一个具有远程调试功能的并行程序调试器的基础上,针对它的远程控制模式的不合理性,提出了一种改进的远程控制方式,该方式更适合远程调试机群系统并行程序,并能有效避免多个进程间切换所带来的系统开销;研究了跨平台远程调试的相关通信技术,并且针对跨平台远程调试的特点,设计了能够控制调试命令作用范围的方法,以及断点的管理方法;研究了目前并行程序调试器的可移植性实现,针对调试器使用的GDB解释器在可扩展性、可靠性、可维护性和效率上都存在缺陷的问题,提出了使用新的机器接口GDB/MI的改进方案,使得调试器的运行更加稳定、高效;研究了用于解决不确定性问题的全局谓词检测技术,该技术一直在消息传递系统中使用,通过提出附加谓词的概念,使全局谓词检测技术应用到了共享存储系统;在上述研究的基础上,设计了一个具有跨平台远程调试功能的调试器系统结构,并根据这个系统结构实现了一个基于机群系统的并行程序调试器。

杨振兴[6]2005年在《机群计算在可视化平台中负载均衡策略的研究》文中进行了进一步梳理高速计算机网络和不断提高的微处理芯片性能使得计算机网络成为吸引人的并行计算载体。仅依赖于商业化的硬件和软件,计算机网络能够提供高性价比、高可用性的计算,这种高性能计算潮流一般被称为机群计算。 当今,机群计算已经成为一种解决许多大型科学和工程问题的十分有效的方式。影响机群计算性能的因素有很多,诸如任务粒度、处理机的分配和网络拓扑等,其中负载均衡和任务调度策略是影响其性能的关键,已发展成为并行计算领域中的研究热点。 并行虚拟机(PVM)是一个可以将异构的“机群计算机”集合虚拟成一台高性能并行机的软件包。这样大规模计算问题可以通过使用众多计算机聚集起来的计算能力和内存来低成本解决。PVM可移植性好,可运行在当今的多数平台上。PVM拥有着大量的用户,现已成为世界上分布式计算事实上的标准。 本文首先分析了机群网络并行计算的系统组成,消息传递环境PVM,Win32平台上的PVM并行程序设计,负载均衡调度策略及调度问题的一般模型,总结了影响调度性能的各种因素。针对这些不同的因素,本文提出了一些新的策略,改进了某些现有的方法:如为了解决集中式的任务调度策略中调度结点容易成为瓶颈的问题,本文提出的主动汇报和两层调度的思想,使系统具有良好的负载均衡性能;通过引用阀值的概念,采用自适应的汇报方案,系统能够及时准确的获取各工作站的负载信息;通过采纳有效聚合和充分释放的思想,使系统具有良好的可扩展性;为了提高系统的整体性能,本文采取了多线程和消息无解包转发技术,给出了多种任务分配策略。 基于上述工作,结合“网络并行计算的可视化研究”问题,在可移植异构的并行开发环境PVM,本文设计和开发了一个可视化的并行调度程序。程序用C++编写,通过渊用PVM库函数提供对并行虚拟机的访问。系统真正实现了对并行软件的封装,使用户无须了解底层的并行软件的运作,而只需将并行问题用该平台提供的工具以图形的形式显式的描述出来。该系统具有程序模块化高、简单易用等优点,负载均衡调度算法的应用使并行计算更有效率。

张治宏[7]2006年在《基于MPI的并行计算研究》文中研究说明现代计算机技术极大地促进了计算科学的发展。但同时,由于科学的发展,科学对计算的要求的不断提高。但是,即使在现在PC机的性能有极大的提高的时代,由于受到物理器件极限速度和技术水平的限制,使得单处理机远远满足不了现代许多领域中具有挑战性的大规模计算课题对计算资源的需求。这个时候,有两种解决办法,一是继续提高单机的运算能力,二是利用并行计算来提高计算能力。并行计算机分为专用并行计算机和机群两种,由于专用的并行计算机价格昂贵,一般用户很少使用,转而使用便宜的机群技术。由于机群技术依赖于网络,早期网络速度非常慢的时候,网络速度常成为机群计算不可克服的颈瓶。由于近年来网络技术的飞速发展,网络速度有很大的提升,也加快了机群技术的应用。利用网络把各个PC联接起来形成的机群可以部分替代昂贵的专业并行计算机。近年来,国外开发了不少的利用机群进行并行计算的标准,并成功应用于科学试验。常用的并行编程标准有MPI, PVM等,其中消息传递接口MPI(MessagePassing Interface)更以其移植性好、功能强大、效率高等优点而成为目前最重要的并行编程工具。本论文就是以MPI为基础,对并行计算进行研究的。在论文的写作过程中采用了MPICH作为一个MPI标准的实现,并结合VC++.NET进行并程序的编写。本文介绍了机群的构建,以及并行计算的基本理论,然后详细的介绍了MPI并行程序设计方法和编程实现。针对大地电磁正演方法推导的出的大量带状矩阵进行并行求解。在实现过程中使用的是C++语言,并利用了C++的面向对象技术。最后对并行程序进行测试分析,并总结了本论文所做的工作中的经验与不足,并指出需要继续研究的问题。

钟志荣[8]2004年在《EBE-CG并行算法研究》文中研究说明高速计算机网络和不断提高的微处理芯片性能使得计算机网络成为吸引人的并行计算载体。而且依赖于商业化的硬件和软件,计算机网络能够提供高性价比、高可用性的计算。这种高性能计算潮流一般被称为机群计算。近年来,机群计算已经成为学术界和业界团体研究的热点。 并行虚拟机(PVM)是一个可以将异构的“机群计算机”集合当成一台高性能并行机的软件包。这样大规模计算问题可以通过使用众多计算机聚集取来的计算能力和内存实现低成本解决。PVM可移植性好,可运行在当今的多数平台上。PVM拥有着大量的用户,现已成为世界上分布式计算事实上的标准。 本文成功地将机群计算应用到解决在电法勘探中使用有限元方法(FEM)时产生的大规模线性方程组问题。有限元被证明为科学和工程领域中连续物理系统通用的模拟方法,但缺点是传统的串行计算机需要花费太多的计算时间。FEM需要对域进行离散化(一个网格或者模型)。FEM的这种思想和机群分而治之的思想相似。因此,有限元节点代码可以被并行化、在不同的基于PVM机群结点上运行。EBE-CG算法与有限元法十分自然地联系在一起,因为两者都是采用相似的最小化过程。而且,有限元法产生的线性方程组使用EBE-CG算法求解具有很好的发展前景,如将EBE-CG并行计算应用于地球物理电法勘探有着巨大的市场和经济效益。EBE-CG并行计算实现的程序采用C++编写,通过调用PVM库函数提供对并行虚拟机的访问。EBE-CG算法不需要构造全局矩阵,它在大规模并行结构中能被有效地实现。

吴维刚, 董小社, 何戈[9]2003年在《基于机群系统的PVM并行编程技术研究》文中指出首先简单介绍了当今最流行的分布式并行编程环境之一———PVM系统;然后论述了基于机群系统的PVM编程的一般方法,详细讨论了计算任务的分解、程序模式的选择、进程同步的设置及消息传递等关键步骤;最后,对PVM程序的调试作了简单的探讨。

章文[10]2003年在《机群计算在基于有限元法电法勘探中的应用》文中研究表明高速计算机网络和不断提高的微处理芯片性能使得计算机网络成为吸引人的并行计算载体。仅依赖于商业化的硬件和软件,计算机网络能够提供高性价比、高可用性的计算。这种高性能计算潮流一般被称为机群计算。近年来,机群计算已经成为学术界和业界团体研究的热点。 并行虚拟机(PVM)是一个可以将异构的“机群计算机”集合虚拟成一台高性能并行机的软件包。这样大规模计算问题可以通过使用众多计算机聚集取来的计算能力和内存来低成本解决。PVM可移植性好,可运行在当今的多数平台上。PVM拥有着大量的用户,现已成为世界上分布式计算事实上的标准。 本文成功的将机群计算应用到解决在电法勘探中使用有限元方法(FEM)时产生的大规模线性方程组问题。有限元被证明为在许多科学和工程领域中连续物理系统模拟的一种普遍方法,但缺点是传统的串行计算机需要花费太多的计算时间。FEM需要对域进行离散化(一个网格或者模型),FEM的这种思想和机群分而治之的思想相似。因此,有限元节点代码可以被并行化、在不同的基于PVM机群结点上运行。程序用C++编写,通过调用PVM库函数提供对并行虚拟机的访问。有限元法产生的线性方程组使用共轭梯度算法求解。共轭梯度(CG)法与有限元法联系的十分自然因为两者都是采用相似的最小化过程。共轭梯度算法不需要构造全局矩阵,它在大规模并行结构中能被有效地实现。

参考文献:

[1]. PVM系统的编程环境及并行程序调试[D]. 钟煜堂. 暨南大学. 2001

[2]. 多项式——PCG并行算法研究[D]. 黄志强. 广东工业大学. 2004

[3]. 电磁场有限元法解释分布式并行计算的研究[D]. 管建和. 中国地质大学(北京). 2006

[4]. 机群系统并行程序调试环境研究[D]. 刘建. 清华大学. 2002

[5]. 机群系统并行程序调试器的设计与实现[D]. 李永强. 解放军信息工程大学. 2007

[6]. 机群计算在可视化平台中负载均衡策略的研究[D]. 杨振兴. 广东工业大学. 2005

[7]. 基于MPI的并行计算研究[D]. 张治宏. 中国地质大学(北京). 2006

[8]. EBE-CG并行算法研究[D]. 钟志荣. 广东工业大学. 2004

[9]. 基于机群系统的PVM并行编程技术研究[J]. 吴维刚, 董小社, 何戈. 计算机应用研究. 2003

[10]. 机群计算在基于有限元法电法勘探中的应用[D]. 章文. 广东工业大学. 2003

标签:;  ;  ;  ;  ;  ;  ;  

PVM系统的编程环境及并行程序调试
下载Doc文档

猜你喜欢