APP下载

基于Linux集群系统的并行通信性能研究*

2012-08-13王东煜张佳乐邓志龙

电子技术应用 2012年6期
关键词:延时进程应用程序

王东煜,张佳乐,邓志龙

(1.河北旅游职业学院 信息技术系,河北 承德,067000;2.广西南宁职业技术学院,广西 南宁530000)

集群系统实时并行测试装置开发中,对软件开发速度与软件性能常常必舍其一。某些情况下,测试装置已经叠加在现有的高层大量复制和通信包上,例如PVM机[1]和阵列编程语言ZPL,尽管延用存储共享模式,但对分布式存储而言,既可以使用PVM也可以使用MPI进行消息传递。而在另一些情况下,使用低层基元如Unix rsh、套接字应用程序编程接口。本文将单处理器并行编程语言、并元语言(CML)[2]扩展到一个集群系统。将CML语言从其基本功能语言格式翻译成C编程语言代码。现有的并行语言无法反映基于事件的CML语言的通信模式[3],故而采取对可用并行基元进行基准分析。研究Mosix、MIP-2及Linux基本工作机制:远程进程调用(RPC)、信息和套接字等。由于这些系统所需的软件类型各有不同,故选上述几种系统进行本次实验。MIP-2[4]是一种著名的消息传递系统,由资料库、服务器和在操作系统应用程序构成。Mosix[5]由Linux内核扩展程序组成以便将程序透明迁移至远程节点。尽管Mosix可用作吞吐量引擎,但这方面的研究人员[6]则建议充当集群计算机的并行应用程序,如分子动力学模拟。尽管从上述两方面来说Linux操作系统是基础性的,但本身存在低层机制,如套接字API和RPC2[7-8],能够直接支持并行处理。除了对性能进行研究,程序执行人员还应遵循配置简单、编程、调试方便的原则。

本文在155 Mb/s ATM网络计算机上将CORBA、ACE C++通信包资料库与Socket模式C语言的软件进行对照。针对医疗存储区域的网络应用,CORBA控制信号与套接字API调用整合在一起进行批量数据的传输,结果发现网络信道速率与端对端应用程序的吞吐量不成比例,ATM网络宽带仅仅使用了40%。研究结果因此演变成所谓“吞吐量保留问题”的一个例证。

1 系统的运行环境

本文使用的集群系统包含经两个以太网交换机连接起来的37个处理节点。形象地将这些节点称为“堆”。每个节点是一个小型因子穿梭箱 (XPC SN41G2型号),配置了AMD速龙XP 2800+巴顿内核 (CPU频率2.1 GHz),512 KB二级缓存,双通道 1 GB DDR333 RAM。图1中的节点通过24个端口千兆位以太网交换机 (D-Link生产,DGS-1024T型号)连接起来。每台交换机是非阻断网络模式,允许任何一对端口之间同时具有全双工千兆位带宽。每台交换机可以通过服务器上的独立网卡联网,便于集群系统分成两个区间。本文将实验范围缩小至节点对节点的通信,而不考虑群体通信。不过在某些情况下,群体通信内的区别因子可能不是联网行为而是软件执行行为。

本文所用软件Mosix[9-10]的open Mosix直接运行在标准的Unix通信机制上。实验中使用Linux核心版本2.4.22;‘C’资料库版本是 2.3.2;GNU gcc编辑软件的版本3.2.3,MPICH版MPICH2-0.96p2。Mosix是一种抢占式进程迁移系统。由于运行在内核空间,Mosix对应用程序就变得无法察觉。但由于存在简易API,所以应用程序可以注意到集群系统的配置及它们在系统内的位置。

2 实验操作

Unix机制通常由Unix的BSD变体派生,数据以字节流形式传输;而系统V STREAMS由Unix的AT&T变体派生,数据以离散消息形式传输。基站通信和生成机制可以是Linux发布内容的部分,也可以是预写软件包的部分。语义上定义好的包装层在实验操作时围绕软件编写好。不论实验过程中的软件是MPI、MOSIX或Unix机制中的哪一种,均会对轻量级层进行研究。

2.1 带宽与延时实验

