IMPI logo

National Institute of Standards and Technology

Interoperable MPI Test Scripts

The following test scripts are currently available in the IMPI Test Tool. In general, the order the tests are listed here indicates the order in which they should be run. Earlier tests should pass before trying later tests since later tests may rely on the correct functioning of the routines tested earlier.

Suggestions (submissions) for additional tests are welcome (contact

Interpreter Tests

Interpreter 1
Interpreter 2
Interpreter 3
Interpreter 4

Blocking Send Recv Tests

Send Recv 1
Std Types
Std Types 2
Small Msg
Big Msg

Buffering / Throttling stress tests

Small Msgs
Big Msgs

Nonblocking Send Recv Tests

Simple Nonblocking
Nonblocking long A
Nonblocking long

Sendrecv Tests

Simple Sendrecv


Iprobe 1




Bcast 0
Bcast 1
Bcast all


Alltoall int long
Alltoall int short
Alltoall float short
Alltoall double short


Alltoallv int
Alltoallv float
Alltoallv double


Reduce int
Reduce long
Reduce float
Reduce double
Reduce int all
Reduce long all
Reduce float all
Reduce double all
Reduce non commutative


Scan int
Scan long
Scan float
Scan double
Scan int all
Scan long all
Scan float all
Scan double all


Gather int long
Gather float long
Gather double long
Gather int short a
Gather int short b
Gather int short c
Gather int short d
Gather int short all
Gather float short all
Gather double short all
Gather int xover


Gatherv int long
Gatherv float long
Gatherv double long
Gatherv int short a
Gatherv int short b
Gatherv int short c
Gatherv int short d
Gatherv int short all
Gatherv float short all
Gatherv double short all
Gatherv int xover
Gatherv long gaps 0
Gatherv long gaps 1
Gatherv short gaps 0
Gatherv short gaps 1
Gatherv long gaps
Gatherv short gaps


Scatter int short a
Scatter int short b
Scatter int short c
Scatter int short d
Scatter int short all
Scatter float short all
Scatter double short all


Scatterv int long
Scatterv int short a
Scatterv int short b
Scatterv int short c
Scatterv int short d
Scatterv int short all
Scatterv float short all
Scatterv double short all


Allgather int long
Allgather double long
Allgather float long
Allgather int short
Allgather double short
Allgather float short
Allgather int xover


Allgatherv int long
Allgatherv float long
Allgatherv double long
Allgatherv int short all
Allgatherv double short all
Allgatherv float short all
Allgatherv int xover
Allgatherv long gaps
Allgatherv short gaps

Reduce scatter

Reduce scatter int
Reduce scatter float
Reduce scatter double


Allreduce int
Allreduce float
Allreduce double


Comm create
Comm dup
Comm split a
Comm split b
Comm split c
Comm split d
Comm split e
Intercomm create a
Intercomm create b
Intercomm create c
Intercomm dup a
Intercomm dup b
Intercomm merge a
Intercomm merge b
Intercomm merge c
Intercomm merge d