基于SKELETON的并行程序设计方法的研究现状

来源 :硅谷 | 被引量 : 0次 | 上传用户:liangsfr
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘要]并行程序设计是并行计算的难点之一。而基于SKELETON的并行程序设计方法为程序员提供的是并行程序的框架,比使用并行库(PVM和MPI)具有更高的抽象程度和通用性。简单地介绍目前国际上三种应用此方法所开发的模型或项目以及我们所研究的DPAPD模型,并做出比较。
  [关键词]骨架 并行结构骨架
  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)01103047-01
  
  一、引言
  
  并行程序设计是并行计算的两大难题之一。20世纪90年代,国际上就开始使用基于模式的思想进行并行程序开发,至今已发展出了多种方法和系统:如基于算法骨架的方法、基于设计典型的方法、基于并行结构骨架的方法等;并分别对使用这三种方法所开发的模型或项目如基于结构化的并行程序设计库eSkel、关于算法模式的系统SkeTo Project和基于并行结构骨架的方法研究的项目P3L以及我们正在研究的DPAPD模型进行了简单的介绍。
  
  二、四种基于Skeleton的并行程序设计方法的简介
  
  目前对于Skeleton有许多不同的定义,但它的要义是并行计算和通信的模型,且这模型可以被打包为“框架、模板”等(即它的参数可以由其他的代码来取代)。模型中的实现和分析部分可以共享,即模型中只有结构或框架而没有具体实现的细节部分。
  (一)eSkel简介
  eSkel(the Edinburgh Skeleton Library)是由爱丁堡大学信息学院开发的一种结构化的并行程序设计库,它为有经验的C/MPI程序员提供很多并行结构框架。eSkel的第一个版本eSkel1是由Murray Cole在2002年开发的。它是利用设计模式思想,即并行计算的重复出现的模式和迭代可以被抽象为框架或模板,并且可以把简单的操作作为参数。因此,提高了抽象的水平,并行程序可以用此框架或模板来得到,从而更加方便。它的目的是最大化由它的部件模式所提供的概念的灵活性,并且促进模式组合的动态选择。
  (二)SkeTo Project简介
  SkeTo Project(Skeleton Libaray in Tokyo)是由日本东京科技研究所(JST)开发的一关于算法模式的系统。它是基于结构化算法的,主要包含以下两个方面:1.许多数据结构的并行模式的实现,目前已经实现的并行模式库有:表(list),树(trees),矩阵(matrices),这些并行模式是用C++和MPI实现的;2.对模式程序的最优机制,调用了模式的程序可能会带来很多意想不到的负担,所以必须对模式程序的最优机制进行研究。如:并行模式accumulate是由于运用模式開发有效的并行程序和使用模式管理不规则的数据都不是容易而提出的,这模式不仅有效地描述了并行计算中的数据独立性而且为管理呈现了好多的代数性质。其他的关于最优化机制的模式正在实现当中,且实现后将添加到模式库中。此系统的目的就是帮助程序员更容易开发有效的并行程序。
  相对于以前的并行程序开发系统,SkeTo Project的优势主要体现它的扩展性(Extensibility)上。这表现在,在此系统中,新的设计模式可以被定义,并且添加到系统的设计模式库中。但同时,定义新的设计模式并将之添加到系统中这个功能并不完善,因此,在一定程度上限制了SkeTo的实用性。
  (三)P3L简介
  P3L(Pisa Parallel Programming Language)是由意大利的比萨大学计算机科学学院开发的一种结构化的并行程序设计语言,它是基于骨架或模板的。P3L是建立在C语言的顶部,串行部分用C来实现(但也可扩展为用C++、Java、Fortran、HPF等来实现串行部分),并行部分就通过选用骨架或模板来实现。目前已开发的骨架模型(Skeletons model)包括:任务并行(FARM和流水线PIPE)、数据并行(MAP、REDUCE、SCANR和COMP)、控制并行(迭代LOOP和SEQ)。它的第一个编译器P31L是在1993/94年开发的,目前正在做的工作是:a:anacleto:产生C+MPI代码的新的P3L-2编译器,并且运行在Linux和Fujitsu下;b:ocamlp3l:一种基于Ocaml扩展的骨架。它比直接使用并行库(PVM和MPI)的效率更高表现在:它的并行部分使用已实现的骨架,从而无需处理并行细节部分。
  


  (四)DPAPD开发模型简介
  在我们的前期研究中,我们提出了一种基于设计模式和泛型编程的并行程序开发模型DPAPD。此模型的结构如图1所示。系统结构分为三层:抽象语言层、系统实现层和目标语言层。在抽象语言层,我们借用江西师大的薛锦云教授提出的PAR方法中的APLA语言来描述泛型算法结构库和泛型并行结构库。这样,程序员就可以直接使用该语言和模型中的设计模式库来描述抽象的并行程序。在系统实现层,系统将实现四个主要模块,设计模式库(包括算法结构库和并行结构库),分析器(对抽象语言进行分析,产生中间表示),优化器(对中间程序进行优化),转换器(将中间程序转换成可运行的目标语言并行程序)。同样的,在这层,我们也可借用江西师大的薛锦云教授提出的PAR方法中的系列转换器,对此转换器进行相应的扩充即可实现。
  
  三、比较和总结
  
  本文讨论了三种基于模式思想的并行程序开发方法:(1)基于结构化的并行程序设计库eSkel;(2)关于算法模式的系统SkeTo Project;(3)基于并行结构骨架的方法研究的项目P3L等。这三种方法所采用的手段是通过将并行计算模式扩充到顺序语言环境中,以此来设计实现并行程序的开发环境(包括程序设计模型、语言、工具、及集成环境)。由于这类环境隐蔽了并行计算的底层实现细节,因此与低层次的并行程序设计环境相比具有更高的抽象程度。然而,对程序设计环境的研究并不能从根本上解决并行程序设计难的问题,因为并行程序设计困难的原因并不仅仅在于体系结构的多样性,还在于问题本身并行求解的困难。
  我们正在研究的DPAPD模型不是传统意义上的并行程序设计模型,而是一种支持整个并行程序开发过程的方法。因此,它不仅是作为一个并行程序设计的模型而提出的,更是作为一个并行算法设计的模型。而且,该模型将并行程序设计开发的两个基本方面统一在一个抽象框架之下,为从问题规范出发,获得并行程序提供了一种系统的方法。然而这一模型还有待进一步的完善,包括足够多的设计模式的开发和更多基于这一方法的模型的开发,这是我们进一步的工作。
  
  参考文献:
  [1]万剑怡、孙永强、薛锦云,一种从Z规约到并行程序的精化方法,软件学报,2002.
  [2]K. Matsuzaki,Z. Hu,and M. Takeichi. Parallelization with tree skeletons. Technical Report METR 03-21,Mathematical Informatics,Graduate School of Information Science and Technology,University of Tokyo,2003.
  [3]Z. Hu,H. Iwasaki,and M. Takeichi,An Accumulative Parallel Skeleton for All,Proc. 2002 European Symposium on Programming,Lecture Notes in Computer Science,Vol. 2305,pp.83-97,Springer-Verlag(2002).
  [4]H.Kuchen and M.Cole,The Integration of Task and Data Parallel Skeletons,Proc.3rd International Workshop on Constructive Methods for Parallel Programming(CMPP2002),pp.3-16(2002).
  [5]http://homepages.inf.ed.ac.uk/mic/Skeletons/.
  
  作者简介:
  雷利桂,女,江西瑞昌,硕士研究生,研究方向为并行计算。
