为层次化分布式处理系统编译软件技术方案

技术编号:8165677 阅读:226 留言:0更新日期:2013-01-08 12:26
为层次化分布式处理系统编译软件包括:向一个或多个编译节点提供要被编译的软件,其中,要被编译的软件的至少一部分将被一个或多个其它节点执行;由编译节点编译软件;由编译节点来维护将在该编译节点上执行的任何已编译软件;基于任何已编译软件是否是用于选中的节点或选中节点的后代,由编译节点选择分布式处理系统的层次结构的下一层中的一个或多个节点;向被选中的节点仅发送将由该选中节点或选中节点的后代执行的已编译软件。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术的领域是数据处理,或更具体而言,用于为层次化分布式处理系统编译软件的方法、装置和产品。
技术介绍
1948的EDVAC (电子离散变量自动计算机)计算机系统的开发通常被称为是计算机时代的开始。从那时开始,计算机系统已经演变为极端复杂的设备。今天的计算机与早期的系统诸如EDVAC相比要复杂地多。计算机系统典型地包括硬件和软件组件、应用程序、操作系统、处理器、总线、存储器、输入/输出设备等的组合。随着半导体处理和计算机架构的进步使计算机的性能越来越高,更为复杂的计算机软件已发展出来,以利用硬件的更高性能,使得今天的计算机系统比仅仅几年前要强大地多。 分布式计算是计算机技术取得进展的ー个领域。分布式计算通常是指用多个半自主计算机系统来进行计算,所述计算机系统通过数据通信网络来通信。半自主计算机系统互相交互,以实现共同的目标。在分布式计算系统中执行的计算机程序或应用可被称为分布式程序。分布式计算还可指使用分布式计算系统来解决计算问题。在分布式计算中,一个问题可被分为多个任务,每个任务可以被其中ー个半自主计算机系统来解決。某些分布式计算系统被优化来执行并行计算。并行计算是在多个处理器上同时执行同一任务(其被划分并特别适应),以更快地获取結果。并行计算基于下列事实解决问题的过程通常可被分为更小的任务,这些任务可以通过某种协调来同时执行。并行计算机执行并行算法。并行算法可以被划分从而在很多个不同处理设备上每次执行一片,然后在结束时再次合并到一起以获得数据处理结果。某些算法能容易地分片。将检查从一到十万的数字以找到素数的任务进行划分,例如,可以通过将这些数字的子集分配给每个可用的处理器、然后将肯定结果的列表合并到一起来实现。在本说明书中,执行并行程序的单片的多个处理设备被称为“计算节点”。并行计算机由计算节点以及其它处理节点包括例如输入/输出(“I/O”)节点和服务节点组成。并行计算很有价值,因为由于现代处理器工作的方式,通过并行算法来执行某些类型的大型计算任务比通过串行(非并行)算法更快。构建具有单个快速处理器的计算机比构建吞吐量相同的具有多个慢速处理器的计算机要困难地多。串行处理器的潜在速度也存在一定的理论限制。另ー方面,每个并行算法具有串行部分,因而并行算法具有饱和点。在该点之后,增加更多的处理器不会产生更多吞吐量,而只会増加开销和成本。并行计算被设计为还优化并行计算机的节点之间的数据通信需要的ー个或多个资源。并行处理器有两种方法来通信,共享存储器或消息传递。共享存储器处理需要对数据的额外锁定并带来了额外的处理器和总线周期的开销,且同时将算法的某些部分串行化。消息传递处理使用高速数据通信网络和消息缓冲区,但该通信増加了数据通信网络上的传输开销和用于消息缓冲区的额外存储器,以及节点之间的数据通信的延迟。并行计算机的设计使用特殊设计的数据通信链路,从而通信开销会较小,但是决定流量大小的是并行算法。很多数据通信网络架构被用于并行计算机的节点之间的消息传递。例如,计算机节点在网络中可以被组织为环形(torus)或网状(mesh)。而且,计算节点在网络中可以被组织为树。环形网络以回绕(wrap around)链路在三维网状中连接节点。姆个节点通过该环状网络连接到其六个邻居,且每个节点通过其在网状中的X、y和z坐标来寻址。在这种方式国,环形网络有助于点到点的操作。在树形网络中,节点典型地连接为ニ叉树每个节点具有父节点和两个子节点(尽管某些节点可只有零个子节点或一个子节点,这取决于硬件配置)。尽管树形网络典型地在点对点通信中是低效的,但对于某些共同操作,计算节点同时參与例如allgather操作的消息传递操作,树形网络确实提供了高带宽和低延迟。在使用环形和树形网络的计算机中,这两种网络典型地互相独立地实现,具有単独的路由电路、単独的物理链路和単独的消息缓冲区
技术实现思路
为层次化分布式处理系统编译软件的方法、装置和产品,包括向ー个或多个编译节点提供要被编译的软件,其中,要被编译的软件的至少一部分将被ー个或多个其它节点执行;由编译节点编译该软件;由编译节点维护将在该编译节点上执行的任何已编译软件;基于任何已编译软件是否是用于选中的节点或选中节点的后代,由编译节点来选择分布式处理系统的层次结构的下一层中的一个或多个节点;向选中的节点仅发送由该选中的节点或选中节点的后代执行的已编译软件;由该选中的节点来接收已编译软件;确定该已编译软件是否是用于该选中的节点或其后代之一;如果该已编译软件是用于选中的节点,由该选中节点来维护软件以用于执行;并且如果该已编译软件是用于后代之一,基于后代为已编译软件选择层次化分布式处理系统的下一层中的另ー节点,并将已编译软件发送到该选中的另ー节点。根据如附图所示的本专利技术的示例性实施例的下列更具体的描述,本专利技术的上述和其它目标、特征和优势将变得明显,在附图中相同的标号通常表示本专利技术的示例性实施例的相同部分。附图说明图I示出了根据本专利技术实施例的用于为层次化分布式处理系统编译软件的示例性分布式计算机系统。图2给出了根据本专利技术实施例可在能够为层次化分布式处理系统编译软件的并行计算机中使用的示例性计算节点的框图。图3A示出了可在根据本专利技术实施例的能够为层次化分布式处理系统编译软件的系统中使用的示例性点对点适配器。图3B示出了可在根据本专利技术实施例的能够为层次化分布式处理系统编译软件的系统中使用的示例性全球组合网络(global combiningnetwork)适配器。图4给出了示出示例性数据通信网络的线条图,该数据通信网络针对可在根据本专利技术实施例的能够为层次化分布式处理系统编译软件的系统中使用的点对点操作进行了优化。图5给出了示出示例性数据通信网络的线条图,该数据通信网络针对可在根据本专利技术实施例的能够为层次化分布式处理系统编译软件的系统中使用的共同操作进行了优化。图6给出了根据本专利技术实施例的为层次化分布式处理系统编译软件的另一示例性分布式计算系统,其中,该分布式计算系统被实现为混合计算环境。图7给出了根据本专利技术实施例的为层次化分布式处理系统编译软件的示例性方法。 图8给出了示出根据本专利技术实施例的为层次化分布式处理系统编译软件的另一示例性方法的流程图。图9给出了根据本专利技术实施例的为层次化分布式处理系统编译软件的系统的示例性用例(use case)的框图。具体实施例方式参考从图I开始的附图来描述根据本专利技术的实施例的为层次化分布式处理系统编译软件的示例性方法、装置和产品。图I示出了根据本专利技术的实施例的为层次化分布式处理系统编译软件的示例性分布式计算系统。图I的系统包括并行计算机(100)、用于计算机的数据存储设备形式的非易失性存储器(118)、用于计算机的打印机形式的输出设备(120)、以及用于计算机的计算机终端形式的输入/输出设备(122)。图I的例子中的并行计算机(100)包括多个计算节点(102)。计算节点(102)通过若干个独立数据通信网络耦合以进行数据通信,所述数据通信网络包括联合测试行动小组(“JTAG”)网络(104)、针对共同操作进行了优化的全球组合网络(106)、以及针对点对点操作进行了优化的环形网络(108)。全球组合网络(106)是包含连接到计算节点从而将计算节点组织为树的通信本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:J·拉特尔曼C·J·阿切尔B·E·史密斯M·A·布洛克萨默
申请(专利权)人:国际商业机器公司
类型:
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1