基于MPI的并行函数库的设计与实现

来源 :曲阜师范大学 | 被引量 : 0次 | 上传用户:aqcnbbz1
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着工程科学领域对高性能计算需求的加剧,科学计算的规模迅速膨胀。例如军事、能源、医学、生物、气象和人工智能等领域需要更加快速有效的计算能力。传统的串行计算无法满足超级计算的需求,网络并行计算发展起来。伴随着并行计算的发展,出现了服务于并行计算的支撑平台,如MPI、PVM等。这些平台都提供了用以实现并行计算基本功能的API接口,开发人员通过调用这些平台提供的函数进行并行程序开发。但这些平台的共同特点是应用接口复杂,需开发人员熟练掌握,对开发人员的要求较高,开发效率低下,容错性差,复用率低下,进而导致并行计算发展缓慢。由于并行程序在分析和设计时要考虑到任务分配、数据划分、进程间的通信和同步等底层问题,同时要求开发人员熟练掌握支撑平台提供的复杂函数来完成数据划分和进程通信。这使得并行程序开发较之串行程序更有难度,开发人员对并行编程思想的不熟悉也是造成并行编程发展缓慢的原因之一。本文提出的并行函数库是在MPI提供的函数接口的基础上实现的。MPI是一个相对比较成熟的标准,几乎所有并行计算机制造商都对其提供支持,一个正确的MPI程序可直接在任何并行机上运行。该并行函数库在MPI的基础上进行了封装及扩展,设计并实现了一个基于MPI的、应用面向对象技术的、提供了较全面的应用接口的并行函数库。该并行函数库通过分析MPI中主从结构的并行编程模式和并行计算中较常用到的并行算法提出的、面向数组计算领域、具有面向对象特征的并行算法库。该库提供了常用的典型数值并行算法的封装函数,为开发人员提供高层次的并行程序接口。为了使开发的并行函数库更为结构化,该库采用了层次式体系结构的思想。并行函数库被按照功能不同划分为四个层次:基础支撑层、消息通信层、数据划分层和应用接口层。其中,应用接口层为该并行函数库的最高层,为开发人员提供直接调用的接口。应用接口层是基于基础支撑层、数据划分层和消息通信层实现的,而基础支撑层、消息通信层和数据划分层则完成了并行函数库的基础构建。最后通过实验证明,使用该并行函数库提供的API接口进行程序开发,程序结构清晰,开发过程简捷,提高了开发效率,使并行编程更加简单有效。
其他文献
现实世界中,90%的知识来源于文本,从文本知识源中获取专业知识是一种重要的途径。但不同的文本对对象的描述往往有所不同,为了获取完备的知识,需要从多种文本知识源中挖掘。
经过30多年的发展,目前RDS(Radio data System)技术在欧美等一些发达地区已经成熟,其应用也进入到人们生活中的各个领域,并深受人们的喜爱。RDS作为一种低成本、技术成熟以及
近年来,光电技术突飞猛进,指纹采集仪器的功能也越来越强,高分辨率指纹识别逐渐走入人们的视野。相比传统的指纹识别,高分辨率指纹识别不仅能够提取更高分辨率的指纹细节信息
随着科学技术的日益发展,人们能获取到的数据量已经呈现出爆炸的趋势。如何能够利用好这些数据,特别是历史数据,越来越受到人们的关注。数据仓库、联机分析作为商业智能的重要部
随着软件开发领域的不断发展和系统规模的日趋复杂,传统软件开发方法暴露出越来越多的问题,如代码重用性差、软件研发效率低、模块间耦合度高等问题。当前软件开发技术已经难
随着互联网技术的不断发展,各种移动平台广泛应用,即时通讯软件日益丰富,在社交网络平台中,微博从一出现就受到了网民的大力追捧。由于其不仅具有实时性、原创性、灵活性等特
在全球3G浪潮和NGN建设高涨的今天,在移动通信向全IP网络架构演进的趋势下,IMS ( IP Multimedia Subsystem, IP多媒体子系统)作为下一代通信网(NGN)实现大融合方案的网络架构,在NG
随着信息技术的发展,各种来自内部和外部的攻击正源源不断地威胁着信息资源,于是保护信息资源的安全已成为一项刻不容缓的任务。访问控制是种行之有效的重要保护措施之一。近
分布式交互仿真技术是指采用协调一致的标准,通过网络将分布在各地的各类型仿真器互连,使用户可以参与交互作用的一种综合环境。这种技术是当今仿真领域的前沿和热点研究内容
随着多媒体计算机技术的发展以及网络技术的推广,信息安全越来越被大众所关注。数字密写技术和数字水印技术的基本思想都是将秘密信息隐藏在载体对象中,但是数字密写和数字水