×

Fencing network direct memory access data transfers in a parallel active messaging interface of a parallel computer

  • US 9,075,759 B2
  • Filed: 11/05/2010
  • Issued: 07/07/2015
  • Est. Priority Date: 11/05/2010
  • Status: Expired due to Fees
First Claim
Patent Images

1. A parallel computer that fences direct memory access (DMA) data transfers in a parallel active messaging interface (‘

  • PAMI’

    ), the parallel computer comprising a plurality of compute nodes that execute a parallel application, the compute node comprising;

    computer processors; and

    computer memory coupled to the computer processors having disposed within it computer program instructions that, when executed by the computer processors, cause the parallel computer to function by;

    receiving, at an origin endpoint in the PAMI, a DMA PUT instruction from an origin application, wherein the DMA PUT instruction specifies a data transfer between the origin endpoint and a target endpoint in the PAMI, wherein the DMA PUT instruction, upon execution, transmits data from the origin endpoint directly into a target random access memory (RAM) for the target endpoint, wherein each endpoint specifies a client, a context, and a task;

    receiving, at an origin endpoint, a FENCE instruction corresponding the data transfer between the origin endpoint and the target endpoint, wherein the FENCE instruction advises the application when the transfers between the origin endpoint and the target endpoint are complete, andwherein the transfers between the origin endpoint and the target endpoint occur across a deterministic network connecting the origin endpoint and the target endpoint;

    posting the DMA PUT instructions and the FENCE instruction to a work queue of the context for the origin endpoint, wherein the FENCE instruction is posted at a location in the ordered sequence such that the FENCE instruction is processed after the plurality of DMA PUT instructions is processed; and

    executing, through the PAMI, by the origin endpoint, an advance function that executes instructions in the work queue strictly in the ordered sequence, wherein execution of the FENCE instruction indicates to the origin application that the execution of the DMA PUT instruction is complete.

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