PETSc探析与高性能并行数值软件包的设计研究

来源 :中国科学院软件研究所 | 被引量 : 7次 | 上传用户:hsjxln
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着应用的深入和计算技术的发展,并行计算在数值计算领域里扮演着越来越为重要的角色,成为了解决很多大规模科学计算问题的唯一途径。 并行计算的应用离不开并行软件的支持,在新的科学计算形势下,人们对高性能数值软件的严重依赖和迫切需求基于这样一个事实:并行数值程序的设计远比串行程序设计来得困难,尤其面对复杂应用问题时,大规模并行数值程序的开发和性能优化非常具有挑战性。 然而,高性能数值软件的开发是一项庞大而复杂的工程,从设计到实现往往需要一个综合、漫长的探索过程。在这种情况下,了解、使用、解构剖析一些已有的优秀数值软件成果,以获取在开发经验及技术方面更多的认识,成为了我们迅速提高数值软件开发水平的一条捷径。 可移植、可扩展科学计算软件包PETSc是近来在国际上很受关注、应用广泛的高性能并行数值软件开发典范之一,我们对它的重点学习与研究主要出于以下考虑:PETSc基于MPI并行程序设计平台,适合于我们常用的并行计算机尤其是机群系统;它以偏微分方程、代数方程求解功能为实现重点,非常切合于我们的主要研究方向和应用需求;尤为重要的是,在其良好的软件使用模式和执行性能下隐含的先进软件设计思想和程序实现方案,对我们今后的数值软件开发很有借鉴意义。 以PETSc为主线,本文的主要工作及贡献包括: ·对当前高性能数值软件领域的研究内容、现状及发展趋势做了较为详细的调研与分析整理,归纳了数值建模与算法研究、程序设计与性能优化、软件开发思想与系统设计等三大数值软件研究范畴。 ·从软件外在的功能组织、使用模式与内在的设计思想、实现技术及其因果关联性等多重角度出发,对PETSc做了深入的分析探讨,尤其从源代码的层次,重点剖析了PETSc的面向对象、中性数据结构、上下文环境、并行设计与通信等重要核心技术的实现方法及其对PETSc使用模式和性能所产生的意义。 ·从消息传递并行编程模型出发,提出了一套非结构网格划分和管理的综合应用方案,并给出相应的实现与应用步骤,在此基础上总结了PETSc对该方案的支持功能。。在充分考虑数值计算与面向对象等软件工程思想结合的基础上,对高性能数值软件设计做了多方面思考,提出了一套框架性的综合设计方案。
其他文献
复制机制被大量地应用到Internet中用来提高对Web文档的访问效率,并增强Web文档有效性、降低网络总流量、保持系统负载均衡的功能。大规模使用复制技术必须考虑两个关键问题:
宽带多业务接入网络可以在一个平台上提供多种类型的服务,相比单独建立多个专用业务类型的接入网络具有运营管理维护成本更低,网络铺设费用更低,灵活性更好和网络利用率更高的优
Web服务作为新一代分布式技术,它的松散耦合性、跨平台、跨语言、良好的互操作特性已为许多专家拥护并得到广大 IT公司和组织的支持。Web服务技术的应用是全球网络化高速发展