×

Establishing a group of endpoints to support collective operations without specifying unique identifiers for any endpoints

  • US 9,250,949 B2
  • Filed: 11/30/2012
  • Issued: 02/02/2016
  • Est. Priority Date: 09/13/2011
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method of establishing a group of endpoints configured to support collective operations in a parallel computer, the parallel computer comprising a plurality of compute nodes coupled for data communications in a point-to-point multi-dimensional data communications network, wherein each compute node executes one or more processes for execution of a parallel application, the method comprising:

  • receiving a user specification of a set of endpoints included in a global collection of endpoints,wherein each endpoint is a data communications process executing within the one or more processes that supports communications among other endpoints, each endpoint is a rank in the message passing interface (MPI), and the global collection of endpoints includes all available endpoints,the user specification defining the set of endpoints in accordance with a predefined virtual representation of the endpoints,wherein the predefined virtual representation of the endpoints comprises a data structure setting forth an organization of processes and endpoints included in the global collection of endpoints,wherein the data structure comprises a table of columns and rows, each column specifying a process, each field of the column specifying an endpoint for the process, and each row specifying an endpoint of all processes,wherein the user specification defines the set of endpoints in relation to the data structure of the predefined virtual representation and without specifying a unique identifier for any particular endpoint in the set of endpoints, andwherein the user specification comprises a specification of all endpoints included in a column stride, the column stride comprising endpoints of a process included in alternating columns;

    defining, as an operational group, a group of endpoints in dependence upon the predefined virtual representation of the endpoints and the user specification; and

    executing one or more collective operations using the operational group defined by the group of endpoints.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×