基准代码创建出两个进程,彼此可以相互通信。带宽实验时,一个子进程充当发送端,另一个充当接收端。延时实验时,单字节在两个进程之间来回1万次,等传输次数均等后用钟表计算往返用时。这两个进程可根据以下情况来创建:(1)视同一个处理器为父进程;(2)若有两个不同的处理器,任何一个都不作父处理器;(3)若有两个不同的处理器,选任意一个作父处理器。

2.2 动态进程的创建实验

当大量复制一个新进程时,可以采取以下策略:

(1)允许系统自动选择合适的节点:具有MPI-2和MOSIX的特征。

(2)对目标节点的选择进行明确控制:具有RPC及rsh调用的特征。

执行MPI-2的当前MPICH-2时,只允许对进程进行随机迁移,越过了定向迁移。而且,如果两个进程一个接一个地大量复制,说明它们位于同一节点位置。MPI-2的确允许同时对两个或多个同类进程进行大量复制,且在此情况下,当前的MPICH-2将这些进程分配到不同节点位置。

RPC可以将自动生成的服务器和顾客代码打包塞入可执行进程里。这种情况不常见,但对一些自动代码进行再编译还是有可能的。因此,在每个节点位置,RPC并行应用程序都会有一个拷贝进程充当服务器,在特定节点位置也需要一个拷贝进程来进行初始化操作。每个RPC从一台服务器上对新的应用程序副本创建子进程。

3 实验结果

3.1 带宽及延时测定

图1给出各通信机制的带宽检测结果,当处理器内部通信和消息大小在10~100 B时,尽管套接字互联网域选项被选来进行处理器间的通信,但套接字通信的效率最高。消息体积变大时,管道和fifos[11]成为最高效的机制,难以对它们进行区分。当消息≥10 000 B时,所有Unix机制的通信速率约为1 GB/s。

图2是千兆位网络连接的外部带宽情况。由于Mosix代理机制的缘故,图2中所有Mosix通信均通过主节点 1(即所谓的 Mosix通用主节点,缩写为 UHN)来执行。由此可以发现所有的Mosix通信都不理想,其有效带宽远远低于简易套接字通信所达到的带宽标准。套接字通信带宽高达100 MB/s,可用带宽的使用率达到80%,可见效率很高。

图3中当发出端节点是个UHN时,Mosix带宽性能有所提高。但Mosix带宽的有效使用率仍远低于套接字通信的。鉴于此MPI的通信性能稳定徘徊在两区间之间,当大小在100 B~10 KB之间时,表现出特有的平稳状态。主要原因在于MPI版本内部使用到一定缓冲面积。当信息大小超出阈值时,会有不同(及更高效)的机制来代替。

表1为通信延时检测结果。由表1可知,当采取标准的Unix进程内通信(IPC)机制如管道、fifios、及 System V消息机制时,通信延时约为2 μs。这种通信仅适于同一台处理器上的进程之间进行。同一台处理器上互联网域套接字通信导致的延时约为7 μs。表中的阴影部分表明延时数据是在Mosix操作时获取到的。在单处理器上操作时,Mosix对通信延时的影响最小。表2只给出了单处理器带/不带Mosix机制的套接字通信延时性能的检测结果。同时可知所需通信费用较少。

3.2 动态进程创建的检测

对采取不同机制以“大量复制”一个新进程的用时进行基准分析。一台1.8 GHz速龙XP 2200+PC(256 KB二级缓存、主内存配置同Linux处理器的)的用时如表3所示,这些主要是SSH用时。由于实验不需确保内部安全,所以未在集群系统上安装SSH。而是增加了一个安全层到RSH,系统性能未见明显的“飙升”情况。

表1 通信延时检测结果

表2 Linux集群系统上处理器间各大量复制机制的性能结果对照

当源节点(src)和终节点(dst)合二为一且为同一个时,MOSIX FORK几乎与标准的FORK一样高效。再看其他复制机制,情况依次如下:

鉴于单一大量复制通常耗时需1/10 s,所以不主张应用RSH、SSH、或 RUNON执行机制。RPC在一个千兆位的以太网上运行时十分高效——比其他通信机制更节约网络资源。

表3给出了Linux集群系统上检测的前大量复制远程机制的性能执行实验结果。计算MOSIX机制的平均用时,因为UHN位置的不同,结果也不同,因此就有了更简单的排序方法,如表4。表4、表5中的“指数”一栏就是相对性能的一种简单指代。鉴于性能幅度较大,采取粗度量单位较为妥当。指数1代指性能最佳。指数5表明速率降低了30%,依次类推等。

