计算机集群中节点间数据传输方法和系统的制作方法

文档序号:7866083阅读:2210来源:国知局
专利名称:计算机集群中节点间数据传输方法和系统的制作方法
技术领域
本发明涉及通信技术领域,具体涉及一种计算机集群中节点间数据传输方法和系统。
背景技术
贝奥武夫(Beowulf)集群是一种高性能的并行计算机集群结构,它是由一组独立的计算机系统构建的松耦合的多处理机系统,系统中各进程借助网络实现通信、共享内存传递信息,从而实现分布式并行计算。Beowulf 集群的设计目标是使一般大学的计算机系和小型研究机构有能力建立自己的超级计算机系统,每秒可运行上十亿条指令。Beowulf集群技术解决了如何通过使用普通计算机来达到高性能、高实时的计算系统的问题。近年来,Beowulf 集群系统迅速发展,主要是因为作为集群节点的工作站系统的处理性能越来越强,更快的处理器和更高效的多CPU机器大量进入市场,以及局域网新技术和新协议的引入, 集群节点间的通信能获得更高的带宽和较小的延迟,集群系统比传统的并行计算机更易于融合到已有的网络系统中去。目前,集群系统的开发工具日臻成熟,其价格也愈加便宜并且易于构建。另外,集群系统的可扩展性良好,节点的性能也很容易通过增加内存或改善处理器性能获得提闻。信息传递接口(Message Passing Interface, MPI)是一种消息传递编程接口,它提供了实现其一系列接口的多语言函数集。MPI是Beomilf集群上常用的消息传递机制,并行程序常常使用MPI来进行数据的发送与接收。MPI标准定义了一组函数,使应用程序可以将消息从一个MPI进程传递到另一个MPI进程。在Beowulf集群系统中,N个节点(如计算机)之间使用MPI进行数据传输时,通常采用顺次传输模型。具体地说,首先给每个节点依次编一个号码,从0开始,直到N-1。图Ia示出了现有技术的第I轮数据发送过程的示意图,图Ib示出了现有技术的第I轮数据接收过程的示意图,图Ia和图Ib示出了 6个节点的情况。如图Ia和图Ib所示,在第I轮数据传输过程中,除节点0以外的其它节点都使用MPI发送(MPI_Send)函数向节点0发送数据,此时节点0在一个循环语句中使用MPI接收(MPI_Recv)函数依次接收从节点I到N-I发送过来的数据。在第2轮数据传输过程中,除节点I以外的其它节点都使用MPI_Send函数向节点I发送数据,此时节点I在一个循环语句中使用MPI_Recv函数依次接收从节点O、2到N-I发送过来的数据。依次类推,直到第N轮数据传输过程结束后,所有节点都获得了其他节点发送过来的数据,整个数据传输过程完成。上述采用顺次传输模型的数据传输方法存在如下缺点在通常情况下,集群系统中所有节点的网卡都是同构的,所以它们的最大传输带宽是相同的。由于在每一轮数据传输过程中,所有节点都会向同一个节点发送数据,在将接收节点的带宽打满的情况下,所有发送节点的带宽是没用满的,这样造成了整体传输带宽的浪费
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的计算机集群中节点间数据传输系统和相应的计算机集群中节点间数据传输方法。根据本发明的一个方面,提供了一种计算机集群中节点间数据传输方法,包括将N个节点的数据传输过程分为N-I轮,N彡2 ;对于每个节点,随机选择该节点的数据发送顺序,所述数据发送顺序是在数据传输过程中接收该节点发送的数据的节点按照轮次的排列顺序;在每一轮数据传输过程中,每个节点都执行一次发送动作,执行发送动作的节点按照自身的数据发送顺序发送数据;执行接收动作的节点根据先到先收的方式接收数据;其中,所述发送动作采用非阻塞式通信方法来执行。 根据本发明的另一方面,提供了一种计算机集群中节点间数据传输系统,包括N个节点,所述N个节点的数据传输过程分为N-I轮,N > 2 ;其中,每一个节点包括发送单元,用于在每一轮数据传输过程中,执行一次发送动作,所述发送动作具体为按照自身的数据发送顺序发送数据;所述数据发送顺序是随机选择的,所述数据发送顺序是在数据传输过程中接收该节点发送的数据的节点按照轮次的排列顺序;接收单元,用于根据先到先收的方式接收数据;其中,所述发送单元具体用于采用非阻塞式通信方法执行发送动作。根据本发明提供的计算机集群中节点间数据传输方法和系统,在每一轮数据传输过程中,执行发送动作的节点按照自身随机选择的数据发送顺序发送数据,这样同时发往同一个节点的概率大大减少,极少出现一个节点同时接收所有其他节点发送的数据的情况,将数据分散传输,保证每个节点的网卡都可以较为充分的利用最大传输带宽工作。执行接收动作的节点根据先到先收的方式接收数据,实现了无延迟的数据接收。上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式



