- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
支持映射查找的MPICH分段消息队列
缪澄宇;雷咏梅
【摘要】为在通信密集型应用中,提高MPI消息队列操作性能,提出一种支持映射
查找的分段队列管理机制.分析MPICH消息队列管理机制,剖析消息队列核心操作
的工作原理.设计一种分段消息队列机制,通过映射函数直接定位到相应分段,避免无
关项的遍历,加速消息的接收操作.实验测量通信密集型程序Radix和N-body的通
信时间,进行量化比较,比较结果表明,在队列长度达到384时,分段映射机制可以获
得4倍以上的加速比.
【期刊名称】《计算机工程与设计》
【年(卷),期】2016(037)010
【总页数】9页(P2661-2669)
【关键词】高性能计算;消息传递接口;密集型通信;消息队列;映射查找
【作者】缪澄宇;雷咏梅
【作者单位】上海大学计算机工程与科学学院,上海200444;上海大学计算机工程
与科学学院,上海200444
【正文语种】中文
【中图分类】TP302.1
消息队列是消息传递接口(MPI)中必不可少的数据结构,它支持最基本的异步通信。
随着计算节点的不断增加,消息队列长度不断增加。此外,通信密集型应用加快了
消息在队列中堆积。长队列导致消息查找效率下降,从而导致通信延迟并影响整个
并行程序的效率。MPICH中采用线性单链表管理消息队列[1],消息查找需要线性
遍历,这种组织方式当形成长队列时,查找匹配的计算量激增,同时大量的指针移
动导致缓存的命中率下降,从而带来接收延迟。有研究结果表明,线性遍历4095
个消息元素需要140ms[2],这表明需要提出针对具体的应用场景的数据结构来管
理消息队列。MPI中每个消息都含有一个匹配因子,匹配因子唯一代表一则消息,
MPICH通过逐个比较匹配因子的方式查找消息,显然这种方法没有利用匹配因子
自身的属性加快查找。通过分析MPICH中消息队列的组织方式和运行原理,提出
了一种支持快速查找消息的队列管理机制,在具体应用环境中能够保证队列操作的
高效性。实验结果表明,队列分段和映射机制缩短了队列查找长度,在队列长度达
到32、160、384时,分队映射机制分别达到1.5、2、4倍的查找加速。
关于消息队列长度与通信延迟关系的研究,BrightwellR指出节点数量与MPI队
列长度正相关[3]。消息队列的最大有哪些信誉好的足球投注网站长度和平均有哪些信誉好的足球投注网站长度随着节点增加而增加。
实验结果表明长的PRQ队列和UMQ队列对通信性能有消极影响,由于遍历长度
的增加,消息查找的性能下降了至少60%。KellerR分析了UMQ队列在一些实
际应用下的特点[4,5],指出通信密集型应用更容易产生长的UMQ队列。
为了提高消息查找效率,UnderwoodKD提出一种硬件匹配电路用于加速队列的
遍历匹配[6]。队列管理模块由多个逻辑门电路组成匹配单元,配备高速的SRAM
存储消息。硬件队列管理单元能够明显地加快消息的匹配,但局部内存仅能容纳有
限的消息,消息数量较多时性能下降较快。网络接口卡局部内存有限,将需要匹配
的消息完全放入网卡缓存会带来不稳定,TanabeN提出一种将消息头和消息体分
离的策略LHS[7],LHS机制将限定长度消息头和部分消息缓存在网卡的快速局部
内存中以加快消息匹配。此种方法在很大程度上缓解了网卡内存无法加载过多消息
请求的问题。
关于通过软件策略提升消息队列性能的相关研究方面,HassaniA提出基于
Portals4.0通信接口实现的MPI版本[8,9],Portals4.0接口将消息队列直接与网
络接口卡相连,绕开了操作系统网络协议,提升了队列处理能力。然而,
Portal4.0由于缺乏流量管理,且不支持非连续数据类型,到目前为止,基于
Portals接口MPI仅实现了部分的通信函数。ZounmevoJA提出了一种可伸缩的
多维消息队列管理机制[10,11],在大规模应用中,能保持较好的性能和较低的内
存消耗。通过对Rank值多维分解,利用ContextId和Rank的特性,建立
文档评论(0)