面向对象数值软件Trilinos-Epetra结构剖析与数值实例研究

来源 :中国科学院软件研究所 | 被引量 : 0次 | 上传用户:somlist
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
伴随着计算技术的发展,在实际应用需求的推动下,数值计算得到了长足进步。数值软件尤其是并行数值软件是当前数值计算应用的关键环节。日益增多的大规模、复杂实际应用问题,对数值软件的无缝协作不断提出更高要求。建立一套普适的数值软件互操作机制,以促进各类数值软件的集成,并便利其设计、开发和维护,就具有重要意义和现实紧迫性。有针对性地使用和分析国内外一些优秀的数值软件,借鉴其宝贵经验,必将对实际数值应用程序开发产生积极影响。   Trilinos是美国能源部下属Sandia国家实验室的一个大型数值软件项目,受到数个官方研究计划的资助。其目标是构造一个灵活的软件框架,在此之上进行具有挑战性的各类大规模数值应用。   本文主要分析研究了Trilinos的设计思想、体系结构,接着从外在功能、设计特色和典型使用等角度,对其中的软件包进行逐一分析。Trilinos定义了一个线性代数对象模型,自动支持进程间通信,并作为各种软件包的构建基础和沟通载体,Epetra就是此模型当前比较成熟的实现。着重于基本线性代数包Epetra,剖析了其主要类层次结构,给出了相应的UML类图表示,进而较为详尽地讨论了其中核心类的功能、使用与设计实现等细节。最后使用典型测试数据进行数值实验,以探索其行之有效的使用模式。   在具有强大功能的同时,Trilinos的正确使用颇具难度,而充分发挥其性能优势更是不易。以此为着眼点,文中从普通用户角度出发,选取Matrix Market数据库中若干测试矩阵,以分布式并行系统的主要编程模型MPI为平台,调用Epetra、线性迭代解法器和图划分工具hMETIS进行具体实验,实现了顺利求解,并获得了相关性能数据。理论分析和数值实验展示了有效使用Trilinos的可能性,探索了Trilinos与其他软件工具包的联用能力,从而拉近了此优秀软件与实际数值应用之间的距离。
其他文献
抢占式实时操作系统中的任务在争夺共享资源时会引起死锁和优先级反转,它们会降低系统的可调度性。优先级顶协议是一种优先级驱动的抢占式调度协议,它能够避免死锁和限制优先级
缺陷,是导致程序不能正常运行的错误或瑕疵。由于缺陷的存在,使程序运行轻则结果出错,重则崩溃退出,甚至造成人力、物力、财力的重大损失。因此,程序开发者们总是尽可能的避免程序
科学研究和日常生活中,我们经常遇到数据处理的问题,例如图像处理本文分析了当前普遍采用的WebServices技术标准和BPEL工作流规范的特点,在此基础上,根据数据处理任务的特点,考虑
随着IC技术和PCB工艺的发展,信号的周期和上升沿时间变得越来越短,PCB上的器件和导线越来越密集,高速数字设计已突破传统低频电路设计的思路,形成了一套专门的设计流程和规则。高
计算环境的变化是驱动计算技术长期发展的一个重要因素,而计算技术的健康发展需要有与之相适应的计算模式。无线数字通讯网络的迅速发展与便携式计算设备的普及,使得人们离真正
三层交换机是网络中的重要设备,对三层交换机的研究开发对网络的发展有着相当重要的作用。Ipv6正在世界范围内逐步得到实施并且日益完善,支持Ipv6协议的三层交换机逐渐成为网络
P2P技术近几年来发展迅速,在文件共享、即时通讯、多媒体传播、信息检索、网络游戏等众多领域都有广泛的应用。P2P系统中的节点共享彼此的资源,包括计算能力、存储空间、网络带
近年来,基于生物特征的身份识别技术取得了快速发展,手写笔迹鉴别技术是其中的重要研究方向,已经引起越来越多人的重视。文本独立笔迹鉴别技术因为其安全性高、普适性强、样本采
P2PSIP采用结构化对等网络技术DHT支持标准信令协议SIP,具有良好的可扩展性、可靠性和经济性,在网络电话、即时通信、在线游戏等应用领域非常有竞争优势,应用前景非常广阔。然而
随着网络的发展和电子邮件的普及,垃圾邮件的数目飞速增长。大量涌现出来的垃圾邮件,不仅耗费了大量网络带宽和计算机时间空间开销,而且对用户的正常工作造成了严重的干扰。为了