其他文献
跟随着农历马年的脚步,用喜气洋洋的大红色和充满寓意的马造型新品向中国农历马年致敬。
期刊
[摘要]阐述如何做好高职新生班主任工作,构建和谐班级,从而真正服务学生,使之在和谐的环境中成人成才的观点。  [关键词]高职新生 班主任 和谐班级 成人成才  中图分类号:G635.1 文献标识码:A 文章编号:1671-7597(2008)0920199-01    建设和谐的校园是建设和谐社会的有机组成部分,建设和谐校园的核心是和谐班级的建立。研究高职学生特点,初探构建怎样的班级环境以及如何构
期刊
[摘要]通过研究当前宽带发展面临的困境和机遇,分析国内IPTV业务发展环境,并结合国外运营商的成功案例,对电信运营商IPTV业务发展策略进行了初步探讨。  [关键词]IPTV FastWeb 业务发展策略  中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)0920196-01    一、IPTV业务概述    IPTV是一种利用宽带网络以机顶盒+TV或者PC为终端设备,
期刊
餐厅是这家 壱藏  “壱”这个字念“yī”, 壱藏所在的益丰外滩源,是我们熟悉的“万国建筑博览群”北端起点。这里原是始建于1849年的英国领事馆主楼,现在则变身顶级购物场所,有着名媛最爱去的购物地之名。  位于三楼的壱藏主打一品料理,料理长是御厨出身。这边的晚市放题是380元/位,并包含酒水饮料畅饮,消费档次与如今主流价格相同,并不会要你花上天价。可以普及一下的是,“一品”不但指质料上乘,这个日文
期刊
[摘要]目的:探讨肺结核伴随自发性气胸临床特征及诊治。方法:对2002年至2007年我院住院的65例肺结核并自发性气胸的患者临床资料进行分析。结论:肺结核并发自发性气胸时,临床症状重,及时救治,预后良好。  [关键词]肺结核 自发性气胸  中图分类号:R2 文献标识码:A 文章编号:1671-7597(2009)0110001-01    一、资料与方法    (一)一般资料  共65例,男49例
期刊
中图分类号:TP2文献标识码:A文章编号:1671-7597(2009)0110025-01    自动气象站是由电子设备或计算机控制的自动进行气象观测和资料收集传输的气象站。有三种形式:无人自动气象站,有线遥测自动气象站,长期自动气象站。    一、自动气象站系统组成    自动气象站系统由无线终端及数据中心两部分组成。无线终端主要包括传感器和数据采集器,负责气象要素信息的采集与传送。数据中心包
期刊
[摘要]UPS电源是计算机、通信系统以及要求提供不能中断场合所必须的一种高可靠、高性能的电源。电力电子电源是应用电力电子半导体器件,综合自动控制、计算机(微处理器)技术和电磁技术的多学科边缘交叉技术产品;是节能减排的有力手段,同时也是保证信息安全、工业自动化的基石。以电力电子学为核心的电源产业以市场需求为依托正在突飞猛进的发展。  [关键词]UPS电源 市场需求 发展  中图分类号:TM91 文献
期刊
[摘要]通过介绍电子政务的基本理论以及在现阶段电子政务在我国发展中存在的问题,提出Web Services的体系结构,将其应用到电子政务系统中以解决其通用、跨平台、可维护等方面的问题。  [关键词]电子政务 Web Services 研究  中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2009)0110015-01    近年来,伴随着信息技术的高速发展,网络信息化正在社会的
期刊
[摘要]以两台UPS的并联系统为例,分析UPS并联的等效电路以及简化等效电路,计算出UPS并联系统中环流的表达式,研究供电系统中幅值和相位对环流大小和方向的影响。又在上述分析的基础上进一步提出通过功率分配和调整电压差值两种抑制环流的方法。  [关键词]UPS 并联 环流 抑制  中图分类号:O44文献标识码:A文章編号:1671-7597(2009)0110013-01    一、并联系统中环流的
期刊
天目湖位于常州溧阳市南8公里处,因属天目山余脉,故得名。我们上海的游客对天目湖并不陌生,它兼有太湖烟波浩渺之势,西湖淡妆浓抹之美,千岛湖环拱珠琏之局,充满了绿野仙踪般的意趣。上海旅游集散总站贴心献上2大温泉线路,又多一个理由前往咯!  目的地天目湖御水温泉  御水温泉位于溧阳市南山景区管委会、溧阳市戴埠镇的南山竹海景区,是国家5A级景区温泉。小桥流水,山溪潺潺,古树挺拔,万亩竹海环绕其间,景色绝佳
期刊