发明名称 Fencing data transfers in a parallel active messaging interface of a parallel computer
摘要 Fencing data transfers in a parallel active messaging interface (‘PAMI’) of a parallel computer, the PAMI including data communications endpoints, each endpoint including a specification of data communications parameters for a thread of execution on a compute node, including specifications of a client, a context, and a task; the compute nodes coupled for data communications through the PAMI and through data communications resources including at least one segment of shared random access memory; including initiating execution through the PAMI of an ordered sequence of active SEND instructions for SEND data transfers between two endpoints, effecting deterministic SEND data transfers through a segment of shared memory; and executing through the PAMI, with no FENCE accounting for SEND data transfers, an active FENCE instruction, the FENCE instruction completing execution only after completion of all SEND instructions initiated prior to execution of the FENCE instruction for SEND data transfers between the two endpoints.
申请公布号 US9052974(B2) 申请公布日期 2015.06.09
申请号 US201012940259 申请日期 2010.11.05
申请人 International Business Machines Corporation 发明人 Blocksome Michael A.;Mamidala Amith R.
分类号 G06F15/16;G06F7/38;G06F9/54;H04L29/06;G06F15/173 主分类号 G06F15/16
代理机构 Kennedy Lenart Spraggins LLP 代理人 Kennedy Lenart Spraggins LLP
主权项 1. A parallel computer that fences data transfers in a parallel active messaging interface (‘PAMI’), comprising: receiving, at an origin endpoint in the PAMI, a plurality of non-blocking SEND instructions from an application, wherein each of the plurality of SEND instruction specifies a data transfer from the origin endpoint to a target endpoint in the PAMI; receiving, at an origin endpoint, a FENCE instruction corresponding to transfers 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,wherein the origin endpoint are on a same compute node, andwherein the transfers between the origin endpoint and the target endpoint occur across a segment of memory shared between the origin endpoint and the target endpoint; posting the plurality of SEND instruction in an ordered sequence in a work queue of the origin endpoint; posting the FENCE instruction in the work queue of the origin endpoint at a location in the ordered sequence such that the FENCE instruction is processed after each of the plurality of SEND instructions is processed; and executing, by the origin endpoint, an advance function comprising initiating execution through the PAMI of instructions in the work queue, such that the FENCE instruction executing only after completion of all SEND instructions initiated prior to the FENCE instruction in the work queue, wherein execution of the FENCE instruction, wherein execution of the FENCE instruction indicates to the application that execution of the SEND instructions is complete.
地址 Armonk NY US