×

Establishing a group of endpoints in a parallel computer

  • US 9,250,948 B2
  • Filed: 09/13/2011
  • Issued: 02/02/2016
  • Est. Priority Date: 09/13/2011
  • Status: Active Grant
First Claim
Patent Images

1. An apparatus for 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 apparatus comprising a computer processor and a computer memory operatively coupled to the computer processor, the computer memory having disposed within computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

  • 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
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×