通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中图Ia示出了现有技术的第I轮数据发送过程的示意图;图Ib示出了现有技术的第I轮数据接收过程的示意图;图2示出了根据本发明一个实施例的计算机集群中节点间数据传输方法的流程图;图3a示出了本发明实施例中第I轮数据发送过程的示意图;图3b示出了本发明实施例中第I轮数据接收过程的示意图;图4示出了根据本发明一个实施例的计算机集群中节点间数据传输系统的结构示意图。
具体实施例方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。与现有技术的数据传输方法采用顺次传输模型不同的是,本发明的数据传输方法采用分轮次随机收发模型。本发明的集群系统包括N个节点,NS 2,那么这N个节点的数据传输过程就被分为N-I轮。图2示出了根据本发明一个实施例的数据传输方法的流程图。如图2所示,该计算机集群中节点间数据传输方法包括如下步骤步骤101、对于N个节点中的每个节点,随机选择该节点的数据发送顺序。该数据发送顺序是指在数据传输过程中,接收该节点发送的数据的节点按照轮次的排列顺序。该数据发送顺序限定了节点在每一轮数据传输过程向哪个节点发送数据。每 个节点的数据发送顺序是随机选择的,一旦选定该数据发送顺序,在N-I轮的数据传输过程中,每个节点都按照对应的数据发送顺序向指定节点发送数据。设N为6,给这6个节点分别编一个号码为0、1、2、3、4、5。对于其中的每个节点,随机选择对应的数据发送顺序。表I示出了为每个节点随机选择的数据发送顺序。表I.节点与数据发送顺序对应表
权利要求
1.一种计算机集群中节点间数据传输方法,包括 将N个节点的数据传输过程分为N-I轮,N > 2 ; 对于每个节点,随机选择该节点的数据发送顺序,所述数据发送顺序是在数据传输过程中接收该节点发送的数据的节点按照轮次的排列顺序; 在每一轮数据传输过程中,每个节点都执行一次发送动作,执行发送动作的节点按照自身的数据发送顺序发送数据;执行接收动作的节点根据先到先收的方式接收数据; 其中,所述发送动作采用非阻塞式通信方法来执行。
2.根据权利要求I所述的数据传输方法,所述接收动作采用阻塞式通信方法来执行。
3.根据权利要求I或2所述的数据传输方法,所述N个节点属于贝奥武夫集群系统,所述发送动作采用非阻塞式的MPI发送函数来实现。
4.根据权利要求2所述的数据传输方法,所述N个节点属于贝奥武夫集群系统,所述接收动作采用阻塞式的MPI接收函数来实现。
5.一种计算机集群中节点间数据传输系统,包括N个节点,所述N个节点的数据传输过程分为N-I轮,N > 2 ; 其中,每一个节点包括 发送单元,用于在每一轮数据传输过程中,执行一次发送动作,所述发送动作具体为按照自身的数据发送顺序发送数据;所述数据发送顺序是随机选择的,所述数据发送顺序是在数据传输过程中接收该节点发送的数据的节点按照轮次的排列顺序; 接收单元,用于根据先到先收的方式接收数据; 其中,所述发送单元具体用于采用非阻塞式通信方法执行发送动作。
6.根据权利要求5所述的数据传输系统,所述接收单元具体用于采用阻塞式通信方法执行接收动作。
7.根据权利要求5或6所述的数据传输系统,所述数据传输系统为贝奥武夫集群系统,所述发送单元具体用于采用非阻塞式的MPI发送函数来实现所述发送动作。
8.根据权利要求6所述的数据传输系统,所述数据传输系统为贝奥武夫集群系统,所述接收单元具体用于采用阻塞式的MPI接收函数来实现所述接收动作。
全文摘要
本发明公开了一种计算机集群中节点间数据传输方法和系统。其中数据传输系统包括N个节点,所述N个节点的数据传输过程分为N-1轮,N≥2;其中,每一个节点包括发送单元,用于在每一轮数据传输过程中,执行一次发送动作,所述发送动作具体为按照自身的数据发送顺序发送数据;所述数据发送顺序是随机选择的,所述数据发送顺序是在数据传输过程中接收该节点发送的数据的节点按照轮次的排列顺序;接收单元,用于根据先到先收的方式接收数据;其中,所述发送单元具体用于采用非阻塞式通信方法执行发送动作。本发明提供的计算机集群中节点间数据传输方法和系统将数据分散传输,保证每个节点的网卡都可以较为充分的利用最大传输带宽工作。
文档编号H04L12/861GK102984084SQ20121047539
公开日2013年3月20日 申请日期2012年11月21日 优先权日2012年11月21日
发明者何锐邦, 唐会军 申请人:北京奇虎科技有限公司, 奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1