[ofiwg] send/recv "credits"

Sur, Sayantan sayantan.sur at intel.com
Thu Sep 25 08:14:44 PDT 2014

> > Jumping in late on this thread. Not all apps need to undo work if send
> > credits are not available. i.e.
> >
> > Prep = Do_prep_work();
> > If (post_send() != OK) {
> > 	Queue_for_later(prep);
> > }
> Agreed - EAGAIN  is perfect for some apps, just not all of them, or even all
> the important ones.
> > MPI for example can follow this model
> Can, yes, but the efficiency depends on the particular MPI implementation.

Efficiency always depends on the particular MPI implementation :)

I'm asking for a method that allows an app to follow the EAGAIN model where the app can avoid paying the cost of a branch on every send.

Ultimately, though the discussion around send_credits leads us down to flow control. Maybe one of the flow control schemes exposed can be a credit-based one.

I'm not sure where we landed on flow control, but if there some kind of global switch that specifies flow control mode, the app can choose the work flow.

There may even be multiple types of flow control - E2E or local flow control to the adapter. (is that your use case?)

More information about the ofiwg mailing list