基于Trilinos的并行计算研究及应用

来源 :中国地质大学(北京) | 被引量 : 0次 | 上传用户:zz727zz
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
本文对美国 Sandia 国家实验室 Trilinos 项目的设计思想、组织结构进行了详细介绍和分析。Trilinos 项目致力于更加便利地对数学软件库进行设计、开发、集成和支持。目的是要在一个为解决大规模、复杂物理工程和科学应用的面向对象的软件框架下开发并行解决算法和数学库。Trilinos 也提供一系列核心功能库,提供一些公用矢量,图表和矩阵的支持,还为应用访问适合的 Trilinos 包提供一个公用抽象接口。Trilinos 项目的总体目标就是在一个保留包的独立性同时支持包的互用性的环境中促进快速的开发和部署高性能的、达到最新技术发展水平的数学软件。重点集中于使用抽象接口增强组件的灵活互用性,在一个软件框架内开发健全、可升级的算法。Trilinos 使用一个二级的由一系列包集合构成的软件结构。包存在于 Trilinos 的顶层之下,顶层提供一个共同的外部接口,包括配置、文档、许可以及缺陷跟踪。Trilinos 包主要是用 C++编写,但是也提供一些 C 和Fortran 用户接口支持。它提供一个开放的体系架构允许与其它算法包容易的集成,且通过 GNU 的 LGPL 向外界发布。在基于Trilinons的并行计算环境中,对Trilinos 的Epetra包进行了分析应用,通过三个测试矩阵,使用了 AztecOO 和 GMRES 算法进行了实际实验,考察了该软件的性能。从实验结果可以看到,Trilinos 对各种数值软件的有效协作、集成和扩展所进行了有成效的努力和有价值的经验,使用 Trilinos 可以使用内部模板定义要解决的行业的数据结构,算法等,创建专门软件包,而这些自定义的数据结构、算法等可以继承 Trilinos 的已有类,实现通用接口,将通用的解法器定制为目的为解决某一特定行业或专业问题的求解软件包。Trilinos 对各行业进行高性能计算提供了一个并行计算平台,给并行计算的设计和使用提供了很大的便利。
其他文献