表3 Linux系统PC机处理器内各大量复制机制的性能结果对照

本文在对各通信机制的性能进行实验后,根据研究结果对其进行了排序,如表5。有些机制在某些情况下表现不佳,较硬件标准还低,今后开发人员要特别注意这一点。实验结果表明,MPI-2及Mosix无论在大量复制还是通信延时方面均存在广泛可比性。不过,Mosix机制下的通信带宽较低。若Mosix要成为实时或高带宽应用程序之选,需要对之进行优化。鉴于本文旨在探讨Mosix大量复制的透明度情况,故未对Mosix负荷平衡性能进行研究。低层通信机制的性能明显优于高层软件数据包的,这给因便捷或可迁移性而带来的收益提出了质疑。

表4 实验机器上各大量复制机制的性能执行结果排列

表5 实验机器上各大量复制机制的简易排序

总之,选用传输软件用于集群系统仍是至关重要的决策。不论特定的并行计算模型有何优点,最终都得根据其性能表现情况做出判断。但是,由于对传输软件的重要性关注度更高,所以执行人员就更能解决性能方面的瓶颈问题。今后针对是什么样的传输软件架构才能提高通信性能和大量复制性能这一问题,还需进一步探讨,可以从其底层结构如缓冲结构、软件分层结构以及与操作系统内核交互作用情况等角度来研究。

[1]ABRAHAM A,THOMAS J.Distributed intrusion detection systems:a computational intelligence approach.In:Abbass HA,Essam D,editors.Applications of information systems to homeland security and defense.USA:Idea Group Inc.Publishers,2005:1051-1055.

[2]KABIRI P,GHORBANI A A.Research on intrusion detection and response:A survey.International Journal on Information Security,2005,1(2):84-102.

[3]ALIPIO P,CARVALHO P,NEVES J.Using CLIPS to Detect Network Intrusion[J].Lecture Notes in Computer Science,2003:341-354.

[4]VIGNA G,ECKMAN S,KEMMERER R.The STAT tool suite[J].Proceedings of the DARPA Information Survivability Conference and Exposition 2000(2):1046-1050.

[5]KANTZAVELOU I,KATSIKASS.An attack detection system for secure computer systems outline of the solution[C].Proceedings of the IFIP TC11 13th International Conference on Information Security,1997:123-135.

[6]DOYLE J,KOHANE I,LONG W,et al.Event recognition beyond signature and anomaly[C].Proceedings of the 2001 IEEE Workshop on Information Assurance and Security,2001:170-174.

[7]KIM D,NGUYEN H,PARK J.Genetic algorithm to improve svm-based network intrusion detection system[C].Proceedings of the 19th International Conference on Advanced Information Networking and Applications(AINA),2005(2):155-158.

[8]CHAVAN S,SHAH K,DAVE N,et al.Adaptative neurofuzzy intrusion detection systems[C].Proceedings of the 2004 International Conference on Information Technology:Coding and Computing,2004(1):70-74.

[9]HELMER G,WONG J,HONAVAR V,et al.Lightweight agents for intrusion detection[J].Journal of Systems and Software,2003(67):109-122.

[10]LAZAREVIC A,ERTOZ L,KUMAR V,et al.A comparative study of anomaly detection schemes in network in trusion detection[M].Proceedings of the SIAM International Conference on Data Mining,2003:121-130.

[11]VALDES A,SKINNER K.Adaptive,model-based monitoring for cyber attack detection[M].Proceedings of RAID 2000:80-92.

猜你喜欢

延时进程应用程序
基于级联步进延时的顺序等效采样方法及实现
债券市场对外开放的进程与展望
删除Win10中自带的应用程序
日光灯断电关闭及自动延时开关设计
改革开放进程中的国际收支统计
谷歌禁止加密货币应用程序
Two-dimensional Eulerian-Lagrangian Modeling of Shocks on an Electronic Package Embedded in a Projectile with Ultra-high Acceleration
桑塔纳车发动机延时熄火
社会进程中的新闻学探寻
俄罗斯现代化进程的阻碍