共享存储机群中用户级通信协议的实现和性能

共享存储机群中用户级通信协议的实现和性能

尹宏达[1]2004年在《共享存储机群中用户级通信协议的实现和性能》文中进行了进一步梳理在机群环境中,所有的主机都通过一个高速的互连网络组成分布式系统,底层的网络硬件通常具备几个微秒的网络硬件延迟和千兆比特每秒的带宽。然而传统的通信协议在通信的关键路径上需要进行状态切换和数据拷贝,而且在接收数据时将会发生频繁的中断,以至于通信软件不能充分地把网络硬件的高性能传递给用户进程。本文将主要介绍用户级通信库的实现方法和性能的分析优化。本通信库通过在数据的收发过程中绕过操作系统的干预,把原本需要由操作系统内核在系统态下完成的通信协议处理转移到用户空间由用户进程在用户态下完成:通过建立地址映射关系,我们可以使用户进程直接访问网络接口卡上的寄存器,同时也让网络接口卡直接访问用户进程空间的数据。在通信库的实现中,我们在机群内各结点间的通信过程中尽量避免中断的发生。这一方面可以通过预先初始化接收缓冲区,减少其在接收消息时发生的中断数量;另一方面可以由通信软件和网络接口硬件配合完成远程直接内存访问,减少共享存储机群中访问远程数据而引起的中断和数据拷贝。我们所设计实现的用户级通信库适用于共享存储机群环境,可以获得较好的性能:在PingPong测试程序下,最低单向延迟5.59μs,I/O总线的带宽利用率达到88%。我们对获得的初步结果进行了进一步的优化,优化后单向延迟平均下降了0.7μs,I/O总线的带宽利用率超过94%。本文的研究工作表明:在共享存储机群中,采用用户级通信技术可以有效地将网络互连硬件的性能提供给上层应用程序。

安学军[2]2003年在《机群互连网络研究》文中进行了进一步梳理机群系统以良好的可扩展性、可用性、可靠性和很高的性能价格比占据着高性能计算机系统的主导地位,机群系统中处理结点的性能不断提高,要求系统内互连网络的性能也必须相应提高,否则会成为整个系统的瓶颈,因此对机群互连网络的研究是高性能计算机体系结构研究的重要课题。面向网格的高性能计算机体系结构是计算机体系结构发展的重要方向,内部网格系统中的网格交换机要求具有支持应用级通信的能力,以实现对系统中资源共享的支持,因此研究网格交换机及其网络结构具有重要意义。本文结合曙光高性能机群互连网络UX8的设计与实现,对如何实现高带宽、低延时、可扩展的机群互连网络的关键技术进行了研究。以智能中心提出的“面向网格的高性能计算机体系结构”为基础,研究了网格交换机的特点,提出了一种光纤全互连网络结构。具体研究成果如下:1.通过对主流机群互连网络的研究,归纳出了设计和实现机群互连网络的几项关键技术,它们是:互连网络的传输通道形式与时钟同步方式;虫洞路由交换与基于数据片的流量控制方式;可扩展的网络拓扑结构;简单的链路传输协议。本文提出了描述这些关键技术相互关系的层次模型。2.提出了一种采用伸缩缓冲流量控制方法、缓冲虫洞路由交换机制、支持可变长度数据包传输的链路控制协议。3.提出了实现交换芯片内部链路调度的LRSP调度策略。该策略的调度过程以数据包为单位,按近期最少服务优先原则为输入请求分配传输通道,逻辑实现结果表明,一次调度过程可以在3个时钟周期内完成。4.提出了采用双通道端口,分布式调度方式的交换芯片体系结构。双通道端口提高了交换芯片的端口带宽,分布式调度方式加快了芯片内部的仲裁处理速度,从而减小了寻径延时。基于FPGA器件的UX8交换芯片实现结果表明,双通道端口带宽达到了4Gbit/s,寻径延时为256ns。5.提出了网络适配器的设计原则。在网络适配器内部设置DMA控制器和通信处理机可以改善网络与处理结点之间的数据传输性能,同时提高了通信软件设计的灵活性。测试结果表明,提高通信处理机的处理能力是减小PIO方式下通信延迟时间的重要手段。6.提出了应用在内部网格系统中的光纤全互连网络结构。在该网络中取消了交换机,把路由选择功能转移到网络适配器上。本文设计了全互连网络的网络适配器结构,并定义了适配器各模块的功能。

