×

Endpoint-based parallel data processing with non-blocking collective instructions in a parallel active messaging interface of a parallel computer

  • US 8,892,850 B2
  • Filed: 01/17/2011
  • Issued: 11/18/2014
  • Est. Priority Date: 01/17/2011
  • Status: Expired due to Fees
First Claim
Patent Images

1. A parallel computer that implements endpoint-based parallel data processing with non-blocking collective instructions in a parallel active messaging interface (‘

  • PAMI’

    ) of the parallel computer, the parallel computer comprising a plurality of compute nodes that execute a parallel application, the PAMI comprising data communications endpoints, each endpoint comprising a specification of data communications parameters for a thread of execution on a compute node, the endpoints coupled for data communications through the PAMI, the compute nodes comprising computer processors operatively coupled to computer memory having disposed within it computer program instructions that, when executed by the computer processors, cause the parallel computer to function by;

    establishing by the parallel application a data communications geometry, by;

    calling, by an application-level entity, a PAMI initialization function configured to establish the geometry by reading the geometry from a PAMI configuration, the geometry specifying, for tasks representing processes of execution of the parallel application, a set of endpoints that are used in collective operations of the PAMI, and specifications of a task, client, and context for each endpoint, andassociating with the geometry a list of collective algorithms for collective operations valid for use with the endpoints of the geometry read from the PAMI configuration,wherein the list of collective algorithms is dependent upon a nature of underlying data communications resources available to carry out any particular collective operation;

    registering, by the parallel application in each endpoint in the geometry, a dispatch callback function for each of the collective operations; and

    executing, by the parallel application without blocking, through a single one of the endpoints in the geometry, an instruction for one of the collective operations, the instruction specifying communications of transfer data among the endpoints of the geometry, an identifier of the dispatch callback function associated with the collective operation, and the collective algorithm.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×