Intel® MPI Benchmarks User Guide and Methodology Description

# 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/time`

## Sendrecv Pattern