崔伟[3]2004年在《IntraGRID环境下通信机制的研究与实现》文中认为网格以共享资源协同计算为目标将成为今后服务于各领域的基础设施,该设施的核心部件包括高性能计算设备、存储设备和贵重仪器等重要资源。目前,机群系统以其优越的可扩展性、可用性、可靠性和性价比在高性能计算机系统中占有主导地位。随着机群系统的大量部署及其上应用的不断增加,如何联合机群的计算力为分布式高性能计算等网格应用提供更大规模的计算平台,是高性能计算机体系结构研究的一个重要课题。面向网格应用的计算机是高性能计算机体系结构发展的重要方向之一。作为本文研究背景的IntraGRID是一种松散耦合的网格计算机结构,把分布的机群联合成为统一的机算机备,用于执行分布式高性能计算等网格应用。IntraGRID的耦合程度比机群松散,其上的并行算法需要做相应调整,例如通过划分通信密集和通信稀疏的进程组,合理调度进程从而更好的利用这种平台结构的特点。IntraGRID通信系统是IntraGRID的关键部件,为其上的分布式高性能计算环境提供底层通信协议,由机群内的机群通信协议和机群间的外部通信协议构成。IntraGRID通信系统使用统一的协议进行机群的内部和外部通信,能够有效的支持分布式并行计算环境。机群间通信协议由网格网关(Grid Gateway)实现,采用网关式的消息转发机制,该方式区别于MPICH-G2和PACX-MPI等网格使能的MPI计算环境采用外部通信机制,更适合在同构机群组成的IntraGRID中进行高效的消息传递。Grid Gateway连接机群互连网络和机群间的高速IP网络,通过转发不同网络上的消息实现机群间通信。Grid Gateway支持多结点转发,通过分流外部通信的消息能平衡机群间通信时节点的负载。本文介绍了IntraGRID及其通信系统的结构和特征,详细分析了Grid Gateway的实现机制,以及全局标识符、机群间通信语义、流量控制、多重路由机制、负载平衡等关键问题,并且给出了机群间通信协议的设计与实现,对机群间通信协议性能、机群间MPI性能进行评价和分析。

章隆兵[4]2004年在《提高机群OpenMP系统性能的关键技术研究》文中指出随着微处理器和高速网络技术的发展,机群由于性能价格比高和可扩展性好等特点,正逐渐成为并行计算的主流平台。适合机群的并行编程模型能够促进机群的广泛应用,从而促进并行应用的发展普及,成为当前关注热点。目前消息传递是机群上主流的并行编程模型。但是程序员在机群上使用消息传递编程相当困难,这一点阻碍了机群的广泛应用。一般认为,共享存储比消息传递易于编程。OpenMP作为当前共享存储的事实编程标准,具有易于编程和支持增量并行的特点。机群OpenMP系统在机群上提供了共享存储的OpenMP计算环境,它结合了OpenMP的易编程性和机群的可扩展性,引起了广泛的研究。由于机群通常采用廉价的商业网络互连,通信开销较大,机群OpenMP系统要想获得理想的性能较为困难,而具有良好的性能是它能否得到广泛应用的关键,因此如何有效提高机群OpenMP系统的性能成为当前研究热点。 本文研究了提高机群OpenMP系统性能的关键技术,并利用扩展OpenMP制导的方式进行了实现。机群OpenMP系统通过将OpenMP程序转换成软件DSM程序在机群上运行。基于Home的软件DSM系统在机群上构造了类似NUMA结构的共享存储抽象,针对这个特点,并借鉴了HPF语言,本文提出了数据分布制导扩展和充分利用拥有者计算原则的基于局部性的循环调度模式LBS和LBDS。由于数据分布制导扩展只适用于访存规则的程序,对于访存非规则的应用起不到作用。针对采用稀疏矩阵运算的一大类非规则应用,本文提出了indirect制导扩展以改善该类应用的性能。 本文对所提出的制导扩展进行了应用评测。测试结果表明使用这些制导扩展编程,既保持了OpenMP的易编程性,编程难度与循环级编程方式相似,又获得了与SPMD编程方式相当的性能,是机群上一种有效的编程方式。为了评价改进后机群OpenMP系统性能,本文在PC机群上将机群OpenMP系统OpenMP/JIAJIA与目前机群上主流的消息传递库MPI进行了比较。比较结果表明:在8个处理机运行时,相对于所测试的七个应用,机群OpenMP系统获得了相当于MPI的81%的性能。这个结果在一定程度上反映了机群OpenMP系统获得了与MPI可比的性能,但是采用OpenMP编程却比MPI要容易得多。

