Establishing a group of endpoints in a parallel computer
    1.
    发明授权
    Establishing a group of endpoints in a parallel computer 有权
    在并行计算机中建立一组端点

    公开(公告)号:US09250948B2

    公开(公告)日:2016-02-02

    申请号:US13231326

    申请日:2011-09-13

    IPC分类号: G06F9/46 G06F9/54

    CPC分类号: G06F9/46 G06F9/546

    摘要: A parallel computer executes a number of tasks, each task includes a number of endpoints and the endpoints are configured to support collective operations. In such a parallel computer, establishing a group of endpoints receiving a user specification of a set of endpoints included in a global collection of endpoints, where the user specification defines the set in accordance with a predefined virtual representation of the endpoints, the predefined virtual representation is a data structure setting forth an organization of tasks and endpoints included in the global collection of endpoints and the user specification defines the set of endpoints without a user specification of a particular endpoint; and defining a group of endpoints in dependence upon the predefined virtual representation of the endpoints and the user specification.

    摘要翻译: 并行计算机执行多个任务,每个任务包括多个端点,并且端点被配置为支持集合操作。 在这样的并行计算机中,建立一组端点,其接收包括在端点的全局集合中的一组端点的用户指定,其中用户规范根据端点的预定义虚拟表示来定义集合,预定义的虚拟表示 是阐述包括在全局端点集合中的任务和端点的组织的数据结构,并且用户规范定义了一组端点,而没有特定端点的用户指定; 并且根据端点的预定义虚拟表示和用户规范来定义一组端点。

    Establishing A Group Of Endpoints In A Parallel Computer
    2.
    发明申请
    Establishing A Group Of Endpoints In A Parallel Computer 有权
    在并行计算机中建立一组终端

    公开(公告)号:US20130067479A1

    公开(公告)日:2013-03-14

    申请号:US13231326

    申请日:2011-09-13

    IPC分类号: G06F9/46

    CPC分类号: G06F9/46 G06F9/546

    摘要: A parallel computer executes a number of tasks, each task includes a number of endpoints and the endpoints are configured to support collective operations. In such a parallel computer, establishing a group of endpoints receiving a user specification of a set of endpoints included in a global collection of endpoints, where the user specification defines the set in accordance with a predefined virtual representation of the endpoints, the predefined virtual representation is a data structure setting forth an organization of tasks and endpoints included in the global collection of endpoints and the user specification defines the set of endpoints without a user specification of a particular endpoint; and defining a group of endpoints in dependence upon the predefined virtual representation of the endpoints and the user specification.

    摘要翻译: 并行计算机执行多个任务,每个任务包括多个端点,并且端点被配置为支持集合操作。 在这样的并行计算机中,建立一组端点,其接收包括在端点的全局集合中的一组端点的用户指定,其中用户规范根据端点的预定义虚拟表示来定义集合,预定义的虚拟表示 是阐述包括在全局端点集合中的任务和端点的组织的数据结构,并且用户规范定义了一组端点,而没有特定端点的用户规范; 并且根据端点的预定义虚拟表示和用户规范来定义一组端点。

    Managing internode data communications for an uninitialized process in a parallel computer
    4.
    发明授权
    Managing internode data communications for an uninitialized process in a parallel computer 有权
    管理并行计算机中未初始化进程的节点间数据通信

    公开(公告)号:US08732725B2

    公开(公告)日:2014-05-20

    申请号:US13292293

    申请日:2011-11-09

    摘要: A parallel computer includes nodes, each having main memory and a messaging unit (MU). Each MU includes computer memory, which in turn includes, MU message buffers. Each MU message buffer is associated with an uninitialized process on the compute node. In the parallel computer, managing internode data communications for an uninitialized process includes: receiving, by an MU of a compute node, one or more data communications messages in an MU message buffer associated with an uninitialized process on the compute node; determining, by an application agent, that the MU message buffer associated with the uninitialized process is full prior to initialization of the uninitialized process; establishing, by the application agent, a temporary message buffer for the uninitialized process in main computer memory; and moving, by the application agent, data communications messages from the MU message buffer associated with the uninitialized process to the temporary message buffer in main computer memory.

    摘要翻译: 并行计算机包括各自具有主存储器和消息传送单元(MU)的节点。 每个MU包括计算机存储器,其又包括MU消息缓冲器。 每个MU消息缓冲区与计算节点上的未初始化进程相关联。 在并行计算机中,管理未初始化过程的节点间数据通信包括:由计算节点的MU接收与计算节点上的未初始化过程相关联的MU消息缓冲器中的一个或多个数据通信消息; 由应用代理确定与未初始化过程相关联的MU消息缓冲器在未初始化过程的初始化之前已满; 由应用代理建立用于主计算机存储器中未初始化过程的临时消息缓冲器; 并且由应用代理将与未初始化过程相关联的MU消息缓冲器的数据通信消息移动到主计算机存储器中的临时消息缓冲器。

    Compiling software for a hierarchical distributed processing system
    5.
    发明授权
    Compiling software for a hierarchical distributed processing system 失效
    为分层分布式处理系统编写软件

    公开(公告)号:US08621446B2

    公开(公告)日:2013-12-31

    申请号:US12770353

    申请日:2010-04-29

    IPC分类号: G06F9/45

    CPC分类号: G06F8/45

    摘要: Compiling software for a hierarchical distributed processing system including providing to one or more compiling nodes software to be compiled, wherein at least a portion of the software to be compiled is to be executed by one or more other nodes; compiling, by the compiling node, the software; maintaining, by the compiling node, any compiled software to be executed on the compiling node; selecting, by the compiling node, one or more nodes in a next tier of the hierarchy of the distributed processing system in dependence upon whether any compiled software is for the selected node or the selected node's descendants; sending to the selected node only the compiled software to be executed by the selected node or selected node's descendant.

    摘要翻译: 编译用于分级分布式处理系统的软件,包括向一个或多个编译节点提供待编译的软件,其中待编译的软件的至少一部分将被一个或多个其他节点执行; 由编译节点编译软件; 由编译节点维护要在编译节点上执行的任何编译软件; 根据编辑的软件是否针对所选择的节点或所选择的节点的后代,由编译节点选择分布式处理系统的层级的下一层中的一个或多个节点; 将所选择的节点或所选节点的后代发送到所选择的节点仅由编译的软件执行。

    Generating an executable version of an application using a distributed compiler operating on a plurality of compute nodes
    6.
    发明授权
    Generating an executable version of an application using a distributed compiler operating on a plurality of compute nodes 有权
    使用在多个计算节点上运行的分布式编译器生成应用程序的可执行版本

    公开(公告)号:US08495603B2

    公开(公告)日:2013-07-23

    申请号:US12189336

    申请日:2008-08-11

    IPC分类号: G06F9/44

    CPC分类号: G06F9/54 G06F8/443

    摘要: Methods, apparatus, and products are disclosed for generating an executable version of an application using a distributed compiler operating on a plurality of compute nodes that include: receiving, by each compute node, a portion of source code for an application; compiling, in parallel by each compute node, the portion of the source code received by that compute node into a portion of object code for the application; performing, in parallel by each compute node, inter-procedural analysis on the portion of the object code of the application for that compute node, including sharing results of the inter-procedural analysis among the compute nodes; optimizing, in parallel by each compute node, the portion of the object code of the application for that compute node using the shared results of the inter-procedural analysis; and generating the executable version of the application in dependence upon the optimized portions of the object code of the application.

    摘要翻译: 公开了用于使用在多个计算节点上操作的分布式编译器来生成应用程序的可执行版本的方法,装置和产品,其包括:由每个计算节点接收应用程序的一部分源代码; 由每个计算节点并行地将由该计算节点接收的源代码的部分编译成应用的目标代码的一部分; 由每个计算节点并行执行对该计算节点的应用的目标代码的部分的程序间分析,包括在计算节点之间共享过程间分析的结果; 使用所述程序间分析的共同结果,利用所述计算节点并行地优化所述计算节点的所述应用的所述目标代码的部分; 以及根据应用程序的目标代码的优化部分生成应用程序的可执行版本。

    Internode Data Communications In A Parallel Computer
    7.
    发明申请
    Internode Data Communications In A Parallel Computer 失效
    并行计算机中的国际数据通信

    公开(公告)号:US20130117764A1

    公开(公告)日:2013-05-09

    申请号:US13290642

    申请日:2011-11-07

    IPC分类号: G06F9/46

    CPC分类号: G06F9/544

    摘要: Internode data communications in a parallel computer that includes compute nodes that each include main memory and a messaging unit, the messaging unit including computer memory and coupling compute nodes for data communications, in which, for each compute node at compute node boot time: a messaging unit allocates, in the messaging unit's computer memory, a predefined number of message buffers, each message buffer associated with a process to be initialized on the compute node; receives, prior to initialization of a particular process on the compute node, a data communications message intended for the particular process; and stores the data communications message in the message buffer associated with the particular process. Upon initialization of the particular process, the process establishes a messaging buffer in main memory of the compute node and copies the data communications message from the message buffer of the messaging unit into the message buffer of main memory.

    摘要翻译: 并行计算机中的国际数据通信包括计算节点,每个计算节点包括主存储器和消息传送单元,消息传送单元包括计算机存储器和耦合用于数据通信的计算节点,其中针对计算节点启动时的每个计算节点:消息 单元在消息接发单元的计算机存储器中分配预定数量的消息缓冲器,每个消息缓冲器与在计算节点上被初始化的进程相关联; 在计算节点上的特定进程的初始化之前接收用于该特定进程的数据通信消息; 并将数据通信消息存储在与特定进程相关联的消息缓冲器中。 在特定进程的初始化时,该过程在计算节点的主存储器中建立消息缓存器,并将数据通信消息从消息传送单元的消息缓冲器复制到主存储器的消息缓冲器中。

    Performing A Local Barrier Operation
    8.
    发明申请
    Performing A Local Barrier Operation 失效
    执行局部屏障操作

    公开(公告)号:US20130042254A1

    公开(公告)日:2013-02-14

    申请号:US13206590

    申请日:2011-08-10

    IPC分类号: G06F9/52

    CPC分类号: G06F9/54 G06F9/522

    摘要: Performing a local barrier operation with parallel tasks executing on a compute node including, for each task: retrieving a present value of a counter; calculating, in dependence upon the present value of the counter and a total number of tasks performing the local barrier operation, a base value of the counter, the base value representing the counter's value prior to any task joining the local barrier; calculating, in dependence upon the base value and the total number of tasks performing the local barrier operation, a target value of the counter, the target value representing the counter's value when all tasks have joined the local barrier; joining the local barrier, including atomically incrementing the value of the counter; and repetitively, until the present value of the counter is no less than the target value of the counter: retrieving the present value of the counter and determining whether the present value equals the target value.

    摘要翻译: 对于每个任务,执行在计算节点上执行并行任务的局部屏障操作,包括:检索计数器的当前值; 根据计数器的当前值和执行局部屏障操作的任务的总数,计算计数器的基值,表示在任务加入局部屏障之前的计数器值的基值; 根据基本值和执行局部屏障操作的任务的总数,计算计数器的目标值,当所有任务已经加入局部屏障时计算表示计数器值的目标值; 加入当地的障碍,包括原子地增加柜台的价值; 并且重复地,直到计数器的当前值不小于计数器的目标值:检索计数器的当前值并确定当前值是否等于目标值。

    QUERY PERFORMANCE DATA ON PARALLEL COMPUTER SYSTEM HAVING COMPUTE NODES
    10.
    发明申请
    QUERY PERFORMANCE DATA ON PARALLEL COMPUTER SYSTEM HAVING COMPUTE NODES 有权
    具有计算机编码的并行计算机系统的查询性能数据

    公开(公告)号:US20120265835A1

    公开(公告)日:2012-10-18

    申请号:US13531882

    申请日:2012-06-25

    IPC分类号: G06F15/167

    摘要: Embodiments of the invention provide a method for querying performance counter data on a massively parallel computing system, while minimizing the costs associated with interrupting computer processors and limited memory resources. DMA descriptors may be inserted into an injection FIFO of a remote compute node in the massively parallel computing system. Upon executing the DMA operations described by the DMA descriptors, performance counter data may be transferred from the remote compute node to a destination node.

    摘要翻译: 本发明的实施例提供了一种在大规模并行计算系统上查询性能计数器数据的方法,同时最小化与中断计算机处理器和有限存储器资源相关联的成本。 可以将DMA描述符插入到大规模并行计算系统中的远程计算节点的注入FIFO中。 在执行由DMA描述符描述的DMA操作时,性能计数器数据可以从远程计算节点传送到目的地节点。