




已阅读5页,还剩72页未读, 继续免费阅读
(计算机系统结构专业论文)基于rapidio的高性能通信接口的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
卜海大学硕士学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y 摘要 在当今高性能计算领域中集群以其成本低,通用化占着重要的地位。然而 随着对于高性能计算需求的提升,集群系统的c p u 个数从几十个逐渐发展到了 成千上万个,集群系统中的高速_ 瓦联网络成为集群性能提高和发展的瓶颈。 r a p i d l o 作为一个新生的开放标准,由于其传输速度可高达6 0 g b p s ,并且 具有低延迟,支持3 dt o m s 等多种网络拓扑结构,非常适用于大规模高性能计 算集群中。但是目前r a p i d l o 用于集群中还没有专用接口。m p i 程序必需通过 t c p i p 协议,使用以太网模拟器,才能使用r a p i d l o 网络,严重影响了r a p i d l o 网络的性能。 本文通过对r a p i d l o 用于高性能计算集群的分析,尤其是现有接口的缺点 分析,设计并且实现了基于r a p i d l o 的高性能通信接1 2 1 。本文的丰要贡献如下: 1 ) 分析了现有软件对于r a p i d l o 用于高性能计算集群的缺点。包括r a p i d l o 底 层驱动与以太网模拟器的缺点,m p i 通过t c p i p 协议使用r a p i d l o 的缺点。 2 ) 设计并且实现了基于r a p i d l o 的高性能通信接口。该接口具有基于优先级的 多流,利用r a p i d l o 硬件完成错误校验等特性。并且通过优化r a p i d l o 底层 驱动以及使用动态空闲缓存池提高了该接口的性能。通过利用r a p i d l o 硬件 可靠传输的特性以及维护r a p i d l o 网络中各个节点的信息,该接口在避免建 立连接开销的同时做到了可靠,有序的传输。 3 ) 建立了实验平台,对延迟、带宽、c p u 占用率、内存拷贝性能进行了测试与 分析。并且通过实验分析,优化了内存拷贝函数,使得带宽进一步得到提高。 实验结果表明:基于r a p i d l o 的高性能通信接口较以太网模拟器在延迟、带 宽、c p u 占用率上都有较大优势。 关键词:r a p i d l o ;高性能计算;集群;m p i ;消息传递 l = = 海大学硕十学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y a b s tr a c t i nt h ef i e l do fh i g hp e r f o r m a n c ec o m p u t i n g ,n o w d a y st h ef e a t u r e so fc l u s t e r s l o wc o s ta n dg e n e r a l i z a t i o np l a ya ni m p o r t a n tr o l ei no v e r a l lp e r f o r m a n c e w i t ht h e i n c r e a s i n gd e m a n do fh i g hp e r f o r m a n c ec o m p u t i n g ,w h i l e ,t h e r eh a sb e e nar a p i d i n c r e a s ei nt h en u m b e ro fc p u si nc l u s t e rs y s t e mf r o mt e n st oh u n d r e d sa n d t h o u s a n d s b e c a u s eo ft h i s ,h i 曲s p e e dn e t w o r ko fc l u s t e rs y s t e mw o u l db et h e b o t t l e n e c ki nr e s t r i c t i n gd e v e l o p m e n to fc l u s t e r p e r f o r m a n c e t h en e x tg e n e r a t i o nc o m m u n i c a t i o nf a b r i cb r i n g s t o g e t h e rt h er a p i d l o i n t e r c o n n e c tt e c h n o l o g y , b e c a u s eo fi t s6 0 g b p sb a n d w i d t h ,l o wl a t e n c ya n ds u p p o r t s e v e r a ln e t w o r kt o p o l o g ya r c h i t e c t u r es u c ha s3 dt o m s ,r a p i d l ow o u l db ew e l lf i t f o rl a r g es c a l eh p cc l u s t e r s h o w e v e r , t h e r ei sn or a p i d l os p e c i f i e di n t e r f a c ef o r c l u s t e ra p p l i c a t i o n ,s ot h a tm p ip r o g r a mh a st ou t i l i z ee t h e r n e ts i m u l a t o ra n d t c p i pp r o t o c o lt ou s er a p i d l oc o m m u n i c a t i o nn e t w o r k ,b u tt h i sw o u l dh a v eab a d e f f e c to np e r f o r m a n c e i nt h i sa r t i c l e ,t h ef u n c t i o no fh i g hp e r f o r m a n c ec l u s t e ru s i n gr a p i d l oh a sb e e n a n a l y s i e d ,e s p e c i a l l yf o r t h ed e f e c t s u s i n g t h e o r i g i n a li n t e r f a c e ,t h eh i 曲 p e r f o r m a n c ec o m m u n i c a t i o ni n t e r f a c eb a s e do nr a p i d l o h a sb e e ni m p l e m e n t e d t h e m a j o rw o r ka n dc o n t r i b u t i o no ft h i sp a p e ra r ea sf o l l o w s : 1 ) a n a l y z ed e f e c t so ft h eo r i g i n a li n t e r f a c ef o ru s i n gr a p i d l o ,i n c l u d i n gr a p i d l o b a s ed r i v e ra n de t h e m e ts i m u l a t o r , t h ec o m m u n i c a t i o nb a s e do nt c p i p p r o t o c o lf o rm p iu s i n gr a p i d l o 2 ) d e s i g na n di m p l e m e n tt h er a p i d l ob a s e dh i g hp e r f o r m a n c ec o m m u n i c a t i o n i n t e r f a c e ,i th a st h ec h a r a c t e ro fm u l t i s t r e a mc o m m u n i c a t i o nw i t hp r i o r i t y s c h e d u l i n gs t r a t e g y , m i s t a k ec o n t r o lm a k i n gu s eo fr a p i d l oh a r d w a r e ,e t c m o r e o v e r , t h ep e r f o r m a n c eh a sb e e ni m p r o v e dt h r o u g ho p t i m i z a t i o no fr a p i d l o b a s ed r i v e ra n du s ed y n a m i cb u f f e rp 0 0 1 t h r o u g hm a k i n gf u l lu s eo fr e l i a b l e a n d o r d e r l y d a t a t r a n s f e r r i n ga b i l i t yr a p i d l o h a r d w a r e p r o v i d e d a n d :海大学硕:l 学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y m a i n t e n a n c et h en e t w o r ki n f o r m a t i o no fe a c hn o d e ,t h e yc a l le f f e c t i v e l yr e d u c e t h ec o n n e c t i o nc o s ta n de n s u r et h er e l i a b l e ,o r d e r l yd a t at r a n s f e r 3 ) b u i l dt h et e s tp l a t f o r ma n dd oe x p e r i m e n t so ni t ,t h e na n a l y z et h er e s u l t sf r o m t h e p e r f o r m a n c eo fb a n d w i d t h ,l a t e n c y ,c p uu s a g ea n dm e m o r yc o p y a c c o r d i n gt ot h ea n a l y s i s ,t h em e m o r yc o p yf u n c t i o n sh a v eb e e no p t i m i z e ds o t h a tc a ng e th i g h e rb a n d w i d t h f r o mt h er e s u l t so ft h et e s t s ,i tc a nd e m o n s t r a t e t h a tt h i ss p e c i a li n t e r f a c es h o w sc o n s i d e r a b l ea d v a n t a g e sw i t hh i g hb a n d w i d t h , l o wl a t e n c ya n dc p u u s a g e k e y w o r d s :r a p i d l o ;h i g hp e r f o r m a n c ec o m p u t i n g ;c l u s t e r ;m p i ; m e s s a g ep a s s i n gi n t e r f a c e i i i 卜海大学硕:l 学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y 论文图表目录 图2 1 1r a p i d i o 规范层次结构4 图2 。2 1m p c 8 5 4 8 e 模块图6 图2 4 1 发送数据消息时队列模式的内存结构9 图2 4 2 发送数据消息的目的地属性寄存器定义1 0 图2 4 3 接收数据消息的内存结构1 l 图4 1 1h p r i 的总体构架2 8 图4 2 1h p r i 的数据包格式2 9 图4 ,2 2s e q u e n c en u m b e r 使用示例3 0 图4 7 1 接收缓存区的数据结构3 8 图4 7 2 数据包到达接收缓存区的情况4 0 图4 7 3 用户接收指定源节点的情况4 2 图4 7 _ 4 用户接收任意源节点的情况4 3 图4 8 1 频繁申请与释放内存的情况4 6 图4 8 2 使用动态空闲缓存池的情况4 7 图5 1 1r a p i d l o 实验平台总体构架一5 0 图5 2 1 延迟性能比较一5 4 图5 2 2 带宽性能比较5 5 图5 3 1 总c p u 占用率比较一5 7 图5 3 2 系统c p u 占用率比较一5 8 图5 3 3 硬件中断c p u 占用率比较5 9 图5 4 1 内存拷贝性能比较6 l 图5 4 2 改进内存拷贝后带宽性能比较6 2 表2 5 1r a p i d l o 底层驱动主要函数与功能1 4 表3 3 1h p r j 的函数集2 3 表3 3 2h p r i r e c e i v e 中流号与源地址参数的定义2 6 原创性声明 本人声明:所呈交的论文是本人在导师指导下进行的研究工作。 除了文中特别加以标注和致谢的地方外,论文中不包含其他人已发 表或撰写过的研究成果。参与同一工作的其他同志对本研究所做的 任何贡献均已在论文中作了明确的说明并表示了谢意。 签名:日期: 本论文使用授权说明 本人完全了解上海大学有关保留、使用学位论文的规定,即: 学校有权保留论文及送交论文复印件,允许论文被查阅和借阅;学 校可以公布论文的全部或部分内容。 ( 保密的论文在解密后应遵守此规定) 签名:理导师签名:日期:印即如 上海大学硕。l 学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y 第一章绪论 1 1 课题来源 本课题来源于国家高技术研究发展计划8 6 3 计划子课题:红神网络及m p i 系统等软件的开发与实现( 编号:2 0 0 5 a a l 0 4 0 3 1 ) 。 1 2 课题研究的目的和意义 近年来高性能计算在国民经济、科学技术和围防等领域发挥着越来越大的 作用,各个国家都在大力研究和发展高性能计算。九十年代中、后期,开始出 现了许多用廉价组件拼组起来的集群系统。由于集群系统有性价比高,容易建 造等优点,近年来在高性能计算领域占着重要的地位。全球t o p 5 0 0 t l 】超级计算 机排行榜上越来越多的计算机采用集群系统。 由于在高性能计算集群中,互连网络的通信效率是影响整个集群性能的瓶 颈,所以提高集群互连网络的通信效率是极为重要的【2 】【3 】。为此出现了许多专门 为高性能计算集群设计的专用、高速互连网络。其中具有代表性的有m y r i n e t 4 】 和i n f i n i b a n d 5 1 。这些高速互连网络除了具有高带宽,低延迟的特点外,还具有 众多为高性能计算集群设计的特性【6 】。为了充分发挥这些高速互连网络的特性, 提高高速瓦连网络在集群中的性能。各个高速互连网络都有各自的专用接口。 例如m y r i n e t 的g m 7 1 接1 :3 ,i n f i n i b a n d 的v a p i t 8 】接口。 然而随着对于高性能计算需求的提升,集群系统的c p u 个数从几十个逐渐 发展到了成千上万个,使得集群间的高速互连网络设计变得越来越复杂。现有 的高速互连网络基本上都采用“胖树”拓扑结构【9 】,随着节点的增加,“胖树 拓扑的复杂程度导致很大的网络半径,使网络硬件的综合延迟增加上百倍,集 群系统的整体性能从而受到了制约。为了使集群系统规模能够进一步地提高, 必需要有支持超大规模集群,高带宽,低延迟的新型高速互连网络。例如由i b m 建造的世界t o p 5 0 0 中2 0 0 7 年1 1 月排名第一的高性能计算集群b l u e g e n e l 由 2 1 2 9 9 2 个c p u 组成,l i n p a c k f l 0 1 值达到了4 7 8 2t f o p s 1 。在b l u e g e n e l 中共 j :海大学硕七学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y 有5 套互连网络,其中用于计算的专用高速互连网络采用了3 dt o m s 网络结构, 从而使得在超大规模集群环境下依然可以达到高带宽,低延迟【1 2 】f 13 1 。然而 b l u e g e n e l 中的高速互连网络并没有开放标准,只能用于b l u e g e n e l 系统中。 所以,为了使集群系统能向超大规模发展,必需要有类似于b l u e g e n e l 系统中 在超大规模集群环境下依然可以达到高带宽,低延迟的高速互连网络。 r a p i d l o 是一个开放的标准,它是由m o t o r o l a 等公司率先倡导的一种新型 高性能、低引脚数、基于报文交换的互联体系结构,主要用于紧耦合系统内部 互联,支持芯片到芯片、板到板间的通信。由于其传输速度可高达6 0 g b p s ,而 且支持包括3 dt o m s 网络结构在内的多种拓扑结构【l4 1 ,所以对于集群系统的高 速瓦联网络来说,是一个令人兴奋的发展方向。但是目前还没有支持r a p i d l o 的专用接口,r a p i d l o 用于集群系统的高速互联网络只能通过以太网模拟器将 r a p i d l o 模拟成普通的以太网卡使用,影响了r a p i d l o 网络的性能。 本文对使用r a p i d l o 网络作为高性能计算集群的瓦联网络进行了探索研究 和实验,通过分析r a p i d l o 的硬件特性、现有r a p i d l o 接口的缺点,高性能计 算集群对高速瓦连网络接口的需求,设计并实现了一种基于r a p i d i o 的高性能 通信接口h p r i ( h i g hp e r f o r m a n c er a p i d l oi n t e r f a c e ) 。本课题组其他成员实现了 基于h p r i 的m p i ( m e s s a g ep a s s i n gi n t e r f a c e ) 1 5 专用设备层,使得r a p i d l o 网络 能够更高效地用于高性能计算集群。 1 3 国内外研究概况 当前用于集群系统的高速互连网络主要有m y f i n e t t 4 1 ,i n f i n i b a n d t 5 】和 b l u e g e n e l 1 2 】【1 3 1 的互连网络。1 9 9 9 年末,r a p i d l o 技术规格说明1 0 发布。自 r a p i d l o1 o 发布以来,在r a p i d l o 贸易协会成员的共同努力下,r a p i d l o 得到 快速的发展,2 0 0 7 年5 月发布r a p i d l o 技术规格说明2 0 ,其传输速度已高达 6 0 g b p s t l 6 】。但是由于r a p i d l o 还是一个新生标准。所以国内外对于r a p i d l o 应 用于高性能计算集群的研究非常少。目前f h p c a ( f p g ah i g hp e r f o r m a n c e c o m p u t i n ga l l i a n c e ) 在建造高性能计算集群时打算使用r a p i d l o 作为其高速互连 网络【17 1 。 为了充分发挥各高速互连网络的特性,提高高速互连网络在集群中的性能。 2 上海大学硕上学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y 各个高速互连网络都有各自的专用接1 5 1 。例如m y r i n e t 的g m 7 1 接口,i n f i n i b a n d 的v a p i r 8 1 接1 2 1 。r a p i d l o 在专用接1 :3 方面还处于空白,目前r a p i d l o 用于集群 系统的高速互联网络只能通过以太网模拟器将r a p i d l o 模拟成普通的以太网卡 使用,影响了r a p i d l o 网络的性能。本文对使用r a p i d l o 网络作为高性能计算 集群的互联网络进行了研究,设计并实现了一种基于r a p i d l o 的高性能通信接 口h p r i ( h i g hp e r f o r m a n c er a p i d l oi n t e r f a c e ) 。 1 4 论文结构 本文剩余章节的安排如下: 第二章对r a p i d l o 用于高性能计算集群进行了分析。主要介绍了r a p i d l o 的消息传递机制,分析了现有接1 :3 对r a p i d l o 用于高性能计算集群的缺点。 第三章在第二章的分析下,提出了基于r a p i d l o 的高性能通信接口的设计。 该通信接口具有基于优先级的多流,利用r a p i d l o 硬件完成错误校验等众多优 点。 第四章介绍了基于r a p i d l o 的高性能通信接口的实现。通过优化r a p i d l o 底层驱动,使用动态空闲缓存池等技术提高了该接口的性能。同时使用专门的 数据结构使得可以快速找到可接收的消息。 第五章介绍了实验平台的建立以及实验数据与分析。实验结果表明我们实 现的基于r a p i d l o 的高性能通信接1 2 1 较原来的接1 5 1 无论在延迟还是带宽上都有 大幅度提升,并且在c p u 占用率上也有一定优势。 第六章对本文进行总结,并且提出了下一步的工作。 3 上海大学硕j 学位论文 ! 生! 竺坚! ! ! ! ! ! ! ! 塑! 坐! ! 竺韭! ! ! ! ! ! 堡堑 第二章r a p i d l 0 用于高性能计算集群分析 2 1r a p i d i o 简介 r a p i d l o 是一个开放的标准,由m o t o r o l a 等公司率先侣导的一种新型高性 能、低引脚数、基于报文交换的互连体系结构,丰要用于紧耦合系统内部互连, 支持芯片到芯片、板到板间的通信。可以实现从1 g b p s 到6 0 g b p s 的性能水平。 自r a p i d l o1 0 发布以来,在r a p i d i o 贸易协会成员的共同努力下,r a p i d l o 得 到快速的发展,2 0 0 7 年5 月发布a a v i d i o 技术规格说明2 0 【l 。 r a p i d i o 采用三层分级体系接口。逻辑层位于晟高层,定义全部协议和包 的格式,他们为端点器件发起和完成事务提供必要的信息。传输层规范在中间 层,定义r a p i d l o 地址空间和在端点器件间传输包所需要的路由信息。物理层 规范在整个分级结构的底层,包括器件级接口的细节,如包传输机制、流量控 制、电气特性和低级错误管理。各层所包含内容如图21 1 所示: 口口口口 图21 1r a p i d l o 规范层次结构 这种层次划分提供了在任意层增加新的事物类型而无需更改其他层规范的 灵活性。例如,可以增加新的逻辑层规范,新规范定义的事务将以向后兼容的 卜海大学硕+ 学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y 方式通过现有的r a p i d l o 网络。 此外r a p i d l o 规范还定义了许多由硬件完成的辅助标准,比如错误处理 ( e r r o r m a n a g e m e n t ) ,系统初始化( s y s t e mb r i n g u p ) 等。从而减轻了c p u 的 负担。 本文所做的研究主要基于r a p i d l o 逻辑层的消息传递单元( m e s s a g e p a s s i n g ) ,其可以通过硬件完成包括错误检测与恢复在内的整个消息传递过程。 对于消息传递的详细介绍请见2 4 节。另外,由于r a p i d l o 主要用于紧耦合系 统内部互连,所以整个系统的节点标识、初始化与普通网络不同,详细介绍请 见2 3 节。 由于r a p i d l o 有着高带宽,低延迟的特性。同时支持硬件错误处理等功能 可以减轻c p u 负担。而且支持包括3 dt o r u s 网络结构在内的多种拓扑结构。所 以非常适合用于高性能计算集群的互连网络。 2 2m p c 8 5 4 8 e 简介 本文的实验平台将建立在m p c 8 5 4 8 e 上。m p c 8 5 4 8 e 是由f r e e s c a l e 生产的 p o w e r q u i c ci i i 系列中一款高度集成,高性能的微处理器【2 0 】。通过使用p o w e r p c 的e 5 0 0 v 2 核【1 9 】,以及r a p i d l o 高速互连技术使其无论在计算速度还是通信速度 上都非常出色。m p c 8 5 4 8 e 的功能模块如图2 2 1 所示: 上海大学硕二 :学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y d d r o d r 2 , f c r a m1 f cm 2 m e m o r yc o n t r o l l e r 1 2 c f - c - m i lg m 玑t 引 r t b i r g m i i r m i | m g m t b i r t b i r g m l l r m | i m i i g m i i t 8 1 r t b i r g m i i r m i | r t 翻一g 洲m i i 只m i | 。 c o n t r o l l e r p c c o n t r o l l e r e t s e c 1 叫1 0 0 ,1 g b 1 0 ,1 0 0 1 g b e t s e c 眄丽 l 曼! 业! i 厂雨百 i 曼! 呈塑! l 5 12 k t w t o 1 2c a c h e s f 认m e s 0 0 , c o m h 础e r e n l e c yb 志 竺型呈j e 础啊戢 o c e a n s w i t c h f a b r i c x s e d a lr a p i d l o o r p c ie x p r e s s 4 xr a p i d l o x 8p c ie x p r e s s p c i3 2 - b i t m h z 图2 2 1m p c 8 5 4 8 e 模块图【2 0 】 m p c 8 5 4 8 e 用在高性能计算集群上主要有以下优点: 1 ) 集成带有消息传递单元的r a p i d l o 高速互连网络,最高速度可达1 0 g b p s s , 并且具有低延迟,支持硬件错误检测等优点。 2 ) 基于p o w e r p c 的e 5 0 0 v 2 核,最高频率可达1 3 g h z ,并且集成了5 1 2 k b 二 级缓存,为高性能计算提供了强大的处理性能。 3 ) 集成一个双精度浮点协处理器( a p u ) ,提高了其在科学计算方向的精度和速 度。 4 ) 集成四个带有t c p i p 硬件加速功能千兆以太网控制器,为管理网络和文件 系统提供了充足的带宽。 5 ) 集成d d r 2 内存控制器,支持5 3 3 m h z 的d d r 2 内存,提供了较大的内存 带宽。 6 1 集成p c i p c i x p c ie x p r e s s 控制器,提供了可扩展性。 因此,m p c 8 5 4 8 e 是一款高度集成,高性能的处理器。将其用于高性能计 算集群的建设具有一定的研究意义。 m p c 8 5 4 8 e 集成了符合r a p i d l oi n t e r c o n n e c ts p e c i f i c a t i o n1 2 版本1 8 】规范的 6 卟圳 劬圳响 嗍 晰 s s 墨一 一 一 一 卜海大学硕士学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y 串行r a p i d l o 控制器。该r a p i d l o 控制器支持逻辑层的i o 系统( i os y s t e m ) 和消息传递( m e s s a g ep a s s i n g ) 【2 1 1 规范,8 位和1 6 位的传输层规范,以及1 x 4 x 的串行物理层规范,但是不支持逻辑层的全局共享内存( g s m ,g l o b a l l ys h a r e d m e m o r y ) 规范。理论峰值带宽为1 0 g b p s 。 m p c 8 5 4 8 e 的消息传递单元支持2 个数据消息发送控制器( o u t b o u n d m e s s a g ec o n t r o l l e r ) 和2 个数据消息接收控制器( i n b o u n dm e s s a g ec o n t r o l l e r ) 以 及1 个门铃消息发送控制器( o u t b o u n dd o o r b e l lc o n t r o l l e r ) 和1 个门铃消息接收 控制器( i n b o u n dd o o r b e l lc o n t r o l l e r ) 。消息传递单元共支持3 种操作模式:直接 模式( d i r e c tm o d e ) ,队列模式( c h a i n i n gm o d e ) ,多播模式( m u l t i c a s tm o d e ) 。 并且支持硬件的错误检查和重发机制,从而减轻了c p u 的负担。消息传递的具 体介绍见2 4 节。 2 3r a p i d l o 的节点标识及其初始化 每个r a p i d l o 节点都由一个设备号( d e v i c ei d ) 所标识。该设备号用于在 r a p i d l o 网络上标识传输数据的源地址和目标地址。目前r a p i d l o 规范定义了2 种传输模式,大模式( 1 a r g e ) 和小模式( s m a l l ) 。在小模式中,设备号用8 - b i t 表示,整个系统最多可以包含2 5 6 个r a p i d l o 节点;在大模式中,设备号用1 6 - b i t 表示,整个系统最多可以包含6 5 5 3 6 个r a p i d l o 节点。m p c 8 5 4 8 e 上的r a p i d l o 支持大模式,所以目前可以组建成包含6 5 5 3 6 个节点的高性能计算集群。并且 随便r a p i d l o 规范的发展,今后可能会支持更多的节点。 由于r a p i d l o 主要用于紧耦合系统内部互连,所以其系统初始化过程与普 通的网络不同。r a p i d l o 网络在系统初始化后就已经拥有其他节点的信息。 在系统初始化时,需要在整个r a p i d l o 系统中将一个节点设置成r a p i d l o h o s t ,将其d e v i c ei d 设置为0 x 0 0 ,其他节点设置成r a p i d l oa g e n t ,将其d e v i c e i d 设置为0 x f f 。然后r a p i d l oa g e n t 的系统先启动并且停留在r a p i d l o 的配置 阶段等待r a p i d l oh o s t 对其进行配置。之后r a p i d l oh o s t 启动,并且通过 r a p i d l o 交换机逐个发现r a p i d l oa g e n t ,将其d e v i c ei d 重新设置为以1 开始 递增的序列【2 2 1 。 在整个初始化完成后,r a p i d l o 网络中每个节点都有整个r a p i d l o 网络上 7 上海大学硕士学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y 其他节点的信息。发送消息时可以直接发送。此外,m p c 8 5 4 8 e 还支持r a p i d l o 规范中的热交换( h o t s w a p ) ,以提供在系统运行中添加和删除r a p i d l o 节点的 支持。 2 4r a p i d l o 的消息传递 通过使用r a p i d l o 的消息传递功能,发送端可以使用本地的消息传递控制 器读取本地内存的一段数据,并且通过r a p i d l o 互连网络传递到接收端的消息 传递控制器。在接收端,消息传递控制器将收到的消息存储在本地内存中,并 且通过中断通知接收端进程有新的消息到达,随后,接收端进程可以通过访问 本地内存读取消息。 消息传递共支持2 种类型的消息:数据消息( d a t am e s s a g e s ) 和门铃消息 ( d o o r b e l lm e s s a g e s ) 。数据消息用于在节点间进行大数据量的传送,其最大可 以支持4 k b y t e s 的数据。门铃消息丰要用于在节点间传送非常短的信息,通常 为控制信息。其只支持1 6 b i t 的信息【2 l 】【2 3 1 。下面将分别针对m p c 8 5 4 8 e 对这2 种消息的操作进行说明, 2 4 1 数据消息 数据消息用于在节点间进行大数据量的传送,其最大可以支持4 k b y t e s 的 数据。m p c 8 5 4 8 e 支持2 个独立的数据消息控制器。每个控制器可分为2 部分: 发送控制器( o u t b o xc o n t r o l l e r ) 和接收控制器( i n b o xc o n t r o l l e r ) 。 2 4 1 1 发送控制器 发送控制器负责从本地内存中读取并且发送消息。发送控制器支持2 种模 式:直接模式和队列模式。 直接模式一次只能发送一条数据消息。在发送前,软件必需确保发送控制 器没有忙于上一条消息的发送。然后在发送控制器的寄存器上设置发送数据的 地址、长度、目的地、发送属性等信息。再启动发送控制器,本地内存中的数 据将自动由发送控制器读取并且发送。 上海大学硕:l :学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y 在队列模式中,软件必需在本地内存开辟个区域用于存放消息描述符队 列,然后将该内存的地址传递给发送控制器,发送控制器将该内存区域作为循 环队列访问。队列模式的内存结构如图2 4 1 所示。发送控制器通过队首指针 和队尾指针维护由消息描述符组成的循环队列。在循环队列中,每个消息描述 符含有一个数据消息的具体描述,包括消息在内存中的地址、长度、目的地、 发送属性等信息。 io e a lp r o c e s s o r 图2 4 1 发送数据消息时队列模式的内存结构【2 川 当需要发送一条新的数据消息时,软件首先要确保消息描述符队列没有满。 然后通过队尾指针得到下一个空闲消息描述符的地址。再将新消息在内存中的 地址、长度、目的地、发送属性等信息写入该消息描述符中。最后设置发送控 制器的寄存器通知发送控制器将新的消息描述符添加入队列。 只要队列不空,发送控制器将自动通过队首指针读取下一个将发送的数据 消息描述符,并且将该描述符的内容写入发送控制器寄存器进行发送。每发完 一个数据消息都可以产生一个中断。 2 4 1 2 多播 在发送数据消息时,无论使用直接模式还是队列模式。m p c 8 5 4 8 e 的 r a p i d l o 除了支持对单一目标地址的发送还支持多播发送。通过使用多播发送, 相同的消息可以同时发往最多3 2 个目标地址,但是通过多播发送的消息最多只 能有2 5 6 个字节。 m p c 8 5 4 8 e 的r a p i d l o 将设备号连续的3 2 个节点分成一个组。例如:0 组 9 卜海大学硕士学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y 包含设备号0 到3 1 ,1 组包含设备号3 2 到6 3 。通过将组号写入多播组寄存器 决定发送的目的地组。所以对于每个多播数据消息,其目标地址必需在同一个 组中。通过写入多播列表寄存器决定该组中具体的接收节点。多播列表寄存器 共3 2 位,每一位代表一个目的节点,该位为1 则向该节点发送,否则不向该节 点发送。 2 4 1 3 消息传输优先级 r a p i d l o 在发送数据消息时,可以设置消息在r a p i d l o 网络上的传输优先 级。该优先级通过设置发送数据消息的目的地属性寄存器实现,该寄存器的定 义如图2 4 2 所示: o1234s6781 1 1 23 1 l m me o m l ed t f l c i w l v ld t g t i n t 图2 4 2 发送数据消息的目的地属性寄存器定义【2 0 】 该寄存器的第4 ,5 位即为优先级的定义。可以定义3 个优先级。0 0 b 为最 低优先级,0 1 b 为中等优先级,1 0 b 为最高优先级,1 1 b 作为保留。文章 2 3 中 的示例程序有使用优先级的示例。 当然该优先级指的是r a p i d l o 的数据包在网络上传输时,r a p i d l o 交换机 处理的优先级。r a p i d l o 的发送端发送消息时还将按照发送队列的顺序进行发 送。 2 4 1 4 接收控制器 接收控制器负责从r a p i d i o 网络上接收消息并且存储在本地内存中。在接 收消息前,软件必需先在内存中开辟一块空闲空间用于存放收到的消息,然后 将该空间的内存地址传递给接收控制器,接收控制器把这块空间作为循环队列 使用,如图2 4 3 所示。 当有新的数据消息到达并且存放在事先开辟的内存中后,接收控制器会产 生中断。中断服务程序可以通过读取接收控制器的队首指针得到该消息在内存 中的地址,并且处理这条消息,随后设置接收控制器将该消息移出队列。 l o 卜海大学硕+ 学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y 程序必需尽快将已经到达的数据消息从接收队列中取出,否则旦接收队 列满,再收到新的数据消息时,将会出错。 _ l 卜 p a c k e t sf r o m r a p i d l oi n t e r f a c e 喇p r o c e s s o r d e q u e u ep o i n t e r i n b o u n d m a i l b o x p o r t e n q u e u ep o i n t e r d e q u e u ep o i n t e r 图2 牛3 接收数据消息的内存结构【2 0 j 2 4 1 5 数据消息的格式 l o c a lm e m o r y 对于接收到的数据消息,程序只能得到消息的内容,r a p i d i o 不会提供关 于消息长度,发送节点等
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工作中的团队协作与创新思维培养
- 工业风住宅的设计美学
- 工业风空间设计与装修元素
- 工作流程自动化及智能办公应用
- 工作效率提升的方法论
- 工作场所安全管理与改进措施
- 工程施工人员安全教育培训
- 工程机械的节能减排结构设计
- 工程设计与创新的案例研究
- 工程项目管理与数据决策支持
- 新能源汽车动力蓄电池及管理技术 课件 模块二 动力蓄电池管理系统功能和技术认知
- 无犯罪查询授权委托书
- 屋顶分布式光伏电站施工管理要点
- 广东省珠海市金湾区2023-2024学年七年级下学期期末考试生物试题(无答案)
- 2024年湖南中考化学试卷及答案
- DL-T-300-2011火电厂凝气器管防腐防垢导则
- 何家弘法律英语第四版翻译完整版
- 机修钳工实训室整体方案及流程
- 2024年中考地理简答题答题模板
- 农村自建房施工安全建议
- 2024助贷委托服务协议合同模板
评论
0/150
提交评论