ImageVerifierCode 换一换
格式:DOCX , 页数:8 ,大小:22.70KB ,
资源ID:18017096      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18017096.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(一种并行计算通信优化策略Word文档下载推荐.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

一种并行计算通信优化策略Word文档下载推荐.docx

1、通讯优化;零拷贝;LKM 机制;通信延迟 中图分类号:TP 393 文献标识码:AA strategy of parallel computerization for optimizing communicationLIU Qingkun ,WANG Jia ,HAN Ying ,YANG Lei(School of Computer and Information Technology, Liaoning Normal University, Dalian 116081, China Abstract: To solve the problem of the communication ov

2、erhead and synchronous overhead increase in electron charge distribution calculation of ABEEM model, this study applies Linux parallel computing system communication to develop a system layer zero copy communication optimization method based on Cholesky decomposition parallel algorithm in communicat

3、ion process. In addition, a LKM module, which can be removed, is developed to shorten development time and test time, and reduce data copies based on the address mapping zero copy technology. It has solved the problem of communication delay. The study results show that the communication optimization

4、 method developed based on zero copy technology can achieve a timely, efficiently and accurately data communication and greatly improve the performance of Cholesy decomposing parallel algorithm.Key words: Cholesky decomposition; communication optimization; zero copy; LKM; communication latency0 引 言基

5、于并行计算的集群系统具有高效率、低消耗等优点,并且越来越受到科研工作者的重视。在理想情况下,并行计算机的性能是所有节点计算性能之和。假设应用总是处在计算和通信两种状态之一,一个并行程序的运行时间为calc comm T T T =+,而comm 1(NcS B C T T T L =+,式中,r s S O O T +=是启动开销(包括发送和接收,T B 是网络上传输一个字节的时间,L c 是消息的长度(字节数,N c 是通信的次数1,即calc 1(Nc S B C T T T T L =+。由上式,不难看出,假设在计算和通信不重叠的前提下,要缩短并行程序执行时间,必须缩短计算和通信时间。在

6、消息传递模式中,计算量和通信量以及它们之间的关系起着极其重要的作用2。通信性能不仅直接影响了并行计算的加速比和效率,且对集群系统的计算性能有很大影响。当对一个问题进行求解时,其并行算法的好坏决定了并行性能的高低。通过对ABEEM 模型电荷分布计算的Cholesky 分解并行算法的加速比性能进行通信评测3,找出该算法的缺点,进行改进以提高并行程序的性能。该算法计算过程中通信相当频繁,当CPU 数目增加时处理器之间的通信开销、同步开销等会增加,当这些开销增大到一定程度时就会对并行性能产生很大的影响,大大限制了并行性能的提高,成为影响并行算法性能提高的瓶颈4。1 Cholesky 分解并行算法在AB

7、EEM 模型电荷分布计算中,从分子模型中提取系数矩阵,当阶数为6 8756 875时,Cholesky 分解并行算法的加速比性能与CPU 数的关系见图1。可以看出Cholesky 分解并行算法性能最好的是CPU 数等于64时,其次是CPU 数等于32时。由此得出,第2期 刘青昆,等:269CPU 数与通信开销成正比,通信性能则成为影响算法并行效率进一步提高的主要因素。图1 加速比与CPU 数的关系 Fig.1 relation of speedup ratio and CPUMPI 广播通信时间(系数矩阵阶数为6 8756 875见图2。如果CPU 数小于32,广播通信时间在1 000 ms

8、上下波动; CPU 数等于32时通信时间为最小值(400 ms 左右,CPU 数通信开销较小,对并行性能的影响不大,加速比呈上升状态;当CPU 数在32和64之间时,广播通信时间开始增加;当广播时间为最大值(17 s 左右时,CPU 数等于62,CPU 数通信开销变得越来越大,并行性能的影响同时逐渐增大,加速比呈现下降趋势;当CPU 数等于64时广播通信时间降到最小值(300 ms 左右,加速比突然提升到最大值。CPU 数量/个0246810203040506070图2 基于Cholesky 分解的MPBench 广播通信测试Fig.2 MPBench Radio communication

9、test based onCholesky decomposition实验结果表明:在CPU 增长到一定数目后,处理器之间的通信开销、同步开销都会增大,当它们达到一定程度时,这些通信开销严重影响了此算法并行性能的提高4。为了进一步提高该算法的并行性能,以减少通信次数、通信数据量和降低通信开销为前提,对并行应用层次结构中的通信系统层进行通信优化。但由于低效的通信软件不能有效的利用物理层网络的通信性能,使得通信系统性能受到影响。因此,提高通信系统的性能是提高整个并行计算性能的关键因素之一。文献5-6提出zero-copy 通信优化技术,文献7-8采用的方法是优化传统协议栈,即对TCP/IP 协议的

10、精简,文献9针对特定的网络硬件特点或应用要求设计了新的通信协议机制。以上提出的针对用户态的通信方法,通常提供了专用的通信结构,不利于上层应用的移植。本文提出一种针对高速网络环境下的用户级并行集群系统层零拷贝通信优化方法, 省去内核空间在数据报文传输过程中的拷贝处理过程,利用LKM 机制10开发零拷贝通信优化虚拟接口模块,可动态卸载的实现用户态和内核态的地址转换,并维护逻辑上独立存在的发送环和接收环,实现内核态和用户态在共享缓存进行直接交互。2 Cholesky 分解并行算法通信优化零拷贝原理见图3。零拷贝技术的实现需要消除报文中的内存拷贝、设置用户态和内核态的共享缓存、解决物理地址和虚拟地址翻

11、译以及由于网卡中断频繁引起的中断淹没等问题。针对以上问题采取相应的策略进行解决,首先绕开系统协议栈处理等操作;其次,设计一个零拷贝通信优化虚拟接口模块用来实现物理地址和虚拟地址的地址翻译问题,并采用mmap 映射机制的nopage 方法5,与逻辑上独立的两个接收和发送环,构建成为用户态与内核态可共享的内存缓冲区。第三,相应的改进网卡中断处理方式,并减少中断次数。图3 零拷贝原理Fig.3 working principle diagram of zero copy2.1 零拷贝零拷贝通信优化组件模块包括三部分:虚拟接口模块VI (Virtual interface module ,改进的网卡驱

12、动程序和上层用户接口程序,见图4。(1用户缓冲区(UserBuffer 在用户层,申请一块足够大的用户缓冲区UserBuffer ,存放接收和发送的数据包。UserBuffer 被分配成若干个存放一个帧格式的以太包且大小为2 kb 的块。UserBuffer 的分配依据不超过1.514 kb ,这是因为路由器的MTU 是1.5 kb ,加上以太包的14 b 。因此,2 kb 字节大小刚好满足05加速性能比/%辽宁工程技术大学学报(自然科学版第30卷270包大小要求。在LIUNX 2.4内核中,内存每个页面大小为4 Kb字节,这样块大小正好为页面大小的图4 零拷贝通信模块中的数据传输过程Fig.

13、4 data transmission in zero copy communication module(2虚拟接口模块VI虚拟设备VI位于内核,但由用户创建,并以LKM形式进行加载。LIUNX的一个特点是在系统运行时,可以通过LKM机制,以加载模块的方式来增加系统功能。VI模块即是以这种模块形式加载到内核中实现设备功能的。虚拟接口模块VI有三个具体功能:让网卡能够直接访问用户态的UserBuffer;让用户能够直接访问内核态的接收和发送队列;还提供一个虚拟接口,可以允许网卡和应用程序无冲突地通过接收和发送队列访问UserBuffer。虚拟接口模块VI维护三个环形队列为发送队列quene_t

14、、接收队列quene_r、空闲队列quene_free。待发送的数据包描述符挂入quene_t,接收到的数据包描述符挂入quene_r,没有数据块的描述符挂入quene_free。为实现内核和用户能同时访问UserBuffer,而不产生冲突,虚拟接口模块VI的每个队列含有三个指针,只要指针不互相越界,就不会产生冲突。虚拟接口模块VI的内存采用vmalloc进行分配,其进行内存分配的特点是,在不超过机器物理内存的前提下,可以一次分配很大的内存空间,分配了虚拟地址空间的连续区域,内核认为他们在地址上是连续的。分配的内存空间被映射进入内核数据段中,通过内存映射方式将其映射到用户空间6。虚拟接口模块V

15、I还维护一张静态地址TAB,通过查找LINUX内核中的三级页表,虚拟接口模块VI获得用户缓冲区中每个虚拟页面的物理地址,并将该页面锁定于内存中,转换后的物理地址缓存在这张表中。TAB地址表与被锁定的内存页面构成一套高效的地址映射机制。上层用户和网卡都能访问这个虚拟设备得到自己需要的目的地址。用户态到内核态使用的mmap地址映射机制不允许映射常规地址,系统采用vmalloc进行内存分配使得内存块不具有连续性。为解决这些问题,虚拟模块接口先进行判断如果用户要访问的虚拟地址页面不在内存里,系统就产生一次缺页中断,nopage方法即被调用6。用户得到的是虚拟设备映射到用户缓冲区的首地址。nopage方

16、法解决了用户态到内核态的访问,直接通过虚拟地址表查找用户空间的物理地址,即实现了网卡直接访问用户缓冲区。网络接口DMA操作与用户缓冲区需要进行交互,但DMA操作是异步方式进行的,因此为防止操作系统将正在进行DMA传输的页面交换出去,必须将该页面锁定。2.2 网卡驱动修改网卡驱动程序首先填充接收缓冲区描述符。根据缓冲区数据大小向系统发出中断请求。在网卡中断程序中将数据转移至RAM中。数据发送与接收相似,不同的是在第一次发送时需要系统出发一次,每当数据发送完毕后,网卡会向系统发送中断。改进的代码和数据层次见图5。当中断频率不断上升时,CPU花费大部分时间去调度和执行相应中断处理程序,引起网卡控制器

17、过载,产生丢包现象,导致系统暂时无法响应。为缓解这种现象,当一个数据包到达时就打开一个定时器,如果在规定时间内没有轮询操作到来就产生一个中断。每隔一定时间发送一次中断,每次同时处理多个数据包。由于采用基于地址映射的零拷贝技术,那么,相应的需要修改网卡驱动程序,将原来网卡把数据送到内核缓冲的情况变成网卡向用户区直接传递数据。其改进主要体现在网卡驱动的发送和接收的中断处理函数上,即改进后的是将VI的设备信息添加到网卡设备的私有域中,网卡进行DMA传输时,直接根据VI设备中的描述符找到真正的位于用户的缓冲区,然后直接将数据包从网卡传到用户缓冲区,数据包不再进入内核协议栈。这样就省去了内存反复分配、拷

18、贝、软中断、拷贝、释放的数据传输过程、从而提高系统的效率。第2期刘青昆,等:一种并行计算通信优化策略271图5 代码和数据层次Fig.5 hierarchy schematic of code and data3 性能测试与分析测试的硬件环境为Intel Pentium IV1.7GHz, 128MB内存,RealTek 8139网卡。软件环境为RedHat Linux9.0操作系统,并搭建MPICH并行编程环境,分别进行Ping-Pong测试和并行测试。3.1 Ping-Pong测试使用两台主机分别作为客户端和服务器,分别测试优化后的网络系统与原系统的通讯延迟,并进行分析对比。由于2台计算机

19、之间的时间存在同步的问题,对通讯延迟的测试采用Ping-Pong测试方法,即从客户端向服务器端发送数据,服务器端收到数据后向客户端回发数据8。其中,客户端取两次时间之差的一半作为测试参数。每种长度数据连续发送50次求其平均值作为该长度数据对应的延迟时间。表1是原linux系统正常模式下和经过零拷贝优化后的系统的网络传输延迟时间的对比数据。测试时,发送的文件大小分别固定为32 mb、64 mb、128 mb、256 mb。表1 Ping-Pong测试Tab.1 test of Ping-Pong通信延迟时间/ ms文件大小/ mb正常模式下零拷贝模式下32 25 413 440 22 201 6

20、0064 55 982 739 50 271 910128 78 595 253 75 831 158256 138 303 166 132 962 443由表1看出,相对于原linux系统的网络通信,优化后的网络系统在通信延迟方面明显的小于原linux系统,且系统性能相较原系统更加的稳定。3.2 并行测试表2是原linux集群通信系统和经过零拷贝优化的linux集群通信系统的网络传输延迟时间的对比数据。测试时,使用两个节点机,系数矩阵A、B阶数为1 7931 793,进行并行MPI程序时间测试,分别测试读文件的时间、转换A的通信时间、转换A的计算时间、计算B的时间和总时间。表2 并行测试结果

21、Tab.2 result of parallel test并行程序测试读文件的时间12.117 682 11.922 03转换A的通信时间 5.257 473 4.585 583转换A的计算时间62.795 63 63.011 79转换A的时间68.053 103 67.597 37计算B的时间0.449 935 0.460 287总时间80.620 72 79.979 69 由表2可以看出,相对于原linux集群并行通信系统,优化后的并行系统在转换A的通信时间和读取文件时间方面都小于原linux系统。4 结 论本文针对linux环境下网络系统不断增大的通信开销和同步开销带来的系统通信延迟、中

22、断淹没等问题,提出了对其进行优化的措施,节省了很多CPU时间,可以去处理其他许多复杂的计算程序,解决了整个系统的瓶颈,是具有现实意义、高容量和高速度的集群通信网络通信优化体系结构。参考文献:1 Eicken T, Culler D E. Active messages: A mechanism for integratedcommunication and computation C.Gramado: Proceedings of the 19th International Symposium on Computer Architecture,1992:256-266. 2 Guo Qing

23、ping,Yakup Paker. Concurrent communication and granularityassessment for a transputer-based multiprocessor systemJ. Journal of Computer Systems Science&Engineering,1990,5(1:18-20.3 刘方爱,乔香珍,刘志勇. 并行计算模型的层次分析及性能评价J.计算机科学,2000,27(8:1-4.4 刘青昆,聂晓娜,马丽,等. Cholesky分解并行算法的性能评测J. 辽宁师范大学学报:自然科学版,2009,1(32:58-60

24、.5 王佰玲,方滨兴,云晓春. 零拷贝报文捕获平台的研究J. 计算机学报,2005,28(1:46-52.6 李大斌. 并行数据库通讯组件零拷贝技术的研究与实现D. 哈尔滨: 哈尔滨工业大学,2005.7 江文毅,庞丽萍,高兰. 基于集群系统的TCP/IP协议的优化J. 小型微型计算机系统,2001,22(12:1 429-1 431.8 曹阳,陈勇,曹蕙,等. 基于TCP/IP网络协议的通信系统性能分析与优化J. 武汉大学学报:自然科学版,1999,45(3:354-358.9 Nanette J,Boden, Danny Cohen,et al. Myrinet: a gigabit-per-second localarea networkJ. IEEE Micro, 1995,15(1:29-36.10刘天华,陈袅,朱宏峰,等. Linux可加载内核模块机制的研究与应用J. 微计算机信息,2007,23(7:48-49.

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1