[ofiwg] completion flags as actually defined by OFI

Hefty, Sean sean.hefty at intel.com
Tue Apr 14 10:41:13 PDT 2015


*FI_COMPLETION*
: Indicates that a completion entry should be generated for data
  transfer operations.

*FI_INJECT_COMPLETE*
: Indicates that a completion should be generated when the
  source buffer(s) may be reused.  FI_INJECT_COMPLETE allows for the
  provider to complete an operation after all source data has been
  cached, and while the operation may still be in the process of
  being transmitted.

*FI_TRANSMIT_COMPLETE*
: Indicates that a completion should not be generated until an
  operation has been successfully transmitted and is no longer
  being tracked by the provider.  For reliable endpoints, this flag
  generally indicates that an operation will not complete until
  it has been accepted into the fabric and acknowledged by a remote service.
  For unreliable endpoints, this flag indicates that an operation will
  not complete until it has been successfully delivered
  into the fabric.  For example, the corresponding message has been
  placed on the wire.  FI_TRANSMIT_COMPLETE is the default completion
  model for all endpoints.
  
  Note that when set, if the target endpoint experiences an error receiving
  the transferred data, that error will often be reported back to the
  initiator of the request.  This includes errors which may not normally
  be reported to the initiator, such as remote buffer overruns.

*FI_COMMIT_COMPLETE*
: Indicates that a completion should not be generated until an operation
  has successfully been processed at the target, with the data placed
  into the specified destination buffer.



More information about the ofiwg mailing list