向平波[5]2002年在《基于Java的异构并行虚拟机器》文中研究说明随着计算机和计算方法的发展,各个研究领域对高性能计算的需求越来越大,集群计算己成为并行处理领域的热点和主流。机群系统具有异构性,现有的并行编程环境存在不能跨越异构操作系统的问题,不能跨平台进行并行计算。本文在分析已有的并行虚拟机器环境PVM的基础上,利用Java语言的平台无关特性,构建一个能屏蔽操作系统差别、在无需提供一致系统的情况下实现机群并行计算的环境XVM。 本文首先介绍了分布式并行处理技术的发展,然后着重分析了消息传递系统的原理和基于消息传递系统进行并行计算需要解决的一些关键技术,并对现有的PVM环境进行分析,了解其设计思想、系统组成、工作流程以及通信机制,以作为XVM系统设计的借鉴。然后介绍了XVM系统的实现语言Java的一些特性,Java语言的平台无关性是构建XVM的基础。 在熟悉了消息传递系统的原理和采用的开发语言Java之后,参照PVM系统,本文提出了基于Java语言的XVM系统的总体设计思想,阐述系统设计的目标以及设计时考虑的一些技术因素,并描述了系统的功能设计。XVM系统采用星形并行计算模式,并将并行计算环境的构造和计算任务区分开来,采用纯Java语言实现,由一系列封装的类组成。它完成的功能是虚拟机的构造、任务调度管理和通信的实现,主要组成可以分为环境构造类、守护进程类、控制台类、通信管理类、消息管理类等几个部分。环境构造类用于构造并行虚拟机器环境并向外部提供编程接口;守护进程类提供通信监听和消息处理的功能;控制台类提供对并行虚拟环境进行配置和查询的接口:通信管理类负责系统中通信连接的建立;消息管理类实现系统中各种消息的构造和存储。这些类相互联系,共同提供在异构操作系统的机群中实现并行计算需要的并行虚拟环境。 在描述了系统设计思想之后,本文逐一介绍了XVM系统组成部分的一些关键类的具体编程实现,它们采用纯Java语言编写。最后,结合作者在并行实验室的局域网配置中的一些工作,介绍了建立XVM环境需要的DNS的配置过程,于此基础上在并行实验室中安装已经实现了的XVM系统,并用一些测试程序对XVM的性能进行测试。

李继民[6]2001年在《基于立方结构的PC机群系统的设计》文中指出机群系统已成为并行处理发展的主流方向之一,机群系统应用领域逐渐拓展并且规模不断扩大。本文首先介绍了机群的基本概念、定义、分类、系统结构及其优点,并介绍了其实现的主要关键技术;基于组的模型,以性能、可用性、可扩展性为目标,设计了T3-PCcluster机群系统,采用基于PCI总线的共享存储器通讯接口的叁台PC机构成的T3-PC紧耦合结构,构建了T3-PC为超级节点的叁总线结构的T3-PCcluster机群系统。 该系统以Linux为操作系统构建网络环境,重点研究了在此结构下的主要技术,包括:(1)通讯接口的设计;(2)可用性设计,包括系统重构、系统状态的保存及恢复、故障的检测等技术;(3)单一系统映象(SSI)的设计;(4)资源管理的模型,包括任务模型和处理机模型。

肖育劲[7]2003年在《基于网络的分布式机群并行仿真平台开发》文中提出本文深入地分析了分布式并行计算技术,开发了基于网络的分布式机群并行仿真平台。本文在综合分布式计算、网络并行计算的各方面文献和当前的多种典型机群管理系统的前提下,结合实际情况提出了由主服务器、节点机构成的基于局域网络的分布式机群并行仿真平台体系结构。机群计算中负载平衡一直是一个很关键的问题。本文中在综合各种负载指标的文献后提出了较为完善的节点负载计算方法,并且引入双阈值的概念提出了具有特色的动态自适应负载平衡算法,使各节点在空闲或轻负载时能够主动地向服务器申请,在重负载时能更快地进行负载迁移。机群管理系统可用GUI工具从不同层次上观察整个机群状态。好的管理软件对开发高性能计算平台的机群是非常重要的。本文开发的的系统管理平台SIMNOWs是用户直接面对的部分,完成系统设计、任务调度、分配和统一管理等功能。整个系统管理平台包括如下模块:系统整体功能模块、作业管理功能模块、节点管理功能模块、通讯管理功能模块等。循环流化床模型的仿真计算是一个较大任务量的计算程序,在一般的计算环境下难以实现。因此我们先在服务器上单机运行仿真程序,然后与在SIMNOWs系统下进行的并行仿真计算相比较,得出后者具有较好的效果的结论。

参考文献:

[1]. 共享存储机群中用户级通信协议的实现和性能[D]. 尹宏达. 中国科学院研究生院(计算技术研究所). 2004

[2]. 机群互连网络研究[D]. 安学军. 中国科学院研究生院(计算技术研究所). 2003

[3]. IntraGRID环境下通信机制的研究与实现[D]. 崔伟. 中国科学院研究生院(计算技术研究所). 2004

[4]. 提高机群OpenMP系统性能的关键技术研究[D]. 章隆兵. 中国科学院研究生院(计算技术研究所). 2004

[5]. 基于Java的异构并行虚拟机器[D]. 向平波. 武汉理工大学. 2002

[6]. 基于立方结构的PC机群系统的设计[D]. 李继民. 河北大学. 2001

[7]. 基于网络的分布式机群并行仿真平台开发[D]. 肖育劲. 重庆大学. 2003

标签:;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  

共享存储机群中用户级通信协议的实现和性能
下载Doc文档

猜你喜欢