Sendrecv

The Sendrecv benchmark is based on MPI_Sendrecv. In this benchmark, the processes form a periodic communication chain. Each process sends a message to the right neighbor and receives a message from the left neighbor in the chain. The turnover count is two messages per sample (one in, one out) for each process.

In the case of two processes, Sendrecv is equivalent to the PingPing benchmark of IMB1.x. For two processes, it reports the bidirectional bandwidth of the system, as obtained by the optimized MPI_Sendrecv function. 

Sendrecv Definition

Property

Description

Measured pattern

As symbolized between in the figure below.

MPI routines

MPI_Sendrecv

MPI data type

MPI_BYTE

Reported timings

time=Δt (in μsec) as indicated in the figure below.

Reported throughput

2X/(1.048576*time)

Sendrecv Pattern