gtpm3m0k | Multi-Processor Interconnect Facility Reference |
Additional user logic is required where MPIF pacing is desired but the number of SENDs by each side is not expected to be the same. SEND allows one side to provide the other side with credit for multiple sends. The default provides the other side with credit for a single send. Figure 5 shows the SEND logic exploited by MPIF.
Figure 6 shows the RECEIVE logic exploited by MPIF.
Figure 6. RECEIVE LOGIC - PACING
RECEIVE LOGIC - CREDIT OF 1 1. INCREMENT CREDIT. 2. PASS RECEIVED BUFFER TO USER. |
It is possible to create a deadlock situation using pacing where neither side can send because both have reached their pacing send count. This deadlock can also be avoided by appropriate design.
It might be desirable to segregate pacing for data types or sizes. This could be accomplished by establishing two connections between the two users - each connection would be used for different data types or sizes. Two connections would allow independent control of pacing.
The MPIF pacing facilities can be ignored by not selecting the option via the CONNECT or ACCEPT parameter lists.
The MPIF pacing facilities provide the ability to do what is generally referred to as windowing. In most cases, this can be accomplished by piggybacking credit on data or acknowledgement SENDs, thus avoiding extra communications.