A user application can choose one of five methods to manage receive-buffer completion space, as listed in
Table: Managing Receive Completion Space Methods
. For convenience, this discussion refers to these methods as LIMIT_FC, PACKET_FC, RCB_FC, and DATA_FC. Each method has advantages and disadvantages that you need to consider when developing the user application.
Table C-4:
Managing Receive Completion Space Methods
Method
|
Description
|
Advantage
|
Disadvantage
|
LIMIT_FC
|
Limit the total number of outstanding NP Requests
|
Simplest method to implement in user logic
|
Much Completion capacity goes unused
|
PACKET_FC
|
Track the number of outstanding CplH and CplD credits; allocate and deallocate on a per-packet basis
|
Relatively simple user logic; finer allocation granularity means less wasted capacity than LIMIT_FC
|
As with LIMIT_FC, credits for an NP are still tied up until the request is completely satisfied
|
RCB_FC
|
Track the number of outstanding CplH and CplD credits; allocate and deallocate on a per-RCB basis
|
Ties up credits for less time than PACKET_FC
|
More complex user logic than LIMIT_FC or PACKET_FC
|
DATA_FC
|
Track the number of outstanding CplH and CplD credits; allocate and deallocate on a per-RCB basis
|
Lowest amount of wasted capacity
|
More complex user logic than LIMIT_FC, PACKET_FC, and RCB_FC
|