已阅读5页,还剩54页未读, 继续免费阅读
(计算机软件与理论专业论文)bspg:网格驱动的bsp.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
上海大学研究生论文用纸 摘要 为了实现资源的全面共享,解决各种各样的地理上分布的应用问题,网格期望把 因特网整合成一台巨大的虚拟超级计算机( 或者称元计算机) ,以满足社会目益增长 的对计算资源的需求。网格计算日益成为高性能计算领域研究的主流。 网格中问件( 或称网格操作系统) ,屏蔽了各个计算资源间的异构性,为用户透 明使用各个计算资源提供了一系列的服务、协议以及a p i 以方便使用网格资源,但考 虑到程序的可移植性和编程习惯,人们仍然渴望各种通用的传统并行程序环境如m p i , p v m ,b s p 。m p i g ( 及其新版本m p i g 2 ) 是m p i 标准的g l o b u s 实现,该实现在基于 网格的高性能计算中的到了广泛的应用。b s p 并行程序模型相对于其它的并行程序环 境( 如m p i 、p v m 等) 而言,因为具有性能可预见性,避免死锁等优点而开始被人 们广泛接受。 b s p g 是我们设计和实现的一种基于网格的b s p 模型的并行开发环境,它利用 美国g l o b u s 项目提供的网格中间件g l o b u st o o l k i t 提供的各种网格协议和服务,实 现b s p 进程的启动、监视、控制、身份认证、授权、资源分配、可执行程序的自动 传送( s t a g e ) 等功能,使得用户能够在网格上直接运行b s p 程序而无需关一t l , 网格接 口的一些细节问题。本文描述了b s p g 设计细想和重要实现机制:基于g s i 的进程 安全机制,d u r o c 协同进程启动,g r a m 启动进程并监视和控制b s p g 程序的执 行,通信拓扑的产生,栅栏同步原理等,以及计算作业中进程间通信的优化如消息的 包裹的发送、目标调度、以及二项式树的广播和聚集。最后给出了b s p g 的测试结 果,结果表明b s p g 系统在性能上比较接近其它基于局域网的b s p 系统,具有一定 的使用和研究价值。 关键字:网格,异构,g l o b u s t o o l k i t ,b s p ,b s p g 第1 v 页 上海大学研究生论文用纸 a bs t r a c t g r i dc o m p u t i n g ,w h i c hc a np r o v i d es o l u t i o n st om e e tt h e e m e r g i n ga p p l i c a t i o n s r e q u i r i n gt h ea b i l i t yt oe x p l o i td i v e r s e ,g e o g r a p h i c a l l yd i s t r i b u t e dr e s o u r c e s ,i sb ec o m i n g a m a i n s t r e a mt r e n di ns u p e r c o m p u t i n gf i e l d t o o l sa n de n v i r o n m e n to ft h eg r i dc o m p u t i n gt h a th i d eo re n a b l et h eh e t e r o g e n e i t yo f d i f f e r e n t c o m p u t i n g r e s o u r c ec o n s t r u c tt h en e t w o r k e dv i r t u a l s u p e r c o m p u t e r s o r m e t a c o m p u t e r s a l t h o u g hg r i dm i d d l e w a r e ,w h i c hi sa l s oc a l l e dg r i do p e r a t i n gs y s t e m , p r o v i d e sa n u m b e ro fs e r v i c e sa n d p r o t o c o l sa n da p i sf o rp e o p l et ou s et h eg r i dr e s o u r c e s , i ti sd e s i r a b l et ob u i l dv a r i o u sp o p u l a rp r o g r a m m i n gl i b r a r i e ss u c ha s p v m ,m p i ,a n d b s p l i bf o rp o r t a b i l i t yo ft h ep r o g r a m so nc o m p u t i n gg r i da n d s t y l e o fp r o g r a m m i n g a m o n g t h e s el i b r a r i e s ,b s pm o d e li sw i d e l ya c c e p t e db e c a u s eo ft r e m e n d o u sa d v a n t a g e s s u c ha sp r e d i c t i o no f p e r f o r m a n c e ,a v o i d a n c eo f d e a d l o c k i nt h i sp a p e rw e p r o p o s ea n e w i m p l e m e n t a t i o no f b s pt h a ta l l o w su s e rt or u nab s p p r o g r a mo nc o m p u t i n gg r i d ( b s p - 圃t h i sb s p gl i b r a r yu s e ss e r v i c e sp r o v i d e db yt h e g l o b u st o o l k i t2 0f o ra u t h e n t i c a t i o n ,a u t h o r i z a t i o n ,r e s o u r c ea l l o c a t i o n ,e x e c u t a b l es t a g i n g , a n di o ,a sw e l la sf o rp r o c e s sc r e a t i o n ,m o n i t o r i n g ,a n dc o n t r 0 1 v a r i o u sp e r f o r m a n c e c r i t i c a l o p e r a t i o n s ,i n c l u d i n gs t a r t u pa n dc o l l e c t i v eo p e r a t i o n s ,a r ec o n f i g u r e dt oe x p l o i t n e t w o r k t o p o l o g yi n f o r m a t i o n s p e c i a li s s u e so n b a r r i e rs y n c h r o n i z a t i o na r ea l s od i s c u s s e d a tt h ee n do ft h i sp a p e r ,t h er e s u l t sa r ep r e s e n t e d k e ) w o r d s :g r i d ,h e t e r o g e n e i t y ,g l o b u st o o l k i t ,b s p , b s g g 第v 页 上海大学研究生论文用纸 第1 章绪论 1 1 网格计算和高性能计算 在互联网广泛应用于电子商务并经历波浪起伏向前不断发展的今天,在与高性能 计算有关的科学合作领域,正在涌现出另一个具有划时代的新生事物一网格( 6 r i d ) 。 网格的出现,掀起继传统互联网( i n t e r n e t ) 、万维网( w w w ) 之后的第三次浪潮,并将 为信息产业带来无限商机。1 9 6 9 年由于军事科学合作的需要,美国国防部高级研究计 划署( d a r p a ) ,利用信息包传输和开放式整体结构技术,组建了a r p a n e t ,从而诞生了 i n t e r n e t 。1 9 9 0 年,伯纳尔斯李( b e r n e r s l e e ) 在欧洲原子核研究中心( c e r n ) 工作 时,为了高能物理研究的需要发明了万维网。现在,历史又将重演。c e r n 正在计划建 立一个新型而巨大的粒子对撞机,预计2 0 0 5 年完成。它所产生的数据量将是现在的 1 0 0 0 倍,用当前的互联网技术己无法满足计算需求。因此,美国和欧洲的科学家们正 在构造一种叫做网格的新型信息技术基础设施,它可以帮助科学家们自动地处理、组 织、传输和管理这些数据,供欧美与c e r n 有关系的5 0 0 多家大学和研究机构使用。 不难预测,与万维网一样,原来为科研服务的网格也会很快用于传媒、传统产业、电 子商务、娱乐等各个领域。 1 1 1网格概念 美国阿岗( a r g o n n e ) 国家实验室的资深科学家、美国网格计算项目的领导人,伊 安福斯特( i a nf o s t e r ) 这样描述网格:“网格是构筑在互联网上的一组新兴技术, 它将高速互联网、高性能计算机、大型数据库、传感器、远程设备等融为一体,为科 技人员和普通老百姓提供更多的资源、功能和交互性。互联网主要为人们提供电子邮 件、网页浏览等通信功能,而网格功能则更多更强,能让人们透明地使用计算、存储 等其他资源。”由此可见,实际上传统互联网实现了计算机硬件的连通,w e b 实现了 网页的连通,而网格试图实现互联网上所有资源的全面连通。它要把整个互联网整合 成一台巨大的超级计算机,实现计算资源、存储资源、通信资源、软件资源、信息资 源、知识资源的全面共享。互联网的第三次浪潮的实质,就是要将万维网( w o r l dw i d e w e b ) 升华为网格( g r e a tg 1 0 b a lg r i d ) 。 第l 页 上海大学研究生论文用纸 1 1 2网格的发展历史与现状 2 0 世纪9 0 年代初,根据网上主机大量增加,但其利用率却并不高的情况,篾国 嗣家科学基金会( n f s ) ,将其4 个超级计算中心构筑成一个熊够送行元计算 ( m e t a - e o m p u t i n g ) 的整体。元计算的含义是通过网络,烽计算瓷源连接起来,形成对 用户透明的超级计算环境。近年来元计算的这个术语融被网格计算所代替。网格方面 魑 弋表性研究王 车还育美髫的“融家技零网揍( 孵g ) ”、“分毒万亿次级诗箕竣麓 ( d t f ) ”、美国宇航局的i d g 、荧国能源部的a s c ig r i d 以及欧盟的d a t ag r i d 等。 瓣际主驹网掇磺究主要采震开放溅璃、公开台馋翡方式。鸯关瓣穆磷究懿信息,可麸 “全球网格论坛”的阏站o ,上查阅。据悉,美网政府近十年来,累计用于网格的基础 研究经费己近5 亿美元。美莺军方楚为欷极。美国国防部己在规麓实施一个宏大的网 格计划,叫做“全球信息网格”( g l o b a li n f o r m a t i o n g r i d ) ,预计在2 0 2 0 年完成。 麓国政府已决定投资l 亿英镑,用来建设“英豳国家阏格( u kn a t i o n a lg r i d ) ”。 稻晤逸说,网格系统可以分为三个藻本层次:资源层、中间件膜和应糟层。国于 现在的甄联网结构并不是针对网撩计算设计的,为了侵网格计算和现有的结构兼容, 需要有个可扩展的中间件层。它是指一系列工具和协议软件,其功能是胖蔽网格资 源层中计算资源的分布、男槐特燃( h e t e r o g e n e i t y ) ,淘网穆虚黑竣提供逐弱、致 的使用接口。嘲格的中间件层也称为网格操作系统( g r i do p e r a t i n gs y s t e m ) ,它 阉对嚣簧提供耀户缡程接掰蠢朝藏熬强壤,鼓支持嬲糖应用熬开发。数美鞫致痔耱研 发机构为主的推动网格计算的项弱,都采用了一种网络协议“g l o b u s ”o ”。g 1 0 b u s 瑗曩是珏美謇鬻岗黧家实骏室为主,全荚有1 2 所大举籀磺究獍梅参与开笈静两袼项 目。g l o b u s 对资源管理、安仝、信息服务及数据管理等网格计算的关键技术进行研究, 开发能在各种平台上运行静网稽计算工舆软件( t o o l k i t ) “1 ,帮助规划和组建大型的 网掺试验平台,开发适合大型网楱系统运行的大型应粥程序。g l o b u s 认为:在网络王= i = 蟪下的互操作,意味着需要开发一套通用协议,用它来描述信息的格式和信息交换的 规则。g l o b u s 协议作为塞莛l 软件,已经在互联网上公开。g l o b u s 载阚格诗冀拇议是 建立在互联网协议之上的,以互联网协议中的通信、路由、名字解析等功能为基础。 i i 3机遇与挑战 由于种神原因,我国错过了互联网的前两次浪潮即i n t e r n e t 和w e bf : 勺核心技术 的创新工作,这是造成我图的信患产业柱总体上落后于西方闰家的原因之。目前, 圈际信息技术器正客酝酿饕互联嬲载第三次浪湖。据疑兹的热计,阚嬉戆攫要技术标 准将在2 0 0 4 2 0 0 5 年间出现。这不仅是个严峻的挑战,更是一个难逢的历史机遇。 第2 砸 上海大学研究生论文用纸 网格正在成为中国i t 界跟踪世界先进技术潮流的一个主战场。2 0 0 2 年4 月4 日至5 同,国家科技部在北京召开“网格战略研讨会”“1 ,科技部领导、应用领域专家、8 6 3 专家和国外专家一致强调:我国各行各业已经对网格技术提出了实际的需求,网格的 商业应用就在眼前,国内i t 企业要加快步伐,抢占先机。 为适应国际网格技术的发展,我国已经开始实施国家高性能计算环境( 亦称国家 计算网格) ( n h p c e ) 项目“,该项目将处于北京、西安、成都、长沙、合肥、上海 等多个国家高性能中心通过网格中间件连接起来,实现资源的全面共享”“。国家计 算网格将是国家级高性能计算和信息服务的战略性基础设施,在全国范围内为各行业 提供各种一体化的高性能的计算环境和信息服务。另一项目是先进计算基础设施a c i ( a d v a n c e dc o m p u t a t i o n a li n f r a s t r u c t u r e ) 项目。1 。该项目的研究已经取得阶段性 成果,由清华大学计算机系承担的“先进计算基础设施北京上海工程”,将由清华大 学的高性能计算机“t h n p s c 一2 ”与上海大学研制的高性能计算机“自强2 0 0 0 ”等六个 应用节点连接后,可以构成跨地区、跨学科的“虚拟实验室”研究环境。今年国家8 6 3 计划信息领域专项:高性能计算机及其核心软件专项主要也是围绕着网格这一主题的 “0 1 。其它有关我国网格计算的消息可以从中国网格站点上查询。本课题就是在这样 国际国内环境中,开展基于网格的高性能计算环境技术研究的,向用户提供了基于网 格的b s p 编程环境b s p g ,方便用户在无需关心网格具体细节的情况使用b s p 程序, 也保证了大量已经存在的b s p 程序的兼容性。 1 2 并行计算模型 所谓计算模型实际上就是硬件和软件之间的一种桥梁,使用它能够进行有效的算 法设计和分析,在特定模型上的高级语言能够被有效地编译,并且能够用硬件来实现。 在串行计算中,冯诺依曼机就是一个理想的串行计算模型,在此模型上硬件设计者 可以设计多种多样的冯诺依曼机而勿需考虑被执行的软件;而软件工程师能够编写 各种可在此模型上有效执行的程序而无须考虑所使用的硬件。 主要的并行计算模型包括:p r a m 模型、l o f f p 模型以及b s p 模型等。本章将介绍 p r a m 模型,l o f f p 模型,关于b s p 模型的部分将在下一章节介绍。 1 ) p r a m 模型 p r a m ( p a r a l l e lr a n d o ma c c e s sm o d e ) 模型是最常用的一种并行计算的理论模 型,绝大多数并行算法都是在此模型上设计的。粗略地说,p r a m 可看作是共享一内存 的一个同步的处理器集合。 第3 页 上海大学研究生论文用纸 p r a m 模型有以下的一些特点: a 1 忽略了对同一存储模块的不同单元进行并发存取而引起的竞争问题 b 1 处理器之间的通信不需任何开销; c 1 允许并发执行的进程个数随着问题规模的增大而增大。 p r a m 模型( p a r a l l e lr a n d o ma c c e s sm a c h i n e ) 【1 2 】有很多的优点:它特别适合于 并行算法的表达、分析和比较:使用简单,很多诸如处理器间通信、存储管理和进程 同步等并行机的低级细节均隐含于模型中:易于设计算法,或者算法稍加修改便可运 行在不同的并行机上;且有可能在p r a m 模型中加入一些诸如同步通信等需要考虑的 因素。 p r a m 模型的缺点是:离实际的机器距离比较远。 2 ) l o g p 模型 l o g p 模型是基于多计算机提出的一种新的并行计算模型。该模型认为并行机由 许多个本身带有局部存储器的相同处理机通过一强壮的互连网络相连接,处理机之间 采用异步的点到点消息传递来进行通信。 l o 妒模型采用l 、0 、g 和p 这四个参数来刻划m p c ( 女n 图1 一l 所示) ,它们 的具体含义如下: 一p0 f o c e s s o r s ) + l 【i l ( 1 a t e n c y ) 。 f互连网络 图卜1l o g p 虚拟机 l :l a t e n c y ,网络延迟,即从消息进入互连网络开始至到达目的处理机为止所 需的最大时间,l o g p 模型假设任意处理机对之间的网络延迟均为i 。在l 期 间,处理机可以进行本身的计算,从而有可能使计算和通信重叠。 0 :o v e r h e a d ,软件开销,即处理机在接收或发送每一个消息时对消息进行处理 所需的时间。在这段时间内,处理机不能进行本身的计算。 第4 页 上海大学研究生论文用纸 g :g a p ,收发间隔,即处理机在连续发送接受消息时所需的最小时间间隔。1 g 相当于每个处理机可用的通信带宽。显然,g 至少应等于o 。 p :处理机存储器模块数。假定各处理机上一次局部运算只需要单位时间, 并称该单位时间为时间周期,l ,0 和g 均以时间周期为单位进行度量。 1 。3 本文的结构 在程序设计模型中:共享存储器模型容易进行程序设计,但没有提供有关多进程 程序的封装手段,因而也就破坏了模块化程序设计中的基本准则。数据并行模型的优 势在于它单指令多数据的操作模式,能够满足高性能科学计算的需要,但它适用面较 窄,难以描述粗粒度的任务并行等计算问题。消息传递模型是一种比较自然的并行计 算模型“,因其缺少一个全局的地址空间而增加了程序设计的困难。b s p 模型的程序 结构使得程序的设计能够融合他们中的优点,克服其中的缺点。 相对l o g p 和p r a m 模型而言,b s p 模型( 该模型的详细讨论见第二章) 最贴近实 际的机器,同时b s p 模型的远程地址直接访问( d r m a ) 操作,通过变量注册的办法使 得变量全局化,使得程序员在使用变量时和共享存储器模型一样方便,但并不破坏程 序的模块化,同时模型提供的块同步消息传递( b s m p ) 具有一般消息传递的灵活性, 但是能够克服一般消息传递带来的死锁,具有很大的实用价值。 本课题对通用计算用途的b s p 计算模型在网格环境上的实现进行了有效的研究 和探索。b s p 模型是一个独立于体系结构的通用目标的并行计算机模型,能用于大多 数并行计算机、计算机机群和异构网络环境。随着网格技术的推广,其在并行计算领 域得到了越来越广泛的应用。网格中间件为构建虚拟组织,实现网格各种资源的大规 模共享提供了一系列的协议和服务。随着网格技术的不断发展,以及一些科学和工程 计算问题对计算资源的需求增长,一些传统的b s p 程序迫切希望能在网格上运行,以 求充分利用和共享各种资源。在网格上提供基于b s p 模型的并行计算环境是本文工作 的主要出发点,本文其它内容组织如下: 第二章详细讨论了b s p g 系统的设计思想 第三章讨论的是b s p g 系统的基本实现机制。 第四章专门讨论有关b s p g 系统的通信优化问题。 第五章以实例的形式介绍b s p g 系统的编程环境。 第六章给出了b s p g 系统的实际评测结果。 第七章得出结论和进步的工作方向。 第5 页 上海大学研究生论文用纸 第2 章b s p g 的设计思想 2 1g l o b u s 网格体系结构 g l o b u s 是美国a r g o n n e 国家实验室的研发项目,全美有1 2 所大学和研究机构参 与了该项目。g l o b u s 对资源管理、安全、信n , n 务及数据管理等网格计算的关键理论 进行研究,开发能在各种平台上运行的网格计算工具软件( t o o l k i t ) ,帮助规划和 组建大型的网格试验平台,开发适合大型网格系统运行的大型应用程序。t o o l k i t 是 g l o b u s 最重要的成果,其第一版在1 9 9 9 年推出,最新版本是2 0 0 2 年推出的2 2 版本。 g l o b u st o o l k i t 源码开放,任何人都可以从其网站上下载源代码,2 0 0 3 年年初将推 出基于o g s a ( o p e ng r i ds e r v i c ea r e h i t e c t u r e ) “3 体系结构,融合了w e bs e r v i c e 技术的g l o b u s 工具包3 0 版。目前,g l o b u s 的技术已在n a s a 网格( n a s ai p g ) 、欧洲 数据网格( d a t ag r i d ) 、美国国家技术网格( n t g ) 等8 个项目中得到应用。2 0 0 2 年 g l o b u st o o l k i t s 被r & d 杂志评为2 0 0 2 年度i 0 0 件最重要的技术之一。“” 按照g l o b u s 的观点,大型应用项目应该由许多组织协同完成,它们按照特定的 规则形成一个“虚拟组织”0 1 ,各组织拥有的计算资源在虚拟组织里共享,协同完成 项目。所有用于共享的实体都是资源,计算机、存储器、数据、软件等是资源,分布 式文件系统、缓冲池等也是资源。对于共享而言,有价值的不是设备本身而是实体的 接口或界面。现有的共享方案,比如互联网、p 2 p 、j a v a 、c o r b a 等,要么在共享配置 的灵活性上、要么在共享资源种类上不能完全满足虚拟组织的需要。g l o b u s 并不试图 取代现有技术,而是希望在现有技术之上建立更高层次的共享。 图2 - ig l o b u s 协议结构及与互联网协议的关系 第6 页 oj_uo_h 大多数消息传递编程库如p v m ,m p i ,都是基于一对发送和接受原语,很容易 导致死锁 4 ”。b s p 程序被分成一个个串行的超步,不存在显式的发送和接受操 作,死锁也不再发生。 编写m p i g 程序时,如果使用的通信调用顺序不当,很容易造成死锁。设如果有 两个进程利用m p i 安如图2 4 所示的方式进行通信时,总会产生死锁。 c a d b 图2 - 4 容易产生死锁的通信调用次序 进程0 的第一条语句a 能否完成取决于进程l 的第二条发送语句d ,即a 依赖于 d ;从执行次序上可以明显地看出,进程0 向进程l 发送的语句c 的执行又依赖于它 前面的接收语句a 的完成,即c 依赖于a :同时进程l 的第一条接收语句b 的能否执 行又取决于进程0 的第二条语句c 的执行,即b 依赖于c ;从执行次序上可以明显地 看出,向进程0 发送消息的语句d 的执行又依赖于b 的完成。故有a 依赖于d ,而d 第1 6 页 上海大学研究生论文用纸 又依赖于b ,b 依赖于c ,c 依赖于a ,形成了一个环,进程0 和进程1 相互等待,彼 此有无法执行下去,必然导致死锁。类似的,当两个进程都现发送时,也可能会产生 死锁,但只有当发送缓冲区满时才会死锁。 为了避免死锁,必须由程序员自己来安排发送和接收的次序。而在b s p g 系统中, 进程间的通信仅仅在b s p _ s y n c ( = ) 中才真正执行,发送和接收的次序由b s p g 系统本身 所决定,用户只需关心算法本身而不必担心死锁的问题。 b s p 易于使用,并且能够预测程序的正确性和时间复杂性,而其它的却不能。 前面提到的所有b s p 的实现,着重于特定设备和平台的性能,而不是异构性和分 布式计算能力,这些特点大大地限制了b s p 模型的应用范围。但是,科学和工程领域 对计算资源需求的增长迫切要求能够解决异构性和分布式计算,扩大计算能力。 m p i c h g 2 的广泛应用,说明了这一点。另一方面,b s p 模型的优点和b s p 程序的可移 植性促使我们开发b s p - g 。各种网格中间件的诞生,提供了构造抽象的超级计算机的 接口,为解决当前的问题提供了可能性。如前所述,分层次的体系结构屏蔽了不同地 点的不同各种平台和操作系统的异构性。基于网格的b s p 实现,能够很好的解决当前 的b s p 的不足之处。从层次的角度上来看,b s p g 的整个架构于g 1 0 b u st o o l k i t 中间 件上,利用它提供的各种a p i 来实现各种网格上的资源共享,包括用户的认证,授权, 单一签名( s i n g l es i g no n ) 任务的递交,进程的启动和进程状态的查询。从用户 的角度上来看,整个b s p 程序的运行机制,完全等同于传统的b s p 运行模式。用户没 有必要关心下层网格的具体实现细节以及不同计算资源的特征。编程者无需考虑具体 的平台和操作系统的细节,大量已经存在的b s p 程序也可以不加任何的修改就可以直 接移植到网格平台上,充分发挥网格的性能。其次,网格中间件定义了一系列独立于 平台的数据类型,b s p 的不同进程即使运行在不同的平台上,网格中间件会自动转换 为统一的数据表示形式,用户无需考虑每一种数据类型的长度等与特定平台相关的细 节。当然该系统的性能因素也是我们必须要考虑的重点内容之一。所有这一切使得使 用相同代码在个大规模的异构计算环境上进行并行计算成为可能。这是b s p g 并行 库系统所要实现的总体思想和达到的目标。 第1 7 页 上海大学研究生论文用纸 第3 章b s p g 系统的实现 3 1b s p 模型的重要核心原语 b s p - - g 主要采用s p m d ( s i n g l ep r o g r a mm u l t i p l ed a t a ) 程序设计模型“。其 主要任务就是解决大小为n 的问题如何在p 个处理器上进行划分,使得每个处理器控 制大小为n p 的块。b s p g 提供了一个结构独立的通信库,其核心库( c o r el i b r a r y ) 由2 0 条原语组成,它们的详细描述见附录一。这些核心b s p 操作可用于: 夺建立一个b s p 程序。 夺终止计算。 夺探讨每个正在执行的进程的环境属性。 夺参与b a r r i e r 同步。 夺进行通信。它具有两种通信方式:直接远程内存存取( d r m a d i r e c tr e m o t e m e m o r ya c c e s s ) 方式与b u l k 同步消息传递( b s m p b u l ks y n c h r o n o u sm e s s a g e p a s s i n g ) 方式。 夺以高性能( 无缓冲) 方式通信。以往的一些消息传递系统,例如p v m 、m p i ,都 提供一些原语来实现多种特殊的通信模式 4 5 】,包括广播( b r o a d c a s t ) ,散布 ( s c a t t e r ) ,聚集( g a t h e r ) ,交换( e x c h a n g e ) ,归约( r e d u c t i o n ) ,扫描( s c a n ) 等。 这些标准的通信模式也经常在b s p 算法设计中出现,于是引入了b s p 集群通信 操作。b s p 集群操作可以在核心操作的基础上实现,也可以直接在硬件体系结构 上实现。 接下来的部分将分别讨论各个部分相关的实现细节和技巧。 3 2g l o b u s 开发工具包 为了有效地支持网格计算环境,g l o b u s 工具包针对g l o b u s 项目中提出地各种协 议。“,提供了一系列的服务( s e r v i c e ) ,软件库,编程接口( a p i ) 和使用例子。 从总体上讲,g l o b u s 工具包的实现主要有以下几方面的内容: ( 1 )网格安全,这是网格计算正常运行的保证,g l o b u s 主要是结合目前成熟的分 布式安全技术,并进行一定的扩展,以适合网格计算环境的特点。b s p g 系 第1 8 页 上海大学研究生论文用纸 ( 2 ) ( 3 ) 统直接使用其安全机制为运行b s p g 进程提供安全保证。 网格信息的获取与分布,在网格计算环境中如何发布资源信息,如何查询、 检索资源是有效使用各种资源的前提条件,b s p g 系统利用查询处理器的负 载情况实现了一些简单的负载平衡。 网格的资源管理,由于网格环境中资源主要分布在广域网环境中,采用目前 常用的区域网资源管理技术不能对其进行有效地管理,为此g l o b u s 在区域 网资源管理之上实现了更高层次地资源管理技术,实现广域网环境下的高 速、可靠的数据传输和实现对应用程序基本透明的远程文件i o 访问是 g l o b u s 考虑的重要内容。上述的几方面的技术可以使得开发在网格计算环境 下的应用更加方便。 图3 - 1g l o b u s 工具包在网格计算逻辑结构中的组成 图3 1 列出了目前g l o b u s 提供的一些常用的组件,以及各个组件所处于的层次。其 中与b s p g 密切相关的组件主要有一下几个: 1 网格安全基础设施一g r i ds e c u r i t yi n f r a s t r u c t u r e ( g s i ) :g s i 负责在广域网络下的安 全认证和加密通信,提供单点登陆功能,远地身份鉴别功能,数据传输加密功能, 提供了基于g s i 协议的a p i ( g s i a p i ) 接口。这是保证网格计算环境安全性的 第1 9 页 上海大学研究生论文用纸 核心部分。 2 g l o b u s 资源分配管理一g l o b u sr e s o u r c ea l l o c a t i o nm a n a g e r ( g r a m ) 4 8 1 :g r a m 负 责远程应用的资源请求处理,远程任务调度处理,远程任务管理等工作,负责对 r e s o u r c es p e c i f i c a t i o nl a n g u a g e ( r s l ) 4 9 1 信息的解析和处理工作,是网格计算环境 的任务执行中心。 3 元计算目录服务- - m e t a c o m p u t i n gd i r e c t o r ys e r v i c e ( m d s ) :m d s 主要完成对网格 计算环境中的信息的发现、注册、查询、修改等工作,提供对网格计算环境的一 个真实、实时的动态反映。主要基于l i 曲t w e i 曲td i r e c t o r ya c c e s sp r o t o c o l ( l d a p ) 协议,其处理的信息主要是网格计算环境中的各种资源( 包括数据资源、计算资 源等) 、服务和其它主体( e n t i t y ) 的描述。m d s 是网格计算环境中的信息服务中 心。 4 全局二级存储服务一g l o b a la c c e s s t os e c o n d a r ys t o r a g e ( g a s s ) :g a s s 简化了在 g l o b u s 环境中应用程序对远程文件i o 的操作,使得u n i x 和标准c 语言i o 库的 应用程序基本不用改动就可在g l o b u s 环境中执行。g a s s 是一个支持网格计算环 境远程y o 访问的中间件。 3 3 网格编程环境的设置 3 3 1基本环境的配置 用户在运行一个b s p g 程序之前,需要产生合适的网格计算环境。这是开发和运 行b s p g 系统所必须的一个过程,整个过程十分复杂,但在整个系统的运行中仅需设 置一次,其中最主要的步骤包括: 1 安装g p t ( t h e g r i d p a c k a g i n g t o o l k i t ) 。g p t 是一套用于打包,解包,编译、 连接和安装g l o b u s 软件包的工具集。为了提高g l o b u s 中间件的可移植性, g l o b u s 2 ,0 没有采用任何特定平台的安装工具如l i n u x 的r p m 等。在安装 g l o b u s 软件包前,必须先安装g ”。 安装相应的软件包。g l o b u s 工具集中的客户端,服务器端,以及s d k 软件 包( b u n d l e ) 。需要运行b s p g 程序或需要进行网格软件开发的站点必须要 安装服务端和s d k 包,而单纯用于向远程系统递交b s p g 程序的站点可以 只需安装客户端的软件包。每一个包都由自己特定的选项和编译器特性 第2 0 页 上海大学研究生论文用纸 f f l a v o r ) 。下表列出了常见的g l o b u s 软件包及其相应的选项。 b u n d l e d a t am a n a g e m e n tc l i e n t d a t am a n a g e m e n ts e r v e r i n f o r m a t i o ns e r v i c e sc l i e n t 1 1 1 f o r m a t i o ns e r v i c e ss e r v e r r e s o u r c em a n a g e m e n tc l i e n t r e s o u r c em a n a g e m e n ts e r v e r o p t i o n s s t a t i c = 1 f l a v o r s g c c 3 2 d b g g c c 3 2 d b g g c c 3 2 d b g p t h r g c c 3 2 d b g p t h r g c c 3 2 d b g s t a t i c = 1 g c c 3 2 d b g 3 利用s e t u p - g s i 以r o o t 身份设置网格的d n ( d i s t i n g u i s h i n gn a m e ) ,设置所属的虚 拟组织名称,产生g l o b u s 安全目录$ g r i d _ s e c u r i t y _ d i r 路径( 默认的 路径为e t c g r i d s e c u r i t y ) 配置同时将安全配置文件移到该目录下,在 $ g r i d _ s e c u r i t y _ d i r c e r t i f i c a t e s 中指定g l o b u sc a 证书授权和签署的策 略。 4 客户端用户产生安全认证证书并请求认证中心签署。进行g l o b u s 任务递交与 执行之前,用户与服务节点和服务设施需要获得安全认证证书。即可使用 g r i d - c e r t r e q u e s t 或对应的安全函数创建用于安全的公钥、私钥和未签署的安 全证书。然后通过e m a i l 或其它安全途径把递交安全认证中心。 5 接收签署后的证书。安全认证中心收取签署安全认证证书的请求后,会对用 户或服务节点进行考查,考查合格后,把签署的安全认证证书返回给请求方。 接收到认证证书后,将用户证书放、h o s t 证书、以及l d a p 证书分别在用户 主目录下的g l o b u s 下的目录、e t c s e c u r i t y 、以及$ g l o b u s l o c a t i o n e t c 下。 6 向节点申请放权使用。服务端为了能够允许某一用户使用其资源,必须通过 e t c g r i d s e c u r i t y 鲥d m a p f i l e 文件将远程用户的证书中的网格i d ( g r i di d ) 或者称证书主题( c e r t i f i c a t es u b j e c t ) 映射为一个本地用户。服务器端通过 对该本地用户的权限加以控制,从而限制相应的远程用户的权限。用户将该 网格i d 递交该服务器端的系统管理员,在服务器的系统管理员将该i d 添加 到g e t c 鲥d s e c u r i t y g r i d m a p f i l e 以后,才有权利使用该计算站点的资源,用 户b s p - - g 程序的机器表中只允许添加获得使用权限的计算资源。 第2 l 页 上海大学研究生论文用纸 3 3 2b s p g 安全机制 当用户需要运行一个b s p - - g 程序时,必须首先运行g r i d j 矿o x y i n i 命令启动 代理向每一个远程计算站点鉴别该用户的身份,这个过程实际上提供了一个单一签名, 的机制。为确保安全,代理的有效期一般为1 2 小时,当代理失效期以后,必须重新 启动代理。用户可以通过g r i d - p r o x y - i n f o 命令查看当前的代理的状态。 图3 - 2b s p g 中的g l o b u s 安全体系结构 由于g l o b u s 的g s i 对安全做了大量的工作,使得在网格环境中的任务递交与执 行的安全性和方便性有了很大的提高。下面进行b s p g 程序在任务递交与执行过程中 安全机制的一个简单描述( 任务的安全认证过程如图3 2 所示) ,从中可以看出o s i 在网格环境中作用: 1 用户在提交b s p g 任务前,即可通过命令行命令g r i d - p r o x y ,i n i t 创建一个临时的 局部的、有时间限制的用户代理( p r o x y ) ,用户代理的安全证书由用户签署,有 给定的有效期。 2 用户代理与远端服务节点的g a t e k e e p e r 之间进行安全鉴别,即对二者的安全证书 和身份进行鉴别。 3 通过相互安全鉴别后,用户代理把b s p - g 计算任务提交给g a t e k e e p e r ,由g a t e k e e p e r 把任务交给任务管理者( j o b m a n a g e r ) ,任务管理者产生相应的b s p g 计算进程并 上海大学研究生论文用纸 监视进程的运行。 4 如果b s p g 进程在执行过程中需要其它的远程资源,也必须在b s p g 进程与资 源代理之问进行相互安全鉴别,通过安全鉴别后,b s p g 进程才可以使用资源。 5 如果b s p g 进程在执行过程中需要访问远端数据或文件,也必须在b s p g 进程 与远端文件服务资源代理之间进行相互安全鉴别。通过安全鉴别以后,还要进行 授权,本地d 映射后,任务进程才可以进行数据和文件访问。 6 当任务执行完以后,用户可通过g r i d - p r o x y d e s t r o y 或对应的函数撤销用户代理。 3 4b s p g 的体系结构 图3 - 3b s p g 的体系结构 b s p g 系统在层次上属于高层服务和工具。b s p g 通过b s p r u n 命令脚本产生资 源描述文件,这个描述文件在b s p r u n 调用g l o b u s r u n 时,告诉动态更新请求的在线 协分配器d u r o c ( t h ed y n a m i c a l l y - u p d a t e dr e q u e s t0 n l i ec o a l l o c a t o r ) ”o3 系统所需 的资源状态。d u r o c 在解析这个资源描述文件后,与文件所指定的g r a m 进行交互。g r a m 根据资源描述文件与本地资源管理器进行交互,产生相应的进程。这些本地资源管理 器可能是f o r k ,l s f 或者p b s 等等。每一层都通过向上一层提供一定的抽象接口来屏 蔽各种异构性。 第2 3 页 上海大学研究生论文用纸 3 5b s p g 进程的启动 1 进程的启动过程 图3 - 4 进程的启动过程 图3 4 展示了一个b p s - g 进程的启动过程。b s p - g 系统的作业启动命令为 b s p r u n 。命令b s p r u n 首先查询l _ i f d s 系统,获得允许范围内的负载最轻的计算节点以 实现简单的负载平衡( 详细的讨论见下面) 。利用这些节点的信息,自动生成r s l 文 件,该文件给g l o b u st o o l k i t 工具g l o b u s r u n 命令提供进程启动节点的依据,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 社会资本与精准扶贫路径
- 2026年公共场所集中空调清洗消毒规程
- 博罗县2026届数学三年级第一学期期末学业水平测试试题含解析
- 上海科技大学《Android 移动开发》2025-2026学年第一学期期末试卷(B卷)
- 2026年餐饮行业食品安全管理体系
- 上海科学技术职业学院《安装工程技术》2025-2026学年第一学期期末试卷(B卷)
- 北方工业大学《美丽中国(双语)》2025-2026学年第一学期期末试卷(A卷)
- 食品企业安全车间布局原则与流程
- 临床儿童阑尾炎特点、病因、分类、诊断、鉴别诊断要点及治疗要点
- 中北大学《工程管理概论》2025-2026学年第一学期期末试卷(A卷)
- 改革开放史智慧树知到课后章节答案2023年下临沂大学
- 五年级下册美术7《飞天畅想》
- 唾液腺疾病-唾液腺肿瘤(口腔组织病理学课件)
- 培训testlab中文手册signature testing观察信号调整通道参数
- 教科版高中信息技术(2019)必修一全册教案
- DIY智慧小屋-带你玩转物联网知到章节答案智慧树2023年浙江大学
- 儿科常见疾病诊疗智慧树知到答案章节测试2023年湖南中医药大学
- 基于UG的基座压铸模设计毕业设计
- LY/T 3130-2019木栈道铺装技术规程
- GB/T 244-2008金属管弯曲试验方法
- GB 17498.1-2008固定式健身器材第1部分:通用安全要求和试验方法
评论
0/